|
1 | 1 | # parsnip (development version)
|
2 | 2 |
|
3 |
| -* glmnet models fitted with base-R family objects are now supported for `linear_reg()`, `logistic_reg()`, and `multinomial_reg()` (#890). |
| 3 | +This release of parsnip contains a number of new features and bug fixes, accompanied by several optimizations that substantially decrease the time to `fit()` and `predict()` with the package. |
4 | 4 |
|
5 |
| -* Moved forward with the deprecation of `req_pkgs()` in favor of `required_pkgs()`. The function will now error (#871). |
| 5 | +## Improvements to `"glmnet"` engine interfaces |
6 | 6 |
|
7 |
| -* Made `fit()` behave consistently with respect to missingness in the classification setting. Previously, `fit()` erroneously raised an error about the class of the outcome when there were no complete cases, and now always passes along complete cases to be handled by the modeling function (#888). |
| 7 | +* glmnet models fitted with base-R family objects are now supported for `linear_reg()`, `logistic_reg()`, and `multinomial_reg()` (#890). |
8 | 8 |
|
9 |
| -* Fixed bug where model fits with factor predictors and `engine = "kknn"` would fail when the package's namespace hadn't been attached (#264). |
| 9 | +* `multi_predict()` methods for `linear_reg()`, `logistic_reg()`, and `multinom_reg()` models fitted with the `"glmnet"` engine now check the `type` better and error accordingly (#900). |
10 | 10 |
|
11 | 11 | * `.organize_glmnet_pred()` now expects predictions for a single penalty value (#876).
|
12 | 12 |
|
| 13 | +## Survival analysis |
| 14 | + |
| 15 | +* The `time` argument to `predict_survival()` and `predict_hazard()` is deprecated in favor of the new `eval_time` argument (#936). |
| 16 | + |
| 17 | +* Added several internal functions (to help work with `Surv` objects) as a standalone file that can be used in other packages via `usethis::use_standalone("tidymodels/parsnip")`. These changes provide tooling for downstream packages to handle inverse probability censoring weights (#893, #897, #937). |
| 18 | + |
| 19 | +## Bug fixes |
| 20 | + |
| 21 | +* Made `fit()` behave consistently with respect to missingness in the classification setting. Previously, `fit()` erroneously raised an error about the class of the outcome when there were no complete cases, and now always passes along complete cases to be handled by the modeling function (#888). |
| 22 | + |
13 | 23 | * Fixed bug where model fits with `engine = "earth"` would fail when the package's namespace hadn't been attached (#251).
|
14 | 24 |
|
15 |
| -* Fixed bug with prediction from a boosted tree model fitted with `"xgboost"` using a custom objective function (#875). |
| 25 | +* Fixed bug where model fits with factor predictors and `engine = "kknn"` would fail when the package's namespace hadn't been attached (#264). |
16 | 26 |
|
17 |
| -* Several internal functions (to help work with `Surv` objects) were added as a standalone file that can be used in other packages via `usethis::use_standalone("tidymodels/parsnip")`. |
| 27 | +* Fixed bug with prediction from a boosted tree model fitted with `"xgboost"` using a custom objective function (#875). |
18 | 28 |
|
19 |
| -* `multi_predict()` methods for `linear_reg()`, `logistic_reg()`, and `multinomial_reg()` models fitted with the `"glmnet"` engine now check the `type` better and error accordingly (#900). |
| 29 | +## Other changes |
20 | 30 |
|
21 |
| -* Rather than being implemented in each method, the check for the `new_data` argument being mistakenly passed as `newdata` to `multi_predict()` now happens in the generic. Packages re-exporting the `multi_predict()` generic and implementing now-duplicate checks may see new failures and can remove their own analogous checks. This check already existed in all `predict()` methods (via `predict.model_fit()`) and all parsnip `multi_predict()` methods (#525). |
| 31 | +* Implemented a number of optimizations in parsnip's backend that [substantially decrease evaluation time](https://www.simonpcouch.com/blog/speedups-2023/#parsnip) to `fit()` and `predict()` (#901, #902, #910, #921, #929, #923, #931, #932, #933). |
22 | 32 |
|
23 | 33 | * `logistic_reg()` will now warn at `fit()` when the outcome has more than two levels (#545).
|
24 | 34 |
|
| 35 | +* Rather than being implemented in each method, the check for the `new_data` argument being mistakenly passed as `newdata` to `multi_predict()` now happens in the generic. Packages re-exporting the `multi_predict()` generic and implementing now-duplicate checks may see new failures and can remove their own analogous checks. This check already existed in all `predict()` methods (via `predict.model_fit()`) and all parsnip `multi_predict()` methods (#525). |
| 36 | + |
25 | 37 | * Functions now indicate what class the outcome was if the outcome is the wrong class (#887).
|
26 | 38 |
|
27 | 39 | * The minimum version for R is now 3.5 (#926).
|
28 | 40 |
|
29 |
| -* Transitioned all soft-deprecations that were at least a year old to warn-deprecations. These changes apply to `fit_control()`, `surv_reg()`, `varying()`, `varying_args()`, and the `"liquidSVM"` engine. |
| 41 | +* Moved forward with the deprecation of `req_pkgs()` in favor of `required_pkgs()`. The function will now error (#871). |
30 | 42 |
|
31 |
| -* The `time` argument to `predict_survival()` and `predict_hazard()` is deprecated in favor of the new `eval_time` argument (#936). |
| 43 | +* Transitioned all soft-deprecations that were at least a year old to warn-deprecations. These changes apply to `fit_control()`, `surv_reg()`, `varying()`, `varying_args()`, and the `"liquidSVM"` engine. |
32 | 44 |
|
| 45 | +* Various bug fixes and improvements to documentation. |
33 | 46 |
|
34 | 47 | # parsnip 1.0.4
|
35 | 48 |
|
|
0 commit comments