Version 1.3.0

In Development

Legend for changelogs

  • Major Feature : something big that you couldn’t do before.

  • Feature : something that you couldn’t do before.

  • Efficiency : an existing feature now may not require as much computation or memory.

  • Enhancement : a miscellaneous minor improvement.

  • Fix : something that previously didn’t work as documentated – or according to reasonable expectations – should now work.

  • API Change : you will need to change your code to have the same effect in the future; or a feature will be removed in the future.

Changed models

The following estimators and functions, when fit with the same data and parameters, may produce different models from the previous version. This often occurs due to changes in the modelling logic (bug fixes or enhancements), or in random sampling procedures.

Changes impacting all modules

Experimental / Under Development

  • Major Feature Metadata routing’s related base methods are included in this release. This feature is only available via the enable_metadata_routing feature flag which can be enabled using sklearn.set_config and sklearn.config_context. For now this feature is mostly useful for third party developers to prepare their code base for metadata routing, and we strongly recommend that they also hide it behind the same feature flag, rather than having it enabled by default. #24027 by Adrin Jalali, Benjamin Bossan, and Omar Salman.

Changelog

sklearn

  • Feature Added a new option skip_parameter_validation, to the function sklearn.set_config and context manager sklearn.config_context, that allows to skip the validation of the parameters passed to the estimators and public functions. This can be useful to speed up the code but should be used with care because it can lead to unexpected behaviors or raise obscure error messages when setting invalid parameters. #25815 by Jérémie du Boisberranger.

sklearn.base

sklearn.calibration

sklearn.cluster

sklearn.compose

  • Fix compose.ColumnTransformer raises an informative error when the individual transformers of ColumnTransformer output pandas dataframes with indexes that are not consistent with each other and the output is configured to be pandas. #26286 by Thomas Fan.

  • Fix compose.ColumnTransformer correctly sets the output of the remainder when set_output is called. #26323 by Thomas Fan.

sklearn.covariance

sklearn.datasets

sklearn.decomposition

sklearn.discriminant_analysis

sklearn.ensemble

sklearn.exception

  • Feature Added exception.InconsistentVersionWarning which is raised when a scikit-learn estimator is unpickled with a scikit-learn version that is inconsistent with the sckit-learn version the estimator was pickled with. #25297 by Thomas Fan.

sklearn.feature_extraction

sklearn.feature_selection

sklearn.impute

sklearn.inspection

sklearn.linear_model

sklearn.metrics

sklearn.gaussian_process

sklearn.model_selection

sklearn.multioutput

sklearn.naive_bayes

sklearn.neighbors

sklearn.neural_network

sklearn.pipeline

sklearn.preprocessing

sklearn.svm

sklearn.tree

sklearn.utils

  • API Change estimator_checks.check_transformers_unfitted_stateless has been introduced to ensure stateless transformers don’t raise NotFittedError during transform with no prior call to fit or fit_transform. #25190 by Vincent Maladière.

  • Enhancement preprocessing.PolynomialFeatures now calculates the number of expanded terms a-priori when dealing with sparse csr matrices in order to optimize the choice of dtype for indices and indptr. It can now output csr matrices with np.int32 indices/indptr components when there are few enough elements, and will automatically use np.int64 for sufficiently large matrices. #20524 by niuk-a and #23731 by Meekail Zain

  • API Change A FutureWarning is now raised when instantiating a class which inherits from a deprecated base class (i.e. decorated by utils.deprecated) and which overrides the __init__ method. #25733 by Brigitta Sipőcz and Jérémie du Boisberranger.

  • Fix Fixes utils.validation.check_array to properly convert pandas extension arrays. #25813 and #26106 by Thomas Fan.

  • Fix utils.validation.check_array now supports pandas DataFrames with extension arrays and object dtypes by return an ndarray with object dtype. #25814 by Thomas Fan.

sklearn.semi_supervised

  • Enhancement LabelSpreading.fit and LabelPropagation.fit now accepts sparse metrics. #19664 by Kaushik Amar Das.

Miscellaneous

Code and Documentation Contributors

Thanks to everyone who has contributed to the maintenance and improvement of the project since version 1.2, including:

TODO: update at the time of the release.