MachineShop Versions Save

MachineShop: R package of models and tools for machine learning

v3.7.0

8 months ago

Version Updates

3.7.0

  • Compatibility updates for parsnip.
  • Enable resampling by a grouping variable with BootControl, OOBControl, and SplitControl.
  • Enable resampling by a stratification variable with SplitControl.
  • Require R 4.1.0 or later.

v3.6.2

1 year ago

Version Updates

3.6.2

  • Add backward compatibility for older MLModel objects without a na.rm slot.
  • Fix CRAN check warning: S3 generic/method consistency.
  • Update role_binom(), role_case(), and role_surv() to remove the requirement that their variables be present in newdata supplied to predict().

v3.6.1

1 year ago

Version Updates

3.6.1

  • Compatibility updates for ggplot2, Matrix, and recipes package dependencies.

v3.6.0

1 year ago

Version Updates

3.6.0

  • Add argument na.rm to MLModel() for construction of a model that automatically removes all cases with missing values from model fitting and prediction, none, or only those whose missing values are in the response variable. Set the na.rm values in supplied MLModels to automatically remove cases with missing values if not supported by their model fitting and prediction functions.
  • Add argument prob.model to SVMModel().
  • Add argument verbose to fit() and predict().
  • Fix Error in as.data.frame(x) : object 'x' not found issue when fitting a BARTMachineModel that started occurring with bartMachine package version 1.2.7.
  • Remove expired deprecations of ModeledInput and rpp().
  • Internal changes
    • Add slot na.rm to MLModel.

v3.5.0

1 year ago

Version Updates

3.5.0

  • Add argument method to r2() for calculation of Pearson or Spearman correlation.
  • Add predict() S4 method for MLModelFit.
  • Export MLModelFunction().
  • Export as.MLInput() methods for MLModelFit and ModelSpecification.
  • Export as.MLModel() method for ModelSpecification.
  • Improve recursive feature elimination of SelectedInput terms.
  • Improve speed of StackedModel and SuperModel.
  • Internal changes
    • Add .MachineShop list attribute to MLModelFit.
    • Move field mlmodel in MLModelFit to model in .MachineShop.
    • Move slot input in MLModel to .MachineShop.
    • Pass .MachineShop to the predict and varimp slot functions of MLModel.

v3.4.3

2 years ago

Version Updates

3.4.3

  • Fix TypeError in dependence() with numeric dummy variables from recipes.
  • Prep ModelRecipe with retain = TRUE for recipe steps that are skipped, for example, when test datasets are created.
  • Add generalized area under performance curves to auc(), pr_auc(), and roc_auc() for multiclass factor responses.

v3.4.2

2 years ago

Version Updates

3.4.2

  • Add argument select to rfe().
  • Fix object perf_stats not found in optim().

v3.4.1

2 years ago

Version Updates

3.4.1

  • Add argument conf to set_optim_bayes().
  • Enable global grid expansion and tuning of StackedModel and SuperModel in ModelSpecification().

3.4.0

  • Fixes
    • Enable prediction with survival times of 0.
  • Implement class SelectedModelSpecification.
  • Internal changes
    • Deprecate classes ModeledInput, ModeledFrame, and ModeledRecipe.
    • Remove unused class TunedModeledRecipe.
  • Expire deprecations
    • Remove argument fixed from TunedModel().
    • Remove Grid().
  • Rename rpp() to ppr().
  • Replace ModeledInput() with ModelSpecification().
  • Require R >= 4.0.0.
  • Use Olden algorithm for NNetModel model-specific variable importance.

v3.3.0

2 years ago

Version Updates

