← Back to all sparks
P

parsnip

AI-ASSISTANTS
Velocity0.0

Unified interface to machine learning models in R

parsnip added a whole new regression type, then wired R models to JAX and PyTorch

rtidymodelsordinal-regressionmodel-engineskeras
Current state
The package is expanding what tidymodels can express. Version 1.5.0 introduced ordinal_reg() as a new model type with three engines and its own link parameters, and added xgboost and qrnn engines for quantile regression. Version 1.6.0 followed with a keras3 engine for four model types, reaching Keras v3's TensorFlow, JAX and PyTorch backends. Around those, releases have been tuning-parameter range adjustments and engine-specific fixes.
Where it's heading
Growth is happening on two axes: new modelling tasks that previously had no unified interface, and new engines behind tasks that already did. Both push in the same direction - a modeller specifies the model once and swaps the computational backend underneath, which is the whole premise parsnip is built on. The defunct surv_reg() shows old spellings being retired as that surface settles.
Prediction
Expect further engines behind ordinal_reg() and quantile regression now that both have a home, and continued retirement of deprecated function names. The keras3 engine's multi-backend design is the obvious candidate to spread to more model types.

Recent moves

  1. 3mo ago

    keras3 engine brings JAX and PyTorch backends to four models

    Adds a keras3 engine to linear_reg(), logistic_reg(), mlp() and multinom_reg(), bringing Keras v3's multi-backend design - TensorFlow, JAX and PyTorch - within reach of a standard tidymodels specification.

    View source ↗
  2. 4mo ago

    parsnip adds ordinal_reg() as a first-class model type

    ⚡ SPARK

    Introduces ordinal_reg() as a new model type with polr, ordinalNet and vglm engines and two new link parameters, and fills out quantile regression with xgboost and qrnn engines. This adds a modelling task to parsnip rather than another engine behind an existing one.

    View source ↗
  3. 7mo ago

    xgboost prediction fix when trees matches model size

    A single fix for xgboost models failing to predict when the requested tree count matched the number of trees in the model. A narrow off-by-one style edge case.

    View source ↗
  4. 8mo ago

    Generalized random forests enabled; surv_reg() made defunct

    Enables generalized random forest models across classification, regression and quantile regression, narrows default tuning ranges for the boosting engines, and makes surv_reg() defunct in favour of survival_reg().

    View source ↗
  5. 11mo ago

    brulee tuning parameter configuration fixes

    Corrects how tunable parameters were configured for brulee neural networks, adjusts some of their default ranges, and quietens linear SVM output. Engine-specific tuning polish.

    View source ↗
  6. 1y ago

    Switch to base R pipe for CRAN compliance

    Switches to the base R pipe to satisfy CRAN's No Suggests check and avoids issues reading from package files. Packaging compliance with no modelling impact.

    View source ↗