Skip to content

Commit

Permalink
DOC fix the changelog and group entries together (scikit-learn#27421)
Browse files Browse the repository at this point in the history
Co-authored-by: Olivier Grisel <[email protected]>
  • Loading branch information
glemaitre and ogrisel authored Sep 20, 2023
1 parent f523d47 commit ba7d869
Showing 1 changed file with 85 additions and 111 deletions.
196 changes: 85 additions & 111 deletions doc/whats_new/v1.4.rst
Original file line number Diff line number Diff line change
Expand Up @@ -36,17 +36,6 @@ The following models now support metadata routing in one or more or their
methods. Refer to the :ref:`Metadata Routing User Guide <metadata_routing>` for
more details.

- |Enhancement| :class:`~compose.ColumnTransformer` now supports metadata routing
according to :ref:`metadata routing user guide <metadata_routing>`. :pr:`27005`
by `Adrin Jalali`_.

- |Enhancement| :class:`linear_model.LogisticRegressionCV` now supports
metadata routing. :meth:`linear_model.LogisticRegressionCV.fit` now
accepts ``**params`` which are passed to the underlying splitter and
scorer. :meth:`linear_model.LogisticRegressionCV.score` now accepts
``**score_params`` which are passed to the underlying scorer.
:pr:`26525` by :user:`Omar Salman <OmarManzoor>`.

- |Feature| :class:`pipeline.Pipeline` now supports metadata routing according
to :ref:`metadata routing user guide <metadata_routing>`. :pr:`26789` by
`Adrin Jalali`_.
Expand All @@ -69,6 +58,46 @@ more details.
estimator's ``fit``, the CV splitter, and the scorer. :pr:`27058` by `Adrin
Jalali`_.

- |Enhancement| :class:`~compose.ColumnTransformer` now supports metadata routing
according to :ref:`metadata routing user guide <metadata_routing>`. :pr:`27005`
by `Adrin Jalali`_.

- |Enhancement| :class:`linear_model.LogisticRegressionCV` now supports
metadata routing. :meth:`linear_model.LogisticRegressionCV.fit` now
accepts ``**params`` which are passed to the underlying splitter and
scorer. :meth:`linear_model.LogisticRegressionCV.score` now accepts
``**score_params`` which are passed to the underlying scorer.
:pr:`26525` by :user:`Omar Salman <OmarManzoor>`.

Support for SciPy sparse arrays
-------------------------------

Several estimators are now supporting SciPy sparse arrays. The following functions
and classes are impacted:

**Functions:**

- :func:`decomposition.non_negative_factorization` in :pr:`27100` by
:user:`Isaac Virshup <ivirshup>`;
- :func:`metrics.f_regression` in :pr:`27239` by :user:`Yaroslav Korobko <Tialo>`;
- :func:`metrics.r_regression` in :pr:`27239` by :user:`Yaroslav Korobko <Tialo>`;
- :func:`sklearn.utils.multiclass.type_of_target` in :pr:`27274` by
:user:`Yao Xiao <Charlie-XIAO>`.

**Classes:**

- :class:`decomposition.NMF` in :pr:`27100` by :user:`Isaac Virshup <ivirshup>`;
- :class:`decomposition.MiniBatchNMF` in :pr:`27100` by
:user:`Isaac Virshup <ivirshup>`;
- :class:`feature_extraction.text.TfidfTransformer` in :pr:`27219` by
:user:`Yao Xiao <Charlie-XIAO>`;
- :class:`impute.SimpleImputer` in :pr:`27277` by :user:`Yao Xiao <Charlie-XIAO>`;
- :class:`impute.IterativeImputer` in :pr:`27277` by :user:`Yao Xiao <Charlie-XIAO>`;
- :class:`impute.KNNImputer` in :pr:`27277` by :user:`Yao Xiao <Charlie-XIAO>`;
- :class:`kernel_approximation.PolynomialCountSketch` in :pr:`27301` by
:user:`Lohit SundaramahaLingam <lohitslohit>`;
- :class:`neural_network.BernoulliRBM` in :pr:`27252` by `Yao Xiao <Charlie-XIAO>`.

Changelog
---------

Expand Down Expand Up @@ -114,7 +143,7 @@ Changelog
private loss module. :pr:`27185` by :user:`Omar Salman <OmarManzoor>`.

:mod:`sklearn.cluster`
............................
......................

- |API| : `kdtree` and `balltree` values are now deprecated and are renamed as
`kd_tree` and `ball_tree` respectively for the `algorithm` parameter of
Expand All @@ -138,11 +167,6 @@ Changelog
:pr:`26315` and :pr:`27098` by :user:`Mateusz Sokół <mtsokol>`,
:user:`Olivier Grisel <ogrisel>` and :user:`Edoardo Abati <EdAbati>`.

- |Enhancement| :func:`decomposition.non_negative_factorization`, :class:`decomposition.NMF`,
and :class:`decomposition.MiniBatchNMF` now support :class:`scipy.sparse.sparray`
subclasses.
:pr:`27100` by :user:`Isaac Virshup <ivirshup>`.

:mod:`sklearn.ensemble`
.......................

Expand All @@ -160,10 +184,6 @@ Changelog
:pr:`13649` by :user:`Samuel Ronsin <samronsin>`,
initiated by :user:`Patrick O'Reilly <pat-oreilly>`.

- |API| In :class:`AdaBoostClassifier`, the `algorithm` argument `SAMME.R` was
deprecated and will be removed in 1.6. :pr:`26830` by :user:`Stefanie Senger
<StefanieSenger>`.

- |Efficiency| :class:`ensemble.GradientBoostingClassifier` is faster,
for binary and in particular for multiclass problems thanks to the private loss
function module.
Expand All @@ -174,27 +194,9 @@ Changelog
:class:`ensemble.GradientBoostingRegressor` when trained on sparse data.
:pr:`26957` by `Thomas Fan`_.

:mod:`sklearn.feature_extraction`
.................................

- |Enhancement| :class:`feature_extraction.text.TfidfTransformer` now supports
SciPy sparse arrays.
:pr:`27219` by :user:`Yao Xiao <Charlie-XIAO>`.

:mod:`sklearn.impute`
.....................

- |Enhancement| In :class:`impute.SimpleImputer`, :class:`impute.IterativeImputer`, and
:class:`impute.KNNImputer` with ``add_indicator=True``, using sparse arrays now
behaves in consistent with using sparse matrices in the `transform` and
`fit_transform` methods. :pr:`27277` by :user:`Yao Xiao <Charlie-XIAO>`.

:mod:`sklearn.kernel_approximation`
...................................

- |Enhancement| :func:`kernel_approximation.PolynomialCountSketch` now supports
:class:`scipy.sparse.sparray` subclasses.
:pr:`27301` by :user:`Lohit SundaramahaLingam <lohitslohit>`.
- |API| In :class:`AdaBoostClassifier`, the `algorithm` argument `SAMME.R` was
deprecated and will be removed in 1.6. :pr:`26830` by :user:`Stefanie Senger
<StefanieSenger>`.

:mod:`sklearn.linear_model`
...........................
Expand All @@ -207,47 +209,46 @@ Changelog
:mod:`sklearn.metrics`
......................

- |Enhancement| :func:`metrics.f_regression` and :func:`metrics.r_regression` now
support SciPy sparse arrays.
:pr:`27239` by :user:`Yaroslav Korobko <Tialo>`.
- |Efficiency| Computing pairwise distances via :class:`metrics.DistanceMetric`
for CSR × CSR, Dense × CSR, and CSR × Dense datasets is now 1.5x faster.
:pr:`26765` by :user:`Meekail Zain <micky774>`

:mod:`sklearn.preprocessing`
............................
- |Efficiency| Computing distances via :class:`metrics.DistanceMetric`
for CSR × CSR, Dense × CSR, and CSR × Dense now uses ~50% less memory,
and outputs distances in the same dtype as the provided data.
:pr:`27006` by :user:`Meekail Zain <micky774>`

- |Enhancement| :class:`preprocessing.TargetEncoder` now supports `target_type`
'multiclass'. :pr:`26674` by :user:`Lucy Liu <lucyleeow>`.
- |Enhancement| Improve the rendering of the plot obtained with the
:class:`metrics.PrecisionRecallDisplay` and :class:`metrics.RocCurveDisplay`
classes. the x- and y-axis limits are set to [0, 1] and the aspect ratio between
both axis is set to be 1 to get a square plot.
:pr:`26366` by :user:`Mojdeh Rastgoo <mrastgoo>`.

:mod:`sklearn.metrics`
......................
- |Enhancement| Added `neg_root_mean_squared_log_error_scorer` as scorer
:pr:`26734` by :user:`Alejandro Martin Gil <101AlexMartin>`.

- |Enhancement| :func:`sklearn.metrics.accuracy_score` and
:func:`sklearn.metrics.zero_one_loss` now support Array API compatible inputs.
:pr:`27137` by :user:`Edoardo Abati <EdAbati>`.

- |API| The `squared` parameter of :func:`metrics.mean_squared_error` and
:func:`metrics.mean_squared_log_error` is deprecated and will be removed in 1.6.
Use the new functions :func:`metrics.root_mean_squared_error` and
:func:`root_mean_squared_log_error` instead.
:pr:`26734` by :user:`Alejandro Martin Gil <101AlexMartin>`.

- |Enhancement| Added `neg_root_mean_squared_log_error_scorer` as scorer
:pr:`26734` by :user:`Alejandro Martin Gil <101AlexMartin>`.

:mod:`sklearn.preprocessing`
............................

- |Enhancement| Improves warnings in :class:`preprocessing.FunctionTransfomer` when
`func` returns a pandas dataframe and the output is configured to be pandas.
:pr:`26944` by `Thomas Fan`_.

:mod:`sklearn.model_selection`
..............................

- |Enhancement| :func:`sklearn.model_selection.train_test_split` now supports
Array API compatible inputs. :pr:`26855` by `Tim Head`_.

- |Fix| :class:`model_selection.GridSearchCV`,
:class:`model_selection.RandomizedSearchCV`, and
:class:`model_selection.HalvingGridSearchCV` now don't change the given
object in the parameter grid if it's an estimator. :pr:`26786` by `Adrin
Jalali`_.

- |Enhancement| :func:`sklearn.model_selection.train_test_split` now supports
Array API compatible inputs. :pr:`26855` by `Tim Head`_.

:mod:`sklearn.neighbors`
........................

Expand All @@ -256,18 +257,33 @@ Changelog
pairs of dense and sparse datasets.
:pr:`27018` by :user:`Julien Jerphanion <jjerphan>`.

- |API| :class:`neighbors.KNeighborsRegressor` now accepts
:class:`metric.DistanceMetric` objects directly via the `metric` keyword
argument allowing for the use of accelerated third-party
:class:`metric.DistanceMetric` objects.
:pr:`26267` by :user:`Meekail Zain <micky774>`

:mod:`sklearn.preprocessing`
............................

- |MajorFeature| :class:`preprocessing.MinMaxScaler` and
:class:`preprocessing.MaxAbsScaler` now
support the `Array API <https://data-apis.org/array-api/latest/>`_. Array API
support is considered experimental and might evolve without being subject to
our usual rolling deprecation cycle policy. See
:ref:`array_api` for more details.
:pr:`26243` by `Tim Head`_ and :pr:`27110` by :user:`Edoardo Abati <EdAbati>`.

- |Efficiency| :class:`preprocessing.OrdinalEncoder` avoids calculating
missing indices twice to improve efficiency.
:pr:`27017` by :user:`Xuefeng Xu <xuefeng-xu>`.

- |MajorFeature| :class:`preprocessing.MinMaxScaler` and :class:`preprocessing.MaxAbsScaler` now
support the `Array API <https://data-apis.org/array-api/latest/>`_. Array API
support is considered experimental and might evolve without being subject to
our usual rolling deprecation cycle policy. See
:ref:`array_api` for more details. :pr:`26243` by `Tim Head`_ and :pr:`27110` by :user:`Edoardo Abati <EdAbati>`.
- |Enhancement| Improves warnings in :class:`preprocessing.FunctionTransfomer` when
`func` returns a pandas dataframe and the output is configured to be pandas.
:pr:`26944` by `Thomas Fan`_.

- |Enhancement| :class:`preprocessing.TargetEncoder` now supports `target_type`
'multiclass'. :pr:`26674` by :user:`Lucy Liu <lucyleeow>`.

:mod:`sklearn.tree`
...................
Expand All @@ -280,44 +296,6 @@ Changelog
:pr:`13649` by :user:`Samuel Ronsin <samronsin>`, initiated by
:user:`Patrick O'Reilly <pat-oreilly>`.


:mod:`sklearn.neighbors`
........................

- |API| :class:`neighbors.KNeighborsRegressor` now accepts
:class:`metric.DistanceMetric` objects directly via the `metric` keyword
argument allowing for the use of accelerated third-party
:class:`metric.DistanceMetric` objects.
:pr:`26267` by :user:`Meekail Zain <micky774>`

:mod:`sklearn.neural_network`
.............................

- |Enhancement| :meth:`neural_network.BernoulliRBM.score_samples` now supports Scipy
sparse arrays.
:pr:`27252` by `Yao Xiao <Charlie-XIAO>`

:mod:`sklearn.metrics`
......................

- |Efficiency| Computing pairwise distances via :class:`metrics.DistanceMetric`
for CSR × CSR, Dense × CSR, and CSR × Dense datasets is now 1.5x faster.
:pr:`26765` by :user:`Meekail Zain <micky774>`

- |Efficiency| Computing distances via :class:`metrics.DistanceMetric`
for CSR × CSR, Dense × CSR, and CSR × Dense now uses ~50% less memory,
and outputs distances in the same dtype as the provided data.
:pr:`27006` by :user:`Meekail Zain <micky774>`

- |Enhancement| Improve the rendering of the plot obtained with the
:class:`metrics.PrecisionRecallDisplay` and :class:`metrics.RocCurveDisplay`
classes. the x- and y-axis limits are set to [0, 1] and the aspect ratio between
both axis is set to be 1 to get a square plot.
:pr:`26366` by :user:`Mojdeh Rastgoo <mrastgoo>`.

- |Enhancement| :func:`sklearn.metrics.accuracy_score` and :func:`sklearn.metrics.zero_one_loss` now support
Array API compatible inputs. :pr:`27137` by :user:`Edoardo Abati <EdAbati>`.

:mod:`sklearn.utils`
....................

Expand All @@ -338,10 +316,6 @@ Changelog
array and does not return the correct result for SciPy sparse matrix.
:pr:`27336` by :user:`Guillaume Lemaitre <glemaitre>`.

- |Enhancement| :func`sklearn.utils.multiclass.type_of_target` now supports Scipy
sparse arrays.
:pr:`27274` by `Yao Xiao <Charlie-XIAO>`

Code and Documentation Contributors
-----------------------------------

Expand Down

0 comments on commit ba7d869

Please sign in to comment.