Skip to content

parsnip 1.5.0

Choose a tag to compare

@topepo topepo released this 10 Apr 18:32
0d36294

Quantile Regression

  • Quantile levels are not dropped when a model specification is modified (#1304)

  • xgboost and qrnn engines were added for quantile regression to boost_tree() and mlp(), respectively. (#1321)

Ordinal Regression

The changes in this section are discussed in #1298.

  • A new model ordinal_reg() is introduced for ordinal regression (#953):

    • Its sole mode is "classification" and its default engine is "polr" for MASS::polr().
    • Additional engines "ordinalNet" for ordinalNet::ordinalNet() and "vglm" for VGAM::vglm() are documented.
    • In addition to penalty and mixture common to GLM models, two new model parameters are introduced: ordinal_link and odds_link.
    • Methods are written for translate(), update(), check_args(), and tunable().
    • Existing pan-model tests are extended and new model-specific tests are added.
  • New engines for ordinal prediction are documented:

    • "vgam" for VGAM::vgam() under gen_additive_mod()
    • "rpartScore" for rpartScore::rpartScore() under decision_tree()
    • "ordinalForest" for ordinalForest::ordfor() under rand_forest()
  • Engine arguments for the new ordinal prediction engines are documented.

  • Ordinal prediction tools are coordinated with new parameter tuners in dials and engines in ordered.

Bug Fixes

  • fit() with a formula now reliably drops rows with missing values during internal data conversion, regardless of the global options(na.action = ...) setting (#548).

  • Fixed a bug in random forest fits using the "aorsf" engine where the check for mtry could not be performed (#1276)

  • repair_call() now errors informatively when given an object that is not a fitted parsnip model (#598).

  • Fix bug in predicting class probabilities for multiclass earth models (#1334)

  • set_engine() now errors informatively when an invalid engine name is specified for models whose engines all come from extension packages (#1110).

  • Case weight usage was enabled for the "nnet" engines of mlp() and bag_mlp() as well as for the "dbarts" engine of bart().

Other Updates

  • For developers, format_predictions() is a new unified function for formatting prediction outputs, consolidating the logic from the individual format_*() functions (#927). The individual functions format_num(), format_class(), format_classprobs(), format_time(), format_survival(), format_linear_pred(), and format_hazard() are now deprecated.

  • The interface for declaring tunable parameters and any deviations for the standard parameter characteristics, has been simplified. These values can now be set inside of extension packages (#1349).

  • Documentation for the lightgbm engine now includes information about custom objective functions and automatic num_class handling (#1275).

  • The "Fitting and predicting with parsnip" article has moved to tidymodels.org (#1324).

  • All model details files note whether case weights can be used or not.

  • We now export the generics for predict_quantile(), predict_class(), predict_classprob(), and predict_hazard(). (#1257)