版本更新日志

版本0.23.2

2020年8月3日

改款

下列估算器和函数在使用相同数据和参数时,可能会产生与先前版本不同的模型。这通常是由于建模逻辑(错误修复或增强)或随机采样过程中的更改而产生的。

详细信息在下面的更改日志中列出。

(尽管我们试图通过提供此信息来更好地通知用户,但我们不能确保此列表是完整的。)

更新日志

sklearn.cluster

sklearn.decomposition

sklearn.ensemble

sklearn.feature_extraction

sklearn.linear_model

sklearn.manifold

sklearn.metrics

sklearn.pipeline

sklearn.utils

版本0.23.1

2020年5月18日

更新日志

sklearn.cluster

杂项

  • 修复 修复了在repr第三方估算器中构造函数的**kwargs参数的错误,changed_only现在为默认值为True。 #17205 by Nicolas Hug.

版本0.23.0

2020年5月12日

有关该发行版主要要点的简短说明,请参阅 scikit-learn 0.23的发行要点

变更日志图例

  • 主要特点 :您以前做不到的大事。
  • 特征 :您之前无法做的事情。
  • 效率 :现有功能现在可能不需要太多的计算或内存。
  • 增强功能 :其他小改进。
  • 修复 :某些以前未按文档说明进行操作或符合合理预期的内容现在应该可以使用。
  • API变更:您将需要更改代码以在将来具有相同的效果;否则将来会删除某个功能。

强制仅关键字的参数

为了促进对库的清晰和明确的使用,现在期望大多数构造函数和函数参数作为关键字参数(即使用param=value语法)而不是位置参数传递。为了简化过渡,如果仅关键字参数用作位置,则会引发FutureWarning。在0.25版中,这些参数将严格仅用作关键字,并且将引发TypeError#15005 by Joel Nothman, Adrin Jalali, Thomas Fan, and Nicolas Hug.有关 更多详细信息,请参见SLEP009

改款

下列估算器和函数在使用相同数据和参数时,可能会产生与先前版本不同的效果。这通常是由于建模逻辑(错误修复或增强)或随机采样过程中的更改而发生的。

详细信息在下面的更改日志中列出。

(尽管我们试图通过提供此信息来更好地通知用户,但我们不能确保此列表是完整的。)

更新日志

sklearn.cluster

sklearn.compose

sklearn.datasets

sklearn.decomposition

sklearn.ensemble

sklearn.feature_extraction

sklearn.feature_selection

sklearn.gaussian_process

sklearn.impute

sklearn.inspection

sklearn.linear_model

sklearn.metrics

sklearn.model_selection

sklearn.multioutput

sklearn.naive_bayes

sklearn.neural_network

sklearn.inspection

sklearn.preprocessing

sklearn.semi_supervised

sklearn.svm

  • 修复 效率 采用改进的libsvm随机坐标生成算法和liblinear随机坐标选择算法。使用了依赖于平台的C rand(),它只能在Windows平台上生成小于32767的数字(请参阅此博客文章),并且如本演示文稿所示,其随机化能力也很差。它被C ++ 11mt19937取代,后者是Mersenne Twister,可以在所有平台上正确生成31bits / 63bits随机数。另外,本博客文章建议,用于调整有界区间中的随机数的粗略“模”后处理器已由调整的Lemire方法代替。任何模型使用svm.libsvmsvm.liblinear求解器会受到影响,包括svm.LinearSVCsvm.LinearSVRsvm.NuSVCsvm.NuSVRsvm.OneClassSVMsvm.SVCsvm.SVRlinear_model.LogisticRegression。特别是当样本数量(LibSVM)或特征数量(LibLinear)很大时,用户可以期待更好的收敛性。 #13511 by SylvainMarié
  • 修复 修复使用自定义内核不接受浮点项(如字符串内核)的svm.SVCsvm.SVR用法。请注意,自定义核现在需要在它们以前接收到有效数字数组的地方验证其输入。#11296 by Alexandre Gramfort and Georgi Peev.
  • API变更 svm.SVRsvm.OneClassSVMprobA_以及 probB_属性现在已被弃用,因为它们没有用。#15558 by Thomas Fan.

sklearn.tree

sklearn.utils

杂项

  • 主要特点 添加将在Jupyter笔记本或实验室中显示的估算器的HTML表示形式。通过在 sklearn.set_config中设置display选项可以激活此可视化。 #14180 by Thomas Fan.
  • 增强功能 scikit-learn现在可以正常使用了mypy#16726 by Roman Yurchak.
  • API变更 现在,大多数估算器都会公开一个n_features_in_属性。此属性等于传递给fit方法的特征数量。有关详细信息,请参见SLEP010#16112 by Nicolas Hug.
  • API变更 现在,估算器具有一个默认为False 的requires_y标签,但继承自~sklearn.base.RegressorMixin~sklearn.base.ClassifierMixin的估算器除外。此标记用于确保在预期y但未传递任何消息时引发正确的错误消息。#16622 by Nicolas Hug.
  • API变更 print_changed_only默认设置已从False更改为True。这意味着repr估算器的现在更加简洁,仅显示在打印估算器时其默认值已更改的参数。您可以使用来还原以前的行为 sklearn.set_config(print_changed_only=False)。另外,请注意,始终可以使用est.get_params(deep=False)来快速检查任何估计器的参数 。#17061 by Nicolas Hug.

