Estimate ensemble prediction based on list of probs cubes
Estimate ensemble prediction based on list of probs cubes
Calculate an ensemble predictor based a list of probability cubes. The function combines the output of two or more classifier to derive a value which is based on weights assigned to each model. The supported types of ensemble predictors are 'average' and 'uncertainty'.
sits_combine_predictions(cubes, type ="average",...)## S3 method for class 'average'sits_combine_predictions( cubes, type ="average",..., weights =NULL, memsize =8L, multicores =2L, output_dir, version ="v1")## S3 method for class 'uncertainty'sits_combine_predictions( cubes, type ="uncertainty",..., uncert_cubes, memsize =8L, multicores =2L, output_dir, version ="v1")## Default S3 method:sits_combine_predictions(cubes, type,...)
Arguments
cubes: List of probability data cubes (class "probs_cube")
type: Method to measure uncertainty. One of "average" or "uncertainty"
...: Parameters for specific functions.
weights: Weights for averaging (numeric vector).
memsize: Memory available for classification in GB (integer, min = 1, max = 16384).
multicores: Number of cores to be used for classification (integer, min = 1, max = 2048).
output_dir: Valid directory for output file. (character vector of length 1).
version: Version of the output (character vector of length 1).
uncert_cubes: Uncertainty cubes to be used as local weights when type = "uncertainty" is selected (list of tibbles with class "uncertainty_cube")
Returns
A combined probability cube (tibble of class "probs_cube").
Examples
if(sits_run_examples()){# create a data cube from local files data_dir <- system.file("extdata/raster/mod13q1", package ="sits") cube <- sits_cube( source ="BDC", collection ="MOD13Q1-6.1", data_dir = data_dir
)# create a random forest model rfor_model <- sits_train(samples_modis_ndvi, sits_rfor())# classify a data cube using rfor model probs_rfor_cube <- sits_classify( data = cube, ml_model = rfor_model, output_dir = tempdir(), version ="rfor")# create an SVM model svm_model <- sits_train(samples_modis_ndvi, sits_svm())# classify a data cube using SVM model probs_svm_cube <- sits_classify( data = cube, ml_model = svm_model, output_dir = tempdir(), version ="svm")# create a list of predictions to be combined pred_cubes <- list(probs_rfor_cube, probs_svm_cube)# combine predictions comb_probs_cube <- sits_combine_predictions( pred_cubes, output_dir = tempdir())# plot the resulting combined prediction cube plot(comb_probs_cube)}