.. include:: _contributors.rst
.. currentmodule:: sklearn
.. _release_notes_1_6:
===========
版本 1.6
===========
..
-- UNCOMMENT WHEN 1.6.0 IS RELEASED --
有关本次发布的主要亮点简述,请参阅
:ref:`sphx_glr_auto_examples_release_highlights_plot_release_highlights_1_6_0.py` 。
.. include:: changelog_legend.inc
.. _changes_1_6:
版本 1.6.0
=============
**开发中**
支持数组 API
---------------------
更多的估计器和函数已更新,以包含对所有符合
`数组 API `_ 的输入的支持。
详情请参阅 :ref:`array_api` 。
**函数:**
- :func:`sklearn.metrics.cluster.entropy` :pr:`29141` 由 :user:`Yaroslav Korobko ` 贡献;
- :func:`sklearn.metrics.d2_tweedie_score` :pr:`29207` 由 :user:`Emily Chen ` 贡献;
- :func:`sklearn.metrics.max_error` :pr:`29212` 由 :user:`Edoardo Abati ` 贡献;
- :func:`sklearn.metrics.mean_absolute_error` :pr:`27736` 由 :user:`Edoardo Abati ` 贡献
以及 :pr:`29143` 由 :user:`Tialo ` 和 :user:`Loïc Estève ` 贡献;
- :func:`sklearn.metrics.mean_gamma_deviance` :pr:`29239` 由 :user:`Emily Chen ` 贡献;
- :func:`sklearn.metrics.mean_squared_error` :pr:`29142` 由 :user:`Yaroslav Korobko ` 贡献;
- :func:`sklearn.metrics.mean_tweedie_deviance` :pr:`28106` 由 :user:`Thomas Li ` 贡献;
- :func:`sklearn.metrics.pairwise.additive_chi2_kernel` :pr:`29144` 由 :user:`Yaroslav Korobko ` 贡献;
- :func:`sklearn.metrics.pairwise.chi2_kernel` :pr:`29267` 由 :user:`Yaroslav Korobko ` 贡献;
- :func:`sklearn.metrics.pairwise.cosine_similarity` :pr:`29014` 由 :user:`Edoardo Abati ` 贡献;
- :func:`sklearn.metrics.pairwise.paired_cosine_distances` :pr:`29112` 由 :user:`Edoardo Abati ` 贡献。
**类:**
- :class:`preprocessing.LabelEncoder` 现在支持兼容数组 API 的输入。
:pr:`27381` 由 :user:`Omar Salman ` 贡献。
- :class:`model_selection.GridSearchCV` ,
:class:`model_selection.RandomizedSearchCV` ,
:class:`model_selection.HalvingGridSearchCV` 和
:class:`model_selection.HalvingRandomSearchCV` 现在支持当它们的基估计器支持时,兼容数组API的输入。:pr:`27096` 由 :user:`Tim Head ` 和 :user:`Olivier Grisel ` 贡献。
元数据路由
----------
以下模型现在在其一个或多个方法中支持元数据路由。更多详情请参阅 :ref:`元数据路由用户指南 ` 。
- |Feature| :func:`model_selection.learning_curve` 现在支持其估计器的 `fit` 方法以及其底层CV分割器和评分器的元数据路由。:pr:`28975` 由 :user:`Stefanie Senger ` 贡献。
- |Feature| :class:`ensemble.StackingClassifier` 和
:class:`ensemble.StackingRegressor` 现在支持元数据路由,并通过其 `fit` 方法将 ``**fit_params`` 传递给底层估计器。:pr:`28701` 由 :user:`Stefanie Senger ` 贡献。
- |Feature| :class:`compose.TransformedTargetRegressor` 现在在其 `fit` 和 `predict` 方法中支持元数据路由,并将相应的参数路由到底层回归器。:pr:`29136` 由 :user:`Omar Salman ` 贡献。
放弃对PyPy的官方支持
--------------------
由于维护资源有限和用户数量较少,官方已放弃对PyPy的支持。scikit-learn的某些部分可能仍然有效,但PyPy不再在scikit-learn的持续集成中进行测试。:pr:`29128` 由 :user:`Loïc Estève ` 贡献。
变更日志
--------
..
条目应按模块(按字母顺序)分组,并以前缀之一标记:|MajorFeature|、|Feature|、|Efficiency|、|Enhancement|、|Fix| 或 |API|(参见 whats_new.rst 中的描述)。
条目应按这些标签排序(例如,|Fix| 在 |Efficiency| 之后)。
不特定于某个模块的更改应列在 *Multiple Modules* 或 *Miscellaneous* 下。
条目应以以下格式结束:
:pr:`123456` by :user:`Joe Bloggs ` 。
其中 123455 是 *pull request* 编号,而不是问题编号。
:mod:`sklearn.base`
...................
- |Enhancement| 添加了一个函数 :func:`base.is_clusterer` ,用于确定给定的估计器是否属于聚类器类别。
:pr:`28936` by :user:`Christian Veenhuis ` 。
:mod:`sklearn.cluster`
......................
- |API| :class:`cluster.Birch` 的 `copy` 参数在 1.6 版本中已弃用,并将在 1.8 版本中移除。该参数对估计器没有影响,因为它不会对输入数据进行原地操作。
:pr:`29124` by :user:`Yao Xiao ` 。
:mod:`sklearn.discriminant_analysis`
....................................
- |Fix| :class:`discriminant_analysis.QuadraticDiscriminantAnalysis` 在存在共线变量的情况下将引发 `LinAlgWarning` 。可以使用 `reg_param` 属性来屏蔽这些错误。
:pr:`19731` by :user:`Alihan Zihna ` 。
:mod:`sklearn.ensemble`
.......................
- |Efficiency| 通过并行化初始搜索 bin 阈值,改进了 :class:`ensemble.HistGradientBoostingClassifier` 和 :class:`ensemble.HistGradientBoostingRegressor` 的拟合运行时性能。
:pr:`28064` by :user:`Christian Lorentzen ` 。
- |Efficiency| :class:`ensemble.IsolationForest` 在 :term:`predict` 期间现在可以并行运行作业,使用 `joblib` 在样本大小大于 2000 时提供高达 2-4 倍的加速。
:pr:`28622` by :user:`Adam Li ` 和
:user:`Sérgio Pereira ` 。
:mod:`sklearn.impute`
.....................
- |Fix| :class:`impute.KNNImputer` 在计算均匀权重的均值时排除了距离为 nan 的样本。
:pr:`29135` by :user:`Xuefeng Xu ` 。
:mod:`sklearn.linear_model`
...........................
- |API| 弃用 :class:`linear_model.TheilSenRegressor` 中的 `copy_X` 参数,因为该参数没有效果。 `copy_X` 将在 1.8 版本中移除。
:pr:`29105` 由 :user:`Adam Li ` 提交。
:mod:`sklearn.manifold`
.......................
- |Efficiency| :func:`manifold.locally_linear_embedding` 和
:class:`manifold.LocallyLinearEmbedding` 现在更有效地分配 Hessian、Modified 和 LTSA 方法中稀疏矩阵的内存。
:pr:`28096` 由 :user:`Giorgio Angelotti ` 提交。
:mod:`sklearn.metrics`
......................
- |Enhancement| :func:`sklearn.metrics.check_scoring` 现在接受 `raise_exc` 参数,用于指定在多指标评分中部分评分器失败时是否引发异常或返回错误代码。
:pr:`28992` 由 :user:`Stefanie Senger ` 提交。
- |Enhancement| 在 :func:`cohen_kappa_score` 中添加 `zero_division` 参数。当出现除以零的情况时,该指标未定义,将返回此值。
:pr:`29210` 由 :user:`Marc Torrellas Socastro ` 和
:user:`Stefanie Senger ` 提交。
:mod:`sklearn.model_selection`
..............................
- |Enhancement| 在 :class:`model_selection.FixedThresholdClassifier` 中添加 `prefit` 参数,允许使用预先拟合的估计器而无需重新拟合。
:pr:`29067` 由 :user:`Guillaume Lemaitre ` 提交。
:mod:`sklearn.neighbors`
........................
- |Fix| :class:`neighbors.LocalOutlierFactor` 在 `fit` 方法中当训练数据中存在重复值导致异常检测不准确时会发出警告。
:pr:`28773` 由 :user:`Henrique Caroço ` 提交。
感谢自 1.5 版本以来为项目的维护和改进做出贡献的所有人,包括:
TODO: 在发布时更新。