版本 0.21#

更新日志图例

  • 重大功能 以前无法实现的大功能。

  • 功能 以前无法实现的功能。

  • 效率提升 现有功能现在可能不需要那么多计算或内存。

  • 增强 一般性的小改进。

  • 修复 以前无法按文档或合理预期工作的问题现在应该可以了。

  • API 变更 未来你需要更改代码才能达到相同的效果;或者未来某个功能将被移除。

版本 0.21.3#

2019年7月30日

变更模型#

以下估计器和函数在用相同数据和参数拟合时,可能会产生与上一个版本不同的模型。这通常是由于建模逻辑(bug 修复或增强)或随机采样过程的更改所致。

  • v0.20.0 发行说明未能提及 metrics.make_scorerneeds_proba=Truey_true 是二元时存在的向后不兼容性。现在,评分器函数应该接受一维 y_pred(即正类的概率,形状为 (n_samples,)),而不是二维 y_pred(即形状为 (n_samples, 2))。

更新日志#

sklearn.cluster#

sklearn.compose#

  • 修复 修复了 compose.ColumnTransformer 中的一个问题,即在 fittransform 之间列顺序不同的 DataFrames 可能导致将不正确的列静默传递给 remainder 转换器。#14237Andreas Schuderer <schuderer> 提交。

sklearn.datasets#

sklearn.ensemble#

sklearn.impute#

sklearn.inspection#

  • 修复 修复了 inspection.plot_partial_dependence 中的一个错误,其中 target 参数未被多分类问题考虑在内。#14393Guillem G. Subies 提交。

sklearn.linear_model#

sklearn.neighbors#

sklearn.tree#

  • 修复 修复了 tree.export_text 中的一个错误,当树有一个特征并传入单个特征名时。#14053Thomas Fan 提交。

  • 修复 修复了 tree.plot_tree 中的一个问题,即使对于 DecisionTreeClassifiers 中的 gini 准则,它也显示熵计算。#13947Frank Hoang 提交。

版本 0.21.2#

2019年5月24日

更新日志#

sklearn.decomposition#

sklearn.metrics#

sklearn.preprocessing#

sklearn.utils.sparsefuncs#

版本 0.21.1#

2019年5月17日

这是一个错误修复版本,主要解决了 0.21.0 版本中的一些打包问题。它还包括次要的文档改进和一些错误修复。

更新日志#

sklearn.inspection#

sklearn.metrics#

sklearn.neighbors#

版本 0.21.0#

2019年5月

更改的模型#

以下估计器和函数在用相同数据和参数拟合时,可能会产生与上一个版本不同的模型。这通常是由于建模逻辑(bug 修复或增强)或随机采样过程的更改所致。

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

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

已知的主要错误#

  • 对于许多求解器来说,linear_model.LogisticRegression 的默认 max_iter 太小,考虑到默认的 tol。特别是,我们在 0.16 版本中发布到 #3591 的 liblinear 求解器的默认 max_iter 从 1000 次迭代意外更改为 100 次迭代。在未来的版本中,我们希望根据求解器启发式地选择更好的默认 max_itertol(参见 #13317)。

更新日志#

对 Python 3.4 及以下版本的支持已正式终止。

sklearn.base#

sklearn.calibration#

sklearn.cluster#

sklearn.compose#

sklearn.datasets#

sklearn.decomposition#

sklearn.discriminant_analysis#

sklearn.dummy#

sklearn.ensemble#

sklearn.externals#

  • API 更改 弃用了 externals.six,因为我们已放弃对 Python 2.7 的支持。#12916Hanmin Qin 提交。

sklearn.feature_extraction#

