@@ -36,17 +36,6 @@ The following models now support metadata routing in one or more or their
36
36
methods. Refer to the :ref: `Metadata Routing User Guide <metadata_routing >` for
37
37
more details.
38
38
39
- - |Enhancement | :class: `~compose.ColumnTransformer ` now supports metadata routing
40
- according to :ref: `metadata routing user guide <metadata_routing >`. :pr: `27005 `
41
- by `Adrin Jalali `_.
42
-
43
- - |Enhancement | :class: `linear_model.LogisticRegressionCV ` now supports
44
- metadata routing. :meth: `linear_model.LogisticRegressionCV.fit ` now
45
- accepts ``**params `` which are passed to the underlying splitter and
46
- scorer. :meth: `linear_model.LogisticRegressionCV.score ` now accepts
47
- ``**score_params `` which are passed to the underlying scorer.
48
- :pr: `26525 ` by :user: `Omar Salman <OmarManzoor> `.
49
-
50
39
- |Feature | :class: `pipeline.Pipeline ` now supports metadata routing according
51
40
to :ref: `metadata routing user guide <metadata_routing >`. :pr: `26789 ` by
52
41
`Adrin Jalali `_.
@@ -69,6 +58,46 @@ more details.
69
58
estimator's ``fit ``, the CV splitter, and the scorer. :pr: `27058 ` by `Adrin
70
59
Jalali `_.
71
60
61
+ - |Enhancement | :class: `~compose.ColumnTransformer ` now supports metadata routing
62
+ according to :ref: `metadata routing user guide <metadata_routing >`. :pr: `27005 `
63
+ by `Adrin Jalali `_.
64
+
65
+ - |Enhancement | :class: `linear_model.LogisticRegressionCV ` now supports
66
+ metadata routing. :meth: `linear_model.LogisticRegressionCV.fit ` now
67
+ accepts ``**params `` which are passed to the underlying splitter and
68
+ scorer. :meth: `linear_model.LogisticRegressionCV.score ` now accepts
69
+ ``**score_params `` which are passed to the underlying scorer.
70
+ :pr: `26525 ` by :user: `Omar Salman <OmarManzoor> `.
71
+
72
+ Support for SciPy sparse arrays
73
+ -------------------------------
74
+
75
+ Several estimators are now supporting SciPy sparse arrays. The following functions
76
+ and classes are impacted:
77
+
78
+ **Functions: **
79
+
80
+ - :func: `decomposition.non_negative_factorization ` in :pr: `27100 ` by
81
+ :user: `Isaac Virshup <ivirshup> `;
82
+ - :func: `metrics.f_regression ` in :pr: `27239 ` by :user: `Yaroslav Korobko <Tialo> `;
83
+ - :func: `metrics.r_regression ` in :pr: `27239 ` by :user: `Yaroslav Korobko <Tialo> `;
84
+ - :func: `sklearn.utils.multiclass.type_of_target ` in :pr: `27274 ` by
85
+ :user: `Yao Xiao <Charlie-XIAO> `.
86
+
87
+ **Classes: **
88
+
89
+ - :class: `decomposition.NMF ` in :pr: `27100 ` by :user: `Isaac Virshup <ivirshup> `;
90
+ - :class: `decomposition.MiniBatchNMF ` in :pr: `27100 ` by
91
+ :user: `Isaac Virshup <ivirshup> `;
92
+ - :class: `feature_extraction.text.TfidfTransformer ` in :pr: `27219 ` by
93
+ :user: `Yao Xiao <Charlie-XIAO> `;
94
+ - :class: `impute.SimpleImputer ` in :pr: `27277 ` by :user: `Yao Xiao <Charlie-XIAO> `;
95
+ - :class: `impute.IterativeImputer ` in :pr: `27277 ` by :user: `Yao Xiao <Charlie-XIAO> `;
96
+ - :class: `impute.KNNImputer ` in :pr: `27277 ` by :user: `Yao Xiao <Charlie-XIAO> `;
97
+ - :class: `kernel_approximation.PolynomialCountSketch ` in :pr: `27301 ` by
98
+ :user: `Lohit SundaramahaLingam <lohitslohit> `;
99
+ - :class: `neural_network.BernoulliRBM ` in :pr: `27252 ` by `Yao Xiao <Charlie-XIAO> `.
100
+
72
101
Changelog
73
102
---------
74
103
@@ -114,7 +143,7 @@ Changelog
114
143
private loss module. :pr: `27185 ` by :user: `Omar Salman <OmarManzoor> `.
115
144
116
145
:mod: `sklearn.cluster `
117
- ............................
146
+ ......................
118
147
119
148
- |API | : `kdtree ` and `balltree ` values are now deprecated and are renamed as
120
149
`kd_tree ` and `ball_tree ` respectively for the `algorithm ` parameter of
@@ -138,11 +167,6 @@ Changelog
138
167
:pr: `26315 ` and :pr: `27098 ` by :user: `Mateusz Sokół <mtsokol> `,
139
168
:user: `Olivier Grisel <ogrisel> ` and :user: `Edoardo Abati <EdAbati> `.
140
169
141
- - |Enhancement | :func: `decomposition.non_negative_factorization `, :class: `decomposition.NMF `,
142
- and :class: `decomposition.MiniBatchNMF ` now support :class: `scipy.sparse.sparray `
143
- subclasses.
144
- :pr: `27100 ` by :user: `Isaac Virshup <ivirshup> `.
145
-
146
170
:mod: `sklearn.ensemble `
147
171
.......................
148
172
@@ -160,10 +184,6 @@ Changelog
160
184
:pr: `13649 ` by :user: `Samuel Ronsin <samronsin> `,
161
185
initiated by :user: `Patrick O'Reilly <pat-oreilly> `.
162
186
163
- - |API | In :class: `AdaBoostClassifier `, the `algorithm ` argument `SAMME.R ` was
164
- deprecated and will be removed in 1.6. :pr: `26830 ` by :user: `Stefanie Senger
165
- <StefanieSenger> `.
166
-
167
187
- |Efficiency | :class: `ensemble.GradientBoostingClassifier ` is faster,
168
188
for binary and in particular for multiclass problems thanks to the private loss
169
189
function module.
@@ -174,27 +194,9 @@ Changelog
174
194
:class: `ensemble.GradientBoostingRegressor ` when trained on sparse data.
175
195
:pr: `26957 ` by `Thomas Fan `_.
176
196
177
- :mod: `sklearn.feature_extraction `
178
- .................................
179
-
180
- - |Enhancement | :class: `feature_extraction.text.TfidfTransformer ` now supports
181
- SciPy sparse arrays.
182
- :pr: `27219 ` by :user: `Yao Xiao <Charlie-XIAO> `.
183
-
184
- :mod: `sklearn.impute `
185
- .....................
186
-
187
- - |Enhancement | In :class: `impute.SimpleImputer `, :class: `impute.IterativeImputer `, and
188
- :class: `impute.KNNImputer ` with ``add_indicator=True ``, using sparse arrays now
189
- behaves in consistent with using sparse matrices in the `transform ` and
190
- `fit_transform ` methods. :pr: `27277 ` by :user: `Yao Xiao <Charlie-XIAO> `.
191
-
192
- :mod: `sklearn.kernel_approximation `
193
- ...................................
194
-
195
- - |Enhancement | :func: `kernel_approximation.PolynomialCountSketch ` now supports
196
- :class: `scipy.sparse.sparray ` subclasses.
197
- :pr: `27301 ` by :user: `Lohit SundaramahaLingam <lohitslohit> `.
197
+ - |API | In :class: `AdaBoostClassifier `, the `algorithm ` argument `SAMME.R ` was
198
+ deprecated and will be removed in 1.6. :pr: `26830 ` by :user: `Stefanie Senger
199
+ <StefanieSenger> `.
198
200
199
201
:mod: `sklearn.linear_model `
200
202
...........................
@@ -207,47 +209,46 @@ Changelog
207
209
:mod: `sklearn.metrics `
208
210
......................
209
211
210
- - |Enhancement | :func: ` metrics.f_regression ` and :func : `metrics.r_regression ` now
211
- support SciPy sparse arrays .
212
- :pr: `27239 ` by :user: `Yaroslav Korobko <Tialo> `.
212
+ - |Efficiency | Computing pairwise distances via :class : `metrics.DistanceMetric `
213
+ for CSR × CSR, Dense × CSR, and CSR × Dense datasets is now 1.5x faster .
214
+ :pr: `26765 ` by :user: `Meekail Zain <micky774> `
213
215
214
- :mod: `sklearn.preprocessing `
215
- ............................
216
+ - |Efficiency | Computing distances via :class: `metrics.DistanceMetric `
217
+ for CSR × CSR, Dense × CSR, and CSR × Dense now uses ~50% less memory,
218
+ and outputs distances in the same dtype as the provided data.
219
+ :pr: `27006 ` by :user: `Meekail Zain <micky774> `
216
220
217
- - |Enhancement | :class: `preprocessing.TargetEncoder ` now supports `target_type `
218
- 'multiclass'. :pr: `26674 ` by :user: `Lucy Liu <lucyleeow> `.
221
+ - |Enhancement | Improve the rendering of the plot obtained with the
222
+ :class: `metrics.PrecisionRecallDisplay ` and :class: `metrics.RocCurveDisplay `
223
+ classes. the x- and y-axis limits are set to [0, 1] and the aspect ratio between
224
+ both axis is set to be 1 to get a square plot.
225
+ :pr: `26366 ` by :user: `Mojdeh Rastgoo <mrastgoo> `.
219
226
220
- :mod: `sklearn.metrics `
221
- ......................
227
+ - |Enhancement | Added `neg_root_mean_squared_log_error_scorer ` as scorer
228
+ :pr: `26734 ` by :user: `Alejandro Martin Gil <101AlexMartin> `.
229
+
230
+ - |Enhancement | :func: `sklearn.metrics.accuracy_score ` and
231
+ :func: `sklearn.metrics.zero_one_loss ` now support Array API compatible inputs.
232
+ :pr: `27137 ` by :user: `Edoardo Abati <EdAbati> `.
222
233
223
234
- |API | The `squared ` parameter of :func: `metrics.mean_squared_error ` and
224
235
:func: `metrics.mean_squared_log_error ` is deprecated and will be removed in 1.6.
225
236
Use the new functions :func: `metrics.root_mean_squared_error ` and
226
237
:func: `root_mean_squared_log_error ` instead.
227
238
:pr: `26734 ` by :user: `Alejandro Martin Gil <101AlexMartin> `.
228
239
229
- - |Enhancement | Added `neg_root_mean_squared_log_error_scorer ` as scorer
230
- :pr: `26734 ` by :user: `Alejandro Martin Gil <101AlexMartin> `.
231
-
232
- :mod: `sklearn.preprocessing `
233
- ............................
234
-
235
- - |Enhancement | Improves warnings in :class: `preprocessing.FunctionTransfomer ` when
236
- `func ` returns a pandas dataframe and the output is configured to be pandas.
237
- :pr: `26944 ` by `Thomas Fan `_.
238
-
239
240
:mod: `sklearn.model_selection `
240
241
..............................
241
242
243
+ - |Enhancement | :func: `sklearn.model_selection.train_test_split ` now supports
244
+ Array API compatible inputs. :pr: `26855 ` by `Tim Head `_.
245
+
242
246
- |Fix | :class: `model_selection.GridSearchCV `,
243
247
:class: `model_selection.RandomizedSearchCV `, and
244
248
:class: `model_selection.HalvingGridSearchCV ` now don't change the given
245
249
object in the parameter grid if it's an estimator. :pr: `26786 ` by `Adrin
246
250
Jalali `_.
247
251
248
- - |Enhancement | :func: `sklearn.model_selection.train_test_split ` now supports
249
- Array API compatible inputs. :pr: `26855 ` by `Tim Head `_.
250
-
251
252
:mod: `sklearn.neighbors `
252
253
........................
253
254
@@ -256,18 +257,33 @@ Changelog
256
257
pairs of dense and sparse datasets.
257
258
:pr: `27018 ` by :user: `Julien Jerphanion <jjerphan> `.
258
259
260
+ - |API | :class: `neighbors.KNeighborsRegressor ` now accepts
261
+ :class: `metric.DistanceMetric ` objects directly via the `metric ` keyword
262
+ argument allowing for the use of accelerated third-party
263
+ :class: `metric.DistanceMetric ` objects.
264
+ :pr: `26267 ` by :user: `Meekail Zain <micky774> `
265
+
259
266
:mod: `sklearn.preprocessing `
260
267
............................
261
268
269
+ - |MajorFeature | :class: `preprocessing.MinMaxScaler ` and
270
+ :class: `preprocessing.MaxAbsScaler ` now
271
+ support the `Array API <https://data-apis.org/array-api/latest/ >`_. Array API
272
+ support is considered experimental and might evolve without being subject to
273
+ our usual rolling deprecation cycle policy. See
274
+ :ref: `array_api ` for more details.
275
+ :pr: `26243 ` by `Tim Head `_ and :pr: `27110 ` by :user: `Edoardo Abati <EdAbati> `.
276
+
262
277
- |Efficiency | :class: `preprocessing.OrdinalEncoder ` avoids calculating
263
278
missing indices twice to improve efficiency.
264
279
:pr: `27017 ` by :user: `Xuefeng Xu <xuefeng-xu> `.
265
280
266
- - |MajorFeature | :class: `preprocessing.MinMaxScaler ` and :class: `preprocessing.MaxAbsScaler ` now
267
- support the `Array API <https://data-apis.org/array-api/latest/ >`_. Array API
268
- support is considered experimental and might evolve without being subject to
269
- our usual rolling deprecation cycle policy. See
270
- :ref: `array_api ` for more details. :pr: `26243 ` by `Tim Head `_ and :pr: `27110 ` by :user: `Edoardo Abati <EdAbati> `.
281
+ - |Enhancement | Improves warnings in :class: `preprocessing.FunctionTransfomer ` when
282
+ `func ` returns a pandas dataframe and the output is configured to be pandas.
283
+ :pr: `26944 ` by `Thomas Fan `_.
284
+
285
+ - |Enhancement | :class: `preprocessing.TargetEncoder ` now supports `target_type `
286
+ 'multiclass'. :pr: `26674 ` by :user: `Lucy Liu <lucyleeow> `.
271
287
272
288
:mod: `sklearn.tree `
273
289
...................
@@ -280,44 +296,6 @@ Changelog
280
296
:pr: `13649 ` by :user: `Samuel Ronsin <samronsin> `, initiated by
281
297
:user: `Patrick O'Reilly <pat-oreilly> `.
282
298
283
-
284
- :mod: `sklearn.neighbors `
285
- ........................
286
-
287
- - |API | :class: `neighbors.KNeighborsRegressor ` now accepts
288
- :class: `metric.DistanceMetric ` objects directly via the `metric ` keyword
289
- argument allowing for the use of accelerated third-party
290
- :class: `metric.DistanceMetric ` objects.
291
- :pr: `26267 ` by :user: `Meekail Zain <micky774> `
292
-
293
- :mod: `sklearn.neural_network `
294
- .............................
295
-
296
- - |Enhancement | :meth: `neural_network.BernoulliRBM.score_samples ` now supports Scipy
297
- sparse arrays.
298
- :pr: `27252 ` by `Yao Xiao <Charlie-XIAO> `
299
-
300
- :mod: `sklearn.metrics `
301
- ......................
302
-
303
- - |Efficiency | Computing pairwise distances via :class: `metrics.DistanceMetric `
304
- for CSR × CSR, Dense × CSR, and CSR × Dense datasets is now 1.5x faster.
305
- :pr: `26765 ` by :user: `Meekail Zain <micky774> `
306
-
307
- - |Efficiency | Computing distances via :class: `metrics.DistanceMetric `
308
- for CSR × CSR, Dense × CSR, and CSR × Dense now uses ~50% less memory,
309
- and outputs distances in the same dtype as the provided data.
310
- :pr: `27006 ` by :user: `Meekail Zain <micky774> `
311
-
312
- - |Enhancement | Improve the rendering of the plot obtained with the
313
- :class: `metrics.PrecisionRecallDisplay ` and :class: `metrics.RocCurveDisplay `
314
- classes. the x- and y-axis limits are set to [0, 1] and the aspect ratio between
315
- both axis is set to be 1 to get a square plot.
316
- :pr: `26366 ` by :user: `Mojdeh Rastgoo <mrastgoo> `.
317
-
318
- - |Enhancement | :func: `sklearn.metrics.accuracy_score ` and :func: `sklearn.metrics.zero_one_loss ` now support
319
- Array API compatible inputs. :pr: `27137 ` by :user: `Edoardo Abati <EdAbati> `.
320
-
321
299
:mod: `sklearn.utils `
322
300
....................
323
301
@@ -338,10 +316,6 @@ Changelog
338
316
array and does not return the correct result for SciPy sparse matrix.
339
317
:pr: `27336 ` by :user: `Guillaume Lemaitre <glemaitre> `.
340
318
341
- - |Enhancement | :func`sklearn.utils.multiclass.type_of_target` now supports Scipy
342
- sparse arrays.
343
- :pr: `27274 ` by `Yao Xiao <Charlie-XIAO> `
344
-
345
319
Code and Documentation Contributors
346
320
-----------------------------------
347
321
0 commit comments