版本0.23#

有关该版本主要亮点的简短描述,请参阅 scikit-learn 0.23的发布亮点 .

换象传说

  • Major Feature 一些你以前做不到的大事。

  • Feature 一些你以前做不到的事情。

  • Efficiency 现有功能现在可能不需要那么多的计算或内存。

  • Enhancement 一个杂七杂八的小改进。

  • Fix 以前没有按照记录或合理预期发挥作用的事情现在应该起作用了。

  • API Change 您需要更改您的代码才能在将来产生相同的效果;或者将来将删除某个功能。

版本0.23.2#

更改型号#

以下估计量和函数在与相同的数据和参数进行匹配时,可能会产生与之前版本不同的模型。这种情况通常是由于建模逻辑(错误修复或增强)或随机抽样过程的变化而发生的。

详细信息见下面的变更日志。

(虽然我们试图通过提供这些信息来更好地告知用户,但我们不能保证此列表是完整的。

Changelog#

sklearn.cluster#

sklearn.decomposition#

sklearn.ensemble#

sklearn.feature_extraction#

sklearn.linear_model#

sklearn.manifold#

sklearn.metrics#

sklearn.pipeline#

sklearn.utils#

版本0.23.1#

May 18 2020

Changelog#

sklearn.cluster#

杂项#

  • Fix 修复了 repr of third-party estimators that use a **kwargs parameter in their constructor, when changed_only is True which is now the default. #17205 by Nicolas Hug .

版本0.23.0#

May 12 2020

强制仅关键字参数#

为了促进库的清晰和明确的使用,大多数构造函数和函数参数现在预计将作为关键字参数传递(即使用 param=value syntax) instead of positional. To ease the transition, a FutureWarning is raised if a keyword-only parameter is used as positional. In version 1.0 (renaming of 0.25), these parameters will be strictly keyword-only, and a TypeError will be raised. #15005 by Joel Nothman , Adrin Jalali , Thomas Fan ,而且 Nicolas Hug .看到 SLEP009 了解更多详细信息。

更改型号#

以下估计量和函数在与相同的数据和参数进行匹配时,可能会产生与之前版本不同的模型。这种情况通常是由于建模逻辑(错误修复或增强)或随机抽样过程的变化而发生的。

详细信息见下面的变更日志。

(虽然我们试图通过提供这些信息来更好地告知用户,但我们不能保证此列表是完整的。

Changelog#

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#

  • Fix Efficiency Improved libsvm and liblinear random number generators used to randomly select coordinates in the coordinate descent algorithms. Platform-dependent C rand() was used, which is only able to generate numbers up to 32767 on windows platform (see this blog post) and also has poor randomization power as suggested by this presentation. It was replaced with C++11 mt19937, a Mersenne Twister that correctly generates 31bits/63bits random numbers on all platforms. In addition, the crude "modulo" postprocessor used to get a random number in a bounded interval was replaced by the tweaked Lemire method as suggested by this blog post. Any model using the svm.libsvm or the svm.liblinear solver, including svm.LinearSVC, svm.LinearSVR, svm.NuSVC, svm.NuSVR, svm.OneClassSVM, svm.SVC, svm.SVR, linear_model.LogisticRegression, is affected. In particular users can expect a better convergence when the number of samples (LibSVM) or the number of features (LibLinear) is large. #13511 by Sylvain Marié.

  • Fix 修复了使用自定义内核不接受浮点项(例如字符串内核)的问题 svm.SVCsvm.SVR .请注意,自定义内核现在需要验证它们之前接收到有效数值数组的输入。 #11296 通过 Alexandre GramfortGeorgi Peev .

  • API Change svm.SVRsvm.OneClassSVM 属性, probA_ and probB_, are now deprecated as they were not useful. #15558 by Thomas Fan .

sklearn.tree#

sklearn.utils#

杂项#

  • Major Feature 添加要在jupyter笔记本或实验室中显示的估计量的HTML表示。通过设置 display option in sklearn.set_config. #14180 by Thomas Fan .

  • Enhancement scikit-learn 目前拥有 mypy 没有错误。 #16726 通过 Roman Yurchak .

  • API Change 大多数估计者现在暴露了 n_features_in_ attribute. This attribute is equal to the number of features passed to the fit method. See SLEP010 有关详细信息 #16112 通过 Nicolas Hug .

  • API Change 估算者现在有了一个 requires_y tags which is False by default except for estimators that inherit from ~sklearn.base.RegressorMixin or ~sklearn.base.ClassifierMixin. This tag is used to ensure that a proper error message is raised when y was expected but None was passed. #16622 by Nicolas Hug .

  • API Change 默认设置 print_changed_only has been changed from False to True. This means that the repr of estimators is now more concise and only shows the parameters whose default value has been changed when printing an estimator. You can restore the previous behaviour by using sklearn.set_config(print_changed_only=False). Also, note that it is always possible to quickly inspect the parameters of any estimator using 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