Skip to content

Commit 7c93c9f

Browse files
committed
move some issues from 1.2 to 1.1
1 parent 4bdd3b1 commit 7c93c9f

File tree

2 files changed

+142
-33
lines changed

2 files changed

+142
-33
lines changed

doc/whats_new/v1.1.rst

Lines changed: 60 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,19 @@ Version 1.1.2
99

1010
**In Development**
1111

12+
Changed models
13+
--------------
14+
15+
The following estimators and functions, when fit with the same data and
16+
parameters, may produce different models from the previous version. This often
17+
occurs due to changes in the modelling logic (bug fixes or enhancements), or in
18+
random sampling procedures.
19+
20+
- |Fix| :class:`manifold.TSNE` now throws a `ValueError` when fit with
21+
`perplexity>=n_samples` to ensure mathematical correctness of the algorithm.
22+
:pr:`10805` by :user:`Mathias Andersen <MrMathias>` and
23+
:pr:`23471` by :user:`Meekail Zain <micky774>`.
24+
1225
Changelog
1326
---------
1427

@@ -23,7 +36,7 @@ Changelog
2336
`Thomas Fan`_.
2437

2538
:mod:`sklearn.base`
26-
......................
39+
...................
2740

2841
- |Fix| The `get_params` method of the :class:`BaseEstimator` class now supports
2942
estimators with `type`-type params that have the `get_params` method.
@@ -36,13 +49,59 @@ Changelog
3649
a node if there are duplicates in the dataset.
3750
:pr:`23395` by :user:`Jérémie du Boisberranger <jeremiedbb>`.
3851

52+
:mod:`sklearn.feature_selection`
53+
................................
54+
55+
- |Fix| :class:`feature_selection.SelectFromModel` defaults to selection
56+
threshold 1e-5 when the estimator is either :class:`linear_model.ElasticNet`
57+
or :class:`linear_model.ElasticNetCV` with `l1_ratio` equals 1 or
58+
:class:`linear_model.LassoCV`.
59+
:pr:`23636` by :user:`Hao Chun Chang <haochunchang>`.
60+
61+
:mod:`sklearn.impute`
62+
.....................
63+
64+
- |Fix| :class:`impute.SimpleImputer` uses the dtype seen in `fit` for
65+
`transform` when the dtype is object. :pr:`22063` by `Thomas Fan`_.
66+
67+
:mod:`sklearn.linear_model`
68+
...........................
69+
70+
- |Fix| Use dtype-aware tolerances for the validation of gram matrices (passed by users
71+
or precomputed). :pr:`22059` by :user:`Malte S. Kurz <MalteKurz>`.
72+
73+
- |Fix| Fixed an error in :class:`linear_model.LogisticRegression` with
74+
`solver="newton-cg"`, `fit_intercept=True`, and a single feature. :pr:`23608`
75+
by `Tom Dupre la Tour`_.
76+
77+
:mod:`sklearn.manifold`
78+
.......................
79+
80+
- |Fix| :class:`manifold.TSNE` now throws a `ValueError` when fit with
81+
`perplexity>=n_samples` to ensure mathematical correctness of the algorithm.
82+
:pr:`10805` by :user:`Mathias Andersen <MrMathias>` and
83+
:pr:`23471` by :user:`Meekail Zain <micky774>`.
84+
85+
:mod:`sklearn.metrics`
86+
......................
87+
88+
- |Fix| Fixed error message of :class:`metrics.coverage_error` for 1D array input.
89+
:pr:`23548` by :user:`Hao Chun Chang <haochunchang>`.
90+
3991
:mod:`sklearn.preprocessing`
4092
............................
4193

4294
- |Fix| :meth:`preprocessing.OrdinalEncoder.inverse_transform` correctly handles
4395
use cases where `unknown_value` or `encoded_missing_value` is `nan`. :pr:`24087`
4496
by `Thomas Fan`_.
4597

98+
:mod:`sklearn.tree`
99+
...................
100+
101+
- |Fix| Fixed invalid memory access bug during fit in
102+
:class:`tree.DecisionTreeRegressor` and :class:`tree.DecisionTreeClassifier`.
103+
:pr:`23273` by `Thomas Fan`_.
104+
46105
.. _changes_1_1_1:
47106

48107
Version 1.1.1

doc/whats_new/v1.2.rst

Lines changed: 82 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,24 @@ parameters, may produce different models from the previous version. This often
1919
occurs due to changes in the modelling logic (bug fixes or enhancements), or in
2020
random sampling procedures.
2121

