- adjust handling of class name in response to R check 'Note'
- adjust handling of class name in response to R check 'Note'
- implemented parallelization modes at fold and repetition levels
- more flexible permutation options (especially for LOO CV)
- handle formulas with 0 or 1 predictor(s), e.g. y~1
- updated vignette
- "fixed train_fun / test_fun issue
- more flexible parallelization of
add.distance
- added parallelization modes (arguments
mode_rep
andmode_fold
) - more flexible permutation (argument
imp_sample_from
) - updated vignette
partition_disc()
: set default value of argbuffer
to 0 instead of NULL, fixes #61
partition_disc()
: set default value of argbuffer
to 0 instead of NULL, fixes #61partition_loo()
: Sequence along observations instead of columns. Before, the train set was only composed ofncol
observation. (#60)
- Resolve minor NAMESPACE issues for {future} on CRAN
- All parallel modes got removed in favor of using parallelism via package {future}. This simplifies usage a lot and helps simplifying future maintenance. Also it gives users the freedom to choose the parallel backend on their own.
sperrorest()
run sequentially by default again rather than in parallel.
- Removed the following packages from Imports: {glue}, {purrr}, {doFuture}, {gdata}, {magrittr}, {parallel}, {pbapply}, {pbmcapply}, {foreach}
- Moved the following packages from Imports to Suggests: {rpart}
- Removed the following packages from Suggests: {pacman}, {ipred}, {RSAGA}
- The "spatial-use-case" vignette now runs and is not read-only anymore.
- Updated error message displayed to the user if
err_fun()
throws an error during performance calculation. An exemplary case would be a binary classification in which only one level of the response exists in the test data (due to spatial partitioning).
- import
future_lapply
fromfuture.apply
instead offuture
- update CITATION file
train_fun
andtest_fun
are now handled correctly and eventual sub-sampling is correctly reflected to the resulting 'resampling' object
- error handling during model fitting & performance evaluation: If a model does not converge for some folds or an error occurs during performance calculation, results of this fold are set to
NA
and a message is printed to the console.sperrorest()
will continue normally and uses the successful folds to calculate the repetition error. This helps to run CV with many repetitions using models which do not always converge likemaxnet()
,gamm()
orsvm()
.
- Size of example data set
ecuador
has been adjusted to avoid exact duplicates of partitions when usingpartition_kmeans()
.
- Fixes a bug which caused equal importance of all predictors when performing permutation-based variable importance assessment
- integration of
parsperrorest()
intosperrorest()
. - by default,
sperrorest()
now runs in parallel using all available cores. runfolds()
andrunreps()
are now doing the heavy lifting in the background. All modes are now running on the same code base. Before, all parallel modes were running on different code implementations.- function and argument name changes to 'snake_case'
- new (parallel) modes:
apply
: callspbmclapply()
on Unix andpbapply()
on Windows.future
: callsfuture_lapply()
with variousfuture
options (multiprocess
,multicore
, etc.).foreach
:foreach()
with variousfuture
options (multiprocess
,multicore
, etc.). Default option tocluster
. This is also the overall default mode forsperrorest()
.sequential
: sequential execution usingfuture
backend.
- RMSE instead of MSE as error measure
- You can now pass also single values to
repetition
argument ofsperrorest()
. Specifying a range likerepetition = 1:10
will also stay valid. - New vignette
sperrorest::parallel-modes
comparing the various parallel modes. - New vignette
sperrorest::custom-pred-and-model-functions
explaining why and how custom defined model and predict functions are needed for some model setups.
- Limit workers to number of repetitions if number of cores > number of repetitions. This ensures that no unnecessary workers are started and increases robustness of parallel execuction.
- documentation improvements.
do_try
argument has been removed.error.fold
,error.rep
anderr.train
arguments have been removed because they are all calculated by default now.
- partial matching of arguments
- account for factor levels only present in test data but missing in training data. Previously, {sperrorest} errored during the predict step when this occurred. Now, this is accounted for and an informative message is given.
-
add
parsperrorest()
: This function lets you executesperrorest()
in parallel. It includes two modes (par.mode = 1
andpar.mode = 2
) which use different parallelization approaches in the background. See?parsperrorest()
for more details. -
add
partition.factor.cv()
: This resampling method enables partitioning based on a given factor variable. This can be used, for example, to resample agricultural data, that is grouped by fields, at the agricultural field level in order to preserve spatial autocorrelation within fields. -
sperrorest()
andparsperrorest()
: Addbenchmark
item to returned object giving information about execution time, used cores and other system details.
Changes to functions:
-
{sperrorest}(): Change argument naming.
err.unpooled
is nowerror.fold
anderr.pooled
is nowerror.rep
-
sperrorest()
andparsperrorest()
: Change order and naming of returned object- class
sperrorestpoolederror
is nowsperrorestreperror
- returned {sperrorest} list is now ordered as follows:
- error.rep
- error.fold
- importance
- benchmarks
- package.version
- class
-
add package NEWS
-
add package vignette ->
vignette("sperrorest-vignette", package = "sperrorest")
-
package is now ByteCompiled
-
Github repo of {sperrorest} now at https://github.com/giscience-fsu/sperrorest/
- First release on CRAN
- last pre-release version
- replaced Stoyan's data set with Jannes Muenchow's data, adapted examples
- made training set estimation optional
- robustified code using try()
- internal release 0.1-2
- some bug fixes, e.g. in err.* functions
- improved support of pooled versus unpooled error estimation
- changed some argument names
- this version was used for Angie's analyses
- built internal release 0.1-1
- general code development (2009 - 2011)
- package project and documentation created (Oct-Dec 2011)