sits_kfold_validate {sits} | R Documentation |
Cross-validate time series samples
Description
Splits the set of time series into training and validation and perform k-fold cross-validation. Cross-validation is a technique for assessing how the results of a statistical analysis will generalize to an independent data set. It is mainly used in settings where the goal is prediction, and one wants to estimate how accurately a predictive model will perform. One round of cross-validation involves partitioning a sample of data into complementary subsets, performing the analysis on one subset (called the training set), and validating the analysis on the other subset (called the validation set or testing set).
The k-fold cross validation method involves splitting the dataset into k-subsets. For each subset is held out while the model is trained on all other subsets. This process is completed until accuracy is determine for each instance in the dataset, and an overall accuracy estimate is provided.
This function returns the confusion matrix, and Kappa values.
Usage
sits_kfold_validate(
samples,
folds = 5,
ml_method = sits_rfor(),
multicores = 2
)
Arguments
samples |
Time series. |
folds |
Number of partitions to create. |
ml_method |
Machine learning method. |
multicores |
Number of cores to process in parallel. |
Value
A caret::confusionMatrix
object to be used for
validation assessment.
Note
Please refer to the sits documentation available in <https://e-sensing.github.io/sitsbook/> for detailed examples.
Author(s)
Rolf Simoes, rolf.simoes@inpe.br
Gilberto Camara, gilberto.camara@inpe.br
Examples
if (sits_run_examples()) {
# A dataset containing a tibble with time series samples
# for the Mato Grosso state in Brasil
# create a list to store the results
results <- list()
# accuracy assessment lightTAE
acc_rfor <- sits_kfold_validate(
samples_modis_ndvi,
folds = 5,
ml_method = sits_rfor()
)
# use a name
acc_rfor$name <- "Rfor"
# put the result in a list
results[[length(results) + 1]] <- acc_rfor
# save to xlsx file
sits_to_xlsx(
results,
file = tempfile("accuracy_mato_grosso_dl_", fileext = ".xlsx")
)
}