22-
- |Fix| :class:`manifold.TSNE` now throws a `ValueError` when fit with
23-
`perplexity>=n_samples` to ensure mathematical correctness of the algorithm.
24-
:pr:`10805` by :user:`Mathias Andersen <MrMathias>` and
25-
:pr:`23471` by :user:`Meekail Zain <micky774>`
22+
- |Enhancement| The default `eigen_tol` for :class:`cluster.SpectralClustering`,
23+
:class:`manifold.SpectralEmbedding`, :func:`cluster.spectral_clustering`,
24+
and :func:`manifold.spectral_embedding` is now `None` when using the `'amg'`
25+
or `'lobpcg'` solvers. This change improves numerical stability of the
26+
solver, but may result in a different model.
27+
28+
- |Enhancement| :class:`linear_model.GammaRegressor`,
29+
:class:`linear_model.PoissonRegressor` and :class:`linear_model.TweedieRegressor`
30+
can reach higher precision with the lbfgs solver, in particular when `tol` is set
31+
to a tiny value. Moreover, `verbose` is now properly propagated to L-BFGS-B.
32+
:pr:`23619` by :user:`Christian Lorentzen <lorentzenchr>`.
33+
34+
- |Fix| Make sign of `components_` deterministic in :class:`decomposition.SparsePCA`.
35+
:pr:`23935` by :user:`Guillaume Lemaitre <glemaitre>`.
36+
37+
- |Fix| The `components_` signs in :class:`decomposition.FastICA` might differ.
38+
It is now consistent and deterministic with all SVD solvers.
39+
:pr:`22527` by :user:`Meekail Zain <micky774>` and `Thomas Fan`_.
2640

2741
Changes impacting all modules
2842
-----------------------------
@@ -77,29 +91,23 @@ Changelog
7791
:pr:`11860` by :user:`Pierre Ablin <pierreablin>`,
7892
:pr:`22527` by :user:`Meekail Zain <micky774>` and `Thomas Fan`_.
7993

80-
:mod:`sklearn.feature_selection`
81-
................................
82-
- |Fix| :class:`feature_selection.SelectFromModel` defaults to selection
83-
threshold 1e-5 when the estimator is either :class:`linear_model.ElasticNet`
84-
or :class:`linear_model.ElasticNetCV` with `l1_ratio` equals 1 or
85-
:class:`linear_model.LassoCV`. :pr:`23636` by :user:`Hao Chun Chang
86-
<haochunchang>`
87-
88-
:mod:`sklearn.impute`
89-
.....................
90-
91-
- |Fix| :class:`impute.SimpleImputer` uses the dtype seen in `fit` for
92-
`transform` when the dtype is object. :pr:`22063` by `Thomas Fan`_.
93-
9494
:mod:`sklearn.linear_model`
9595
...........................
9696

97-
- |Fix| Use dtype-aware tolerances for the validation of gram matrices (passed by users
98-
or precomputed). :pr:`22059` by :user:`Malte S. Kurz <MalteKurz>`.
97+
- |Enhancement| :class:`linear_model.GammaRegressor`,
98+
:class:`linear_model.PoissonRegressor` and :class:`linear_model.TweedieRegressor`
99+
can reach higher precision with the lbfgs solver, in particular when `tol` is set
100+
to a tiny value. Moreover, `verbose` is now properly propagated to L-BFGS-B.
101+
:pr:`23619` by :user:`Christian Lorentzen <lorentzenchr>`.
99102

100-
- |Fix| Fixed an error in :class:`linear_model.LogisticRegression` with
101-
`solver="newton-cg"`, `fit_intercept=True`, and a single feature. :pr:`23608`
102-
by `Tom Dupre la Tour`_.
103+
- |API| The default value for the `solver` parameter in
104+
:class:`linear_model.QuantileRegressor` will change from `"interior-point"`
105+
to `"highs"` in version 1.4.
106+
:pr:`23637` by :user:`Guillaume Lemaitre <glemaitre>`.
107+
108+
- |API| String option `"none"` is deprecated for `penalty` argument
109+
in :class:`linear_model.LogisticRegression`, and will be removed in version 1.4.
110+
Use `None` instead. :pr:`23877` by :user:`Zhehao Liu <MaxwellLZH>`.
103111

104112
:mod:`sklearn.metrics`
105113
......................
@@ -109,8 +117,28 @@ Changelog
109117
of a binary classification problem. :pr:`22518` by
110118
:user:`Arturo Amor <ArturoAmorQ>`.
111119