sklearn.impute#

  • 主要功能 添加了 impute.IterativeImputer,这是一种通过将每个具有缺失值的特征建模为其他特征的函数,以循环方式插补缺失值的策略。#8478#12177Sergey FeldmanBen Lawson 提交。

    IterativeImputer 的 API 是实验性的,可能会在没有任何弃用周期的情况下发生变化。要使用它们,您需要显式导入 enable_iterative_imputer

    >>> from sklearn.experimental import enable_iterative_imputer  # noqa
    >>> # now you can import normally from sklearn.impute
    >>> from sklearn.impute import IterativeImputer
    
  • 功能 impute.SimpleImputerimpute.IterativeImputer 有一个新的参数 'add_indicator',它只是将 impute.MissingIndicator 变换堆叠到插补器变换的输出中。这允许预测估计器考虑缺失。#12583#13601Danylo Baibak 提交。

  • 修复impute.MissingIndicator 中,通过在输入稀疏且 missing_values 属性设置为 0 时引发异常来避免隐式致密化。#13240Bartosz Telenczuk 提交。

  • 修复 修复了 impute.MissingIndicator 中的两个错误。首先,当 X 稀疏时,所有非零非缺失值在转换后的数据中都变为显式的 False。然后,当 features='missing-only' 时,如果完全没有缺失值,所有特征都会被保留。#13562Jérémie du Boisberranger 提交。

sklearn.inspection#

(新子包)

  • 功能 部分依赖图(inspection.plot_partial_dependence)现在支持任何回归器或分类器(只要它们具有 predict_proba 方法)。#12599Trevor StephensNicolas Hug 提交。

sklearn.isotonic#

sklearn.linear_model#

sklearn.manifold#

sklearn.metrics#

sklearn.mixture#

sklearn.model_selection#

sklearn.multiclass#

sklearn.multioutput#

sklearn.neighbors#

sklearn.neural_network#

sklearn.pipeline#

sklearn.preprocessing#

sklearn.svm#

  • 修复 修复了 svm.SVC.decision_function 中当 decision_function_shape='ovr' 时的错误。由于在 decision_function 中使用的缩放,给定样本的 decision_function 值,在单独评估样本时与在包含该样本的批次上评估时不同。 #10440Jonathan Ohayon 贡献。

sklearn.tree#

sklearn.utils#

多个模块#

  • 主要新特性 所有估计器的 __repr__() 方法(在调用 print(estimator) 时使用)已完全重写,基于 Python 的漂亮打印标准库。默认情况下打印所有参数,但这可以通过 sklearn.set_config 中的 print_changed_only 选项进行更改。 #11705Nicolas Hug 贡献。

  • 主要新特性 添加了估计器标签:这些是对估计器的注释,允许以编程方式检查其功能,例如稀疏矩阵支持、支持的输出类型和支持的方法。估计器标签还决定了调用 check_estimator 时在估计器上运行的测试。在 用户指南 中了解更多信息。 #8022Andreas Müller 贡献。

  • 效率 在多个估计器中,将数组转换为不同的 dtype 时避免了内存复制。 #11973Roman Yurchak 贡献。

  • 修复 修复了 our_rand_r 辅助函数实现中的一个错误,该函数在不同平台上的行为不一致。 #13422Madhura ParikhClément Doumouro 贡献。

杂项#

  • 改进 Joblib 不再作为 scikit-learn 的一部分,而是成为一个依赖项。最低支持版本是 joblib 0.11,但强烈建议使用 0.13 或更高版本。 #13531Roman Yurchak 贡献。

估计器检查的更改#

这些更改主要影响库开发人员。

代码和文档贡献者

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