3.3.0

  • Add argument .type with options "glance" and "tidy" to summary.MLModelFit().
  • Add case components data (stratification and grouping variables) to print.Resample().
  • Add class and methods for ModelSpecification.
  • Add training parameters set functions
    • set_monitor(): monitoring of resampling and optimization
    • set_optim_bayes(): Bayesian optimization with a Gaussian process model
    • set_optim_bfgs(): low-memory quasi-Newton BFGS optimization
    • set_optim_grid(): exhaustive and random grid searches
    • set_optim_method(): user-defined optimization functions
    • set_optim_pso(): particle swarm optimization
    • set_optim_sann(): simulated annealing
  • Add performance() method for MLModel to replicate the previous behavior of summary.MLModel().
  • Add performance(), plot(), and summary() methods for TrainingStep.
  • Add support for unordered plots of Resample performances.
  • Changes to argument type of predict().
    • Add option "default" for model-specific default predictions.
    • Add option "numeric" for numeric predictions.
    • Change option "prob" to be for probabilities between 0 and 1.
  • Change confusion() default behavior to convert factor probabilities to levels.
  • Rename argument control to object in set functions.
  • Rename argument f to fun in roc_index().
  • Return a ListOf training step summaries from summary.MLModel().
  • Return a TrainingStep object from rfe().
  • Support tibble-convertible objects as arguments to expand_params().
  • Internal changes
    • Add class EnsembleModel.
    • Add classes MLOptimization, GridSearch, NullOptimization, RandomGridSearch, and SequentialOptimization.
    • Add class NullControl.
    • Add slot control to PerformanceCurve.
    • Add slot method to TrainingStep.
    • Add slot optim to TrainingParams.
    • Add slot params to MLInput.
    • Inherit class SelectedModel from EnsembleModel.
    • Inherit class StackedModel from EnsembleModel.
    • Inherit class SuperModel from StackedModel.
    • Rename slot case_comps to vars in Resample.
    • Rename slot grid to log in TrainingStep.
  • Fixes
    • error predicting single factor response in GLMModel
    • 'size(x@performance, 3)' error in print.TrainingStep()
    • 'Unmatched tuning parameters' error in TunedModel()

3.2.1

  • Fix 'data' argument of wrong type error in terms.formula().
  • Require >= 3.1.0 version of cli package.

v3.2.0

2 years ago

Version Updates

3.2.0

  • Add argument distr and method to dependence().
  • Add function ParsnipModel() for model specifications (model_spec) from the parsnip package.
  • Add function rfe() for recursive feature elimination.
  • Add method as.MLModel() for model_spec and ModeledInput.
  • Add support for any model specification whose object has an as.MLModel() method.
  • Add support for cross-validation with case groups.
  • Add support for names in argument metric of auc().
  • Change argument method default from "model" to "permute" in varimp().
  • Change class ModelFrame to an S4 class; generally requires explicit conversion to a data frame with as.data.frame() in MLModel fit and predict functions.
  • Change progress bar display from elapsed to estimated completion time.
  • Changes to global settings
    • Rename stat.Trained to stat.TrainingParams.
    • Remove stats.VarImp.
  • Changes to internal classes
    • Add class ParsnipModel.
    • Add class SurvTimes.
    • Add class TrainingParams.
    • Add class union Grid.
    • Add class union Params.
    • Add column name, selected, and metrics to slot grid of TrainingStep class.
    • Add slot grid to TunedInput.
    • Add slot id to MLInput and MLModel classes.
    • Add slot id and name to TrainingStep class.
    • Add slot models to SelectedModel.
    • Remove slot name from MLControl classes.
    • Remove slot selected, values, and metric from TrainingStep class.
    • Remove slot shift from VariableImportance class.
    • Rename class Grid to TuningGrid.
    • Rename class Resamples to Resample.
    • Rename class TrainStep to TrainingStep.
    • Rename class VarImp to VariableImportance.
    • Rename classes of MLControl.
      • MLBootControlBootControl
      • MLBootOptimismControlBootOptimismControl
      • MLCVControlCVControl
      • MLCVOptimismControlCVOptimismControl
      • MLOOBControlOOBControl
      • MLSplitControlSplitControl
      • MLTrainControlTrainControl
    • Rename column Input and Model to params in slot grid of TrainingStep class.
    • Rename column Resample to Iteration in Resample class
    • Rename slot x to input in MLModel class.
  • Changes to XGBModel
    • Change argument default for nrounds from 1 to 100.
    • Rearrange constructor arguments.
    • Reduce number of tuning grid parameters
      • Include nrounds and max_depth in automated grids for XGBDARTModel and XGBTreeModel.
      • Include nrounds, lambda, and alpha in automated grid for XGBLinearModel.
    • Compute survival probabilities for survival:aft prediction.
    • Change default survival objective from survival:cox to survival:aft.
  • Format and condense printout of objects.
  • Include all computed performance metrics in TrainingStep objects and output.
  • Remove shift from variable importance scaling in varimp().
  • Rename and redefine dispatch (first) arguments in functions.
    • modelobject in TunedModel()
    • xobject in expand_model()
    • xformula/input/model in expand_modelgrid(), fit(), ModelFrame(), resample(), rfe() methods
    • xformula/object/model in ModeledInput() methods
    • xobject in ParameterGrid() methods
    • xcontrol in set_monitor(), set_predict(), set_strata()
    • xobject in TunedInput()
  • Rename function Grid() to TuningGrid().
  • Reorder optional arguments in ModelFrame().
  • Save model constructor arguments as the list elements in MLModel params slots.