112-
- |Fix| Fixed error message of :class:`metrics.coverage_error` for 1D array input.
113-
:pr:`23548` by :user:`Hao Chun Chang <haochunchang>`.
120+
- |Fix| :func:`metrics.ndcg_score` will now trigger a warning when the `y_true`
121+
value contains a negative value. Users may still use negative values, but the
122+
result may not be between 0 and 1. Starting in v1.4, passing in negative
123+
values for `y_true` will raise an error.
124+
:pr:`22710` by :user:`Conroy Trinh <trinhcon>` and
125+
:pr:`23461` by :user:`Meekail Zain <micky774>`.
126+
127+
:mod:`sklearn.multioutput`
128+
..........................
129+
130+
- |Feature| Added boolean `verbose` flag to classes:
131+
:class:`multioutput.ClassifierChain` and :class:`multioutput.RegressorChain`.
132+
:pr:`23977` by :user:`Eric Fiegel <efiegel>`,
133+
:user:`Chiara Marmo <cmarmo>`,
134+
:user:`Lucy Liu <lucyleeow>`, and
135+
:user:`Guillaume Lemaitre <glemaitre>`.
136+
137+
:mod:`sklearn.naive_bayes`
138+
..........................
139+
140+
- |Feature| Add methods `predict_joint_log_proba` to all naive Bayes classifiers.
141+
:pr:`23683` by :user:`Andrey Melnik <avm19>`.
114142

115143
:mod:`sklearn.neighbors`
116144
........................
@@ -130,9 +158,8 @@ Changelog
130158
:mod:`sklearn.tree`
131159
...................
132160

133-
- |Fix| Fixed invalid memory access bug during fit in
134-
:class:`tree.DecisionTreeRegressor` and :class:`tree.DecisionTreeClassifier`.
135-
:pr:`23273` by `Thomas Fan`_.
161+
- |Enhancement| :func:`tree.plot_tree`, :func:`tree.export_graphviz` now uses
162+
a lower case `x[i]` to represent feature `i`. :pr:`23480` by `Thomas Fan`_.
136163

137164
:mod:`sklearn.utils`
138165
....................
@@ -145,10 +172,33 @@ Changelog
145172
:mod:`sklearn.manifold`
146173
.......................
147174

148-
- |Fix| :class:`manifold.TSNE` now throws a `ValueError` when fit with
149-
`perplexity>=n_samples` to ensure mathematical correctness of the algorithm.
150-
:pr:`10805` by :user:`Mathias Andersen <MrMathias>` and
151-
:pr:`23471` by :user:`Meekail Zain <micky774>`
175+
- |Feature| Adds option to use the normalized stress in `manifold.MDS`. This is
176+
enabled by setting the new `normalize` parameter to `True`.
177+
:pr:`10168` by :user:`Łukasz Borchmann <Borchmann>`,
178+
:pr:`12285` by :user:`Matthias Miltenberger <mattmilten>`,
179+
:pr:`13042` by :user:`Matthieu Parizy <matthieu-pa>`,
180+
:pr:`18094` by :user:`Roth E Conrad <rotheconrad>` and
181+
:pr:`22562` by :user:`Meekail Zain <micky774>`.
182+
183+
- |Enhancement| Adds `eigen_tol` parameter to
184+
:class:`manifold.SpectralEmbedding`. Both :func:`manifold.spectral_embedding`
185+
and :class:`manifold.SpectralEmbedding` now propogate `eigen_tol` to all
186+
choices of `eigen_solver`. Includes a new option `eigen_tol="auto"`
187+
and begins deprecation to change the default from `eigen_tol=0` to
188+
`eigen_tol="auto"` in version 1.3.
189+
:pr:`23210` by :user:`Meekail Zain <micky774>`.
190+
191+
:mod:`sklearn.naive_bayes`
192+
..........................
193+
194+
- |Enhancement| A new parameter `force_alpha` was added to
195+
:class:`naive_bayes.BernoulliNB`, :class:`naive_bayes.ComplementNB`,
196+
:class:`naive_bayes.CategoricalNB`, and :class:`naive_bayes.MultinomialNB`,
197+
allowing user to set parameter alpha to a very small number, greater or equal
198+
0, which was earlier automatically changed to `1e-10` instead.
199+
:pr:`16747` by :user:`arka204`,
200+
:pr:`18805` by :user:`hongshaoyang`,
201+
:pr:`22269` by :user:`Meekail Zain <micky774>`.
152202

153203
Code and Documentation Contributors
154204
-----------------------------------

0 commit comments

Comments
 (0)