代码和文档贡献者

感谢自0.22版以来为项目的维护和改进做出贡献的所有人,其中包括:

Abbie Popa, Adrin Jalali, Aleksandra Kocot, Alexandre Batisse, Alexandre Gramfort, Alex Henrie, Alex Itkes, Alex Liang, alexshacked, Alonso Silva Allende, Ana Casado, Andreas Mueller, Angela Ambroz, Ankit810, Arie Pratama Sutiono, Arunav Konwar, Baptiste Maingret, Benjamin Beier Liu, bernie gray, Bharathi Srinivasan, Bharat Raghunathan, Bibhash Chandra Mitra, Brian Wignall, brigi, Brigitta Sipőcz, Carlos H Brandt, CastaChick, castor, cgsavard, Chiara Marmo, Chris Gregory, Christian Kastner, Christian Lorentzen, Corrie Bartelheimer, Daniël van Gelder, Daphne, David Breuer, david-cortes, dbauer9, Divyaprabha M, Edward Qian, Ekaterina Borovikova, ELNS, Emily Taylor, Erich Schubert, Eric Leung, Evgeni Chasnovski, Fabiana, Facundo Ferrín, Fan, Franziska Boenisch, Gael Varoquaux, Gaurav Sharma, Geoffrey Bolmier, Georgi Peev, gholdman1, Gonthier Nicolas, Gregory Morse, Gregory R. Lee, Guillaume Lemaitre, Gui Miotto, Hailey Nguyen, Hanmin Qin, Hao Chun Chang, HaoYin, Hélion du Mas des Bourboux, Himanshu Garg, Hirofumi Suzuki, huangk10, Hugo van Kemenade, Hye Sung Jung, indecisiveuser, inderjeet, J-A16, Jérémie du Boisberranger, Jin-Hwan CHO, JJmistry, Joel Nothman, Johann Faouzi, Jon Haitz Legarreta Gorroño, Juan Carlos Alfaro Jiménez, judithabk6, jumon, Kathryn Poole, Katrina Ni, Kesshi Jordan, Kevin Loftis, Kevin Markham, krishnachaitanya9, Lam Gia Thuan, Leland McInnes, Lisa Schwetlick, lkubin, Loic Esteve, lopusz, lrjball, lucgiffon, lucyleeow, Lucy Liu, Lukas Kemkes, Maciej J Mikulski, Madhura Jayaratne, Magda Zielinska, maikia, Mandy Gu, Manimaran, Manish Aradwad, Maren Westermann, Maria, Mariana Meireles, Marie Douriez, Marielle, Mateusz Górski, mathurinm, Matt Hall, Maura Pintor, mc4229, meyer89, m.fab, Michael Shoemaker, Michał Słapek, Mina Naghshhnejad, mo, Mohamed Maskani, Mojca Bertoncelj, narendramukherjee, ngshya, Nicholas Won, Nicolas Hug, nicolasservel, Niklas, @nkish, Noa Tamir, Oleksandr Pavlyk, olicairns, Oliver Urs Lenz, Olivier Grisel, parsons-kyle-89, Paula, Pete Green, Pierre Delanoue, pspachtholz, Pulkit Mehta, Qizhi Jiang, Quang Nguyen, rachelcjordan, raduspaimoc, Reshama Shaikh, Riccardo Folloni, Rick Mackenbach, Ritchie Ng, Roman Feldbauer, Roman Yurchak, Rory Hartong-Redden, Rüdiger Busche, Rushabh Vasani, Sambhav Kothari, Samesh Lakhotia, Samuel Duan, SanthoshBala18, Santiago M. Mola, Sarat Addepalli, scibol, Sebastian Kießling, SergioDSR, Sergul Aydore, Shiki-H, shivamgargsya, SHUBH CHATTERJEE, Siddharth Gupta, simonamaggio, smarie, Snowhite, stareh, Stephen Blystone, Stephen Marsh, Sunmi Yoon, SylvainLan, talgatomarov, tamirlan1, th0rwas, theoptips, Thomas J Fan, Thomas Li, Thomas Schmitt, Tim Nonner, Tim Vink, Tiphaine Viard, Tirth Patel, Titus Christian, Tom Dupré la Tour, trimeta, Vachan D A, Vandana Iyer, Venkatachalam N, waelbenamara, wconnell, wderose, wenliwyan, Windber, wornbb, Yu-Hang “Maxin” Tang