adanhawth, Aditya Vyas, Adrin Jalali, Agamemnon Krasoulis, Albert Thomas, Alberto Torres, Alexandre Gramfort, amourav, Andrea Navarrete, Andreas Mueller, Andrew Nystrom, assiaben, Aurélien Bellet, Bartosz Michałowski, Bartosz Telenczuk, bauks, BenjaStudio, bertrandhaut, Bharat Raghunathan, brentfagan, Bryan Woods, Cat Chenal, Cheuk Ting Ho, Chris Choe, Christos Aridas, Clément Doumouro, Cole Smith, Connossor, Corey Levinson, Dan Ellis, Dan Stine, Danylo Baibak, daten-kieker, Denis Kataev, Didi Bar-Zev, Dillon Gardner, Dmitry Mottl, Dmitry Vukolov, Dougal J. Sutherland, Dowon, drewmjohnston, Dror Atariah, Edward J Brown, Ekaterina Krivich, Elizabeth Sander, Emmanuel Arias, Eric Chang, Eric Larson, Erich Schubert, esvhd, Falak, Feda Curic, Federico Caselli, Frank Hoang, Fibinse Xavier`, Finn O’Shea, Gabriel Marzinotto, Gabriel Vacaliuc, Gabriele Calvo, Gael Varoquaux, GauravAhlawat, Giuseppe Vettigli, Greg Gandenberger, Guillaume Fournier, Guillaume Lemaitre, Gustavo De Mari Pereira, Hanmin Qin, haroldfox, hhu-luqi, Hunter McGushion, Ian Sanders, JackLangerman, Jacopo Notarstefano, jakirkham, James Bourbeau, Jan Koch, Jan S, janvanrijn, Jarrod Millman, jdethurens, jeremiedbb, JF, joaak, Joan Massich, Joel Nothman, Jonathan Ohayon, Joris Van den Bossche, josephsalmon, Jérémie Méhault, Katrin Leinweber, ken, kms15, Koen, Kossori Aruku, Krishna Sangeeth, Kuai Yu, Kulbear, Kushal Chauhan, Kyle Jackson, Lakshya KD, Leandro Hermida, Lee Yi Jie Joel, Lily Xiong, Lisa Sarah Thomas, Loic Esteve, louib, luk-f-a, maikia, mail-liam, Manimaran, Manuel López-Ibáñez, Marc Torrellas, Marco Gaido, Marco Gorelli, MarcoGorelli, marineLM, Mark Hannel, Martin Gubri, Masstran, mathurinm, Matthew Roeschke, Max Copeland, melsyt, mferrari3, Mickaël Schoentgen, Ming Li, Mitar, Mohammad Aftab, Mohammed AbdelAal, Mohammed Ibraheem, Muhammad Hassaan Rafique, mwestt, Naoya Iijima, Nicholas Smith, Nicolas Goix, Nicolas Hug, Nikolay Shebanov, Oleksandr Pavlyk, Oliver Rausch, Olivier Grisel, Orestis, Osman, Owen Flanagan, Paul Paczuski, Pavel Soriano, pavlos kallis, Pawel Sendyk, peay, Peter, Peter Cock, Peter Hausamann, Peter Marko, Pierre Glaser, pierretallotte, Pim de Haan, Piotr Szymański, Prabakaran Kumaresshan, Pradeep Reddy Raamana, Prathmesh Savale, Pulkit Maloo, Quentin Batista, Radostin Stoyanov, Raf Baluyot, Rajdeep Dua, Ramil Nugmanov, Raúl García Calvo, Rebekah Kim, Reshama Shaikh, Rohan Lekhwani, Rohan Singh, Rohan Varma, Rohit Kapoor, Roman Feldbauer, Roman Yurchak, Romuald M, Roopam Sharma, Ryan, Rüdiger Busche, Sam Waterbury, Samuel O. Ronsin, SandroCasagrande, Scott Cole, Scott Lowe, Sebastian Raschka, Shangwu Yao, Shivam Kotwalia, Shiyu Duan, smarie, Sriharsha Hatwar, Stephen Hoover, Stephen Tierney, Stéphane Couvreur, surgan12, SylvainLan, TakingItCasual, Tashay Green, thibsej, Thomas Fan, Thomas J Fan, Thomas Moreau, Tom Dupré la Tour, Tommy, Tulio Casagrande, Umar Farouk Umar, Utkarsh Upadhyay, Vinayak Mehta, Vishaal Kapoor, Vivek Kumar, Vlad Niculae, vqean3, Wenhao Zhang, William de Vazelhes, xhan, Xing Han Lu, xinyuliu12, Yaroslav Halchenko, Zach Griffith, Zach Miller, Zayd Hammoudeh, Zhuyi Xue, Zijie (ZJ) Poh, ^__^