版本0.20#

警告

0.20版是scikit-learn支持Python 2.7和Python 3.4的最后一个版本。Scikit-learn 0.21需要Python 3.5或更高版本。

换象传说

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

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

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

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

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

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

版本0.20.4#

July 30, 2019

这是一个错误修复版本,其中一些错误修复应用于版本0.20.3。

Changelog#

joblib的捆绑版本从0.13.0升级到0.13.2。

sklearn.cluster#

sklearn.compose#

  • Fix 修复了中的一个问题 compose.ColumnTransformer 其中使用列顺序不同的数据框架 fittransform 可能会导致将错误的列悄悄传递到 remainder Transformer。 #14237 通过 Andreas Schuderer <schuderer> .

sklearn.decomposition#

sklearn.model_selection#

sklearn.neighbors#

版本0.20.3#

March 1, 2019

这是一个错误修复版本,对0.20.0中发布的功能进行了一些小的文档改进和增强。

Changelog#

sklearn.cluster#

sklearn.compose#

sklearn.covariance#

sklearn.decomposition#

sklearn.datasets#

sklearn.feature_extraction#

sklearn.impute#

sklearn.linear_model#

sklearn.preprocessing#

sklearn.svm#

代码和文档贡献者#

感谢:

Adrin Jalali、Agamemnon Krasoulis、Albert Thomas、Andreas Mueller、Aurélien Bellet、bertrandhaut、Bharat Raghunathan、Dowon、Emmanuel Arias、Fibinse Xavier、Finn O ' Shea、Gabriel Varoquaux、Guillaume Lemaitre、Hanmin Qin、joaak、Joel Nothman、Joris Van den Bossche、Jérémie Méhault、kms 15、Kossori Aruku、Lakshya KD、maikia、Manuel López-Ibáñez、Marco Gorelli、mferrari 3、Mickaël Schoentgen、Nicolas Hug、pavlos kallis、Pierre Glaser、pierretalupe、Prabakaran Kumaresshan、Resshama Shaikh、Rohit Kapoor、Roman Yurchak、SandroCasagrande、Tashay Green、Thomas Fan、Visshaal Kapoor、Zhuyi Xu、Zijie(ZJ)Poh

版本0.20.2#

December 20, 2018

这是一个错误修复版本,对0.20.0中发布的功能进行了一些小的文档改进和增强。

更改型号#

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

  • sklearn.neighborsmetric=='jaccard' (bug修复)

  • 使用 'seuclidean''mahalanobis' 某些情况下的指标(错误修复)

Changelog#

sklearn.compose#

sklearn.metrics#

sklearn.neighbors#

  • Fix 固定 sklearn.neighbors.DistanceMetric jaccard距离函数在比较两个全零载体时返回0。 #12685 通过 Thomas Fan .

sklearn.utils#

代码和文档贡献者#

感谢:

adanhawh、Adrin Jalali、Albert Thomas、Andreas Mueller、Dan Stine、Feda Curic、Hanmin Qin、Jan S、jeremiedbb、Joel Nothman、Joris Van den Bossche、josephsalon、Katrin Leinweber、Loic Esteve、Muhammad Hassaan Rafique、Nicolas Hug、Olivier Grisel、Paul Paczuski、Reshama Shaikh、Sam Waterbury、Shivam Kotwalia、Thomas Fan

版本0.20.1#

November 21, 2018

这是一个错误修复版本,对0.20.0中发布的功能进行了一些小的文档改进和增强。请注意,我们还在此版本中包含了一些API更改,因此在从0.20.0更新到0.20.1后,您可能会收到一些额外的警告。

更改型号#

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

Changelog#

sklearn.cluster#

sklearn.compose#

sklearn.datasets#

sklearn.decomposition#

sklearn.ensemble#

sklearn.feature_extraction#

sklearn.linear_model#

sklearn.metrics#

sklearn.mixture#

sklearn.neighbors#

sklearn.preprocessing#

sklearn.utils#

杂项#

  • Fix 当通过设置环境变量使用站点jobib时 SKLEARN_SITE_JOBLIB, added compatibility with joblib 0.11 in addition to 0.12+. #12350 by Joel NothmanRoman Yurchak .

  • Fix 确保避免抚养 FutureWarning 打电话时 np.vstack 使用numpy 1.16及更高版本(在scikit-learn代码库的许多位置使用列表解析而不是生成器表达)。 #12467 通过 Olivier Grisel .

  • API Change 删除所有提及的 sklearn.externals.joblib ,以及中暴露的废弃jobib方法 sklearn.utils ,除了 utils.parallel_backend and utils.register_parallel_backend, which allow users to configure parallel computation in scikit-learn. Other functionalities are part of joblib .包,并应通过安装直接使用。此更改的目标是为在未来版本的scikit-learn中解除joblib做好准备。 #12345 通过 Thomas Moreau

代码和文档贡献者#

感谢:

^_,Adrin Jalali,Andrea Navarbite,Andreas Mueller,bauks,BenjaStudio,Cheuk Ting Ho,Connossor,Corey Levinson,Dan Stine,daten-kieker,Denis Kataev,Dillon Gardner,Dmitry Vukolov,Dougal J. Sutherland,Edward J Brown,Eric Chang,Federico Caselli,Gabriel Marzinotto,Gael Varoquaux,GauravAhlawat,Gustavo De Mari Pereira,Hanmin Qin,haroldfox,JackLangerman,Jacopo Notarstefano,janvanrijn,jethurens,jeremiedb、Joel Nothman、Joris Van den Bossche、Koen、Kushal Chauhan、Lee Yi Jie Joel、Lily Xiong、mail-liam、Mark Hannel、melsyt、Ming Li、Nicholas Smith、Nicolas Hug、Nikolay Shebanov、Oleksandr Pavlyk、Olivier Grisel、Peter Hausamann、Pierre Glaser、PulKit Maloo、Quentin Batista、Radostin Stoyanov、Ramil Nugmanov、Rebekah Kim、Reshama Shaikh、Rohan Singh、Roman Feldbauer、Roman Yurchak、Rooopam Sharma、Sam Waterbury、Scott Lowe、Sebastian Raschka、Stephen Tierney、SylvainLan、TakingItCasual、Thomas Fan、Thomas Moreau、Tom Dupré la Tour、Tulio Casagrande、Utkarsh Upadhyay、Xing Han Lu、Yaroslav Halchenko、Zach Miller

版本0.20.0#

September 25, 2018

该版本包含了Scikit-learn库的大量错误修复、功能和增强,以及对文档和示例的改进。感谢我们的贡献者!

本版本旨在纪念拉格哈夫·拉贾戈帕兰。

亮点#

我们试图改善对常见数据科学用例的支持,包括缺失值、分类变量、异类数据以及具有异常分布的特征/目标。由NaN表示的特征中的缺失值现在在按列预处理(例如缩放器)中被接受。每个特征的匹配不考虑NaN,并且可以转换包含NaN的数据。新 sklearn.impute 尽管数据缺失,模块仍为学习提供估计器。

ColumnTransformer 处理pandas.DataFrame的不同功能或列需要不同预处理的情况。字符串或pandas现在可以用以下方式编码分类列 OneHotEncoderOrdinalEncoder .

TransformedTargetRegressor 当回归目标需要转换才能建模时,这会有所帮助。 PowerTransformerKBinsDiscretizer 加入 QuantileTransformer 作为非线性变换。

Beyond this, we have added sample_weight support to several estimators (including KMeans, BayesianRidge and KernelDensity) and improved stopping criteria in others (including MLPRegressor, GradientBoostingRegressor and SGDRegressor).

该版本也是第一个伴随着 常用术语和API元素词汇表 开发 Joel Nothman .该术语表是一个参考资源,旨在帮助用户和贡献者熟悉Scikit-learn中使用的术语和惯例。

如果您的贡献没有成为亮点,我很抱歉。这里有很多.

更改型号#

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

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

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

已知的主要bug#

  • #11924 : linear_model.LogisticRegressionCVsolver='lbfgs'multi_class='multinomial' 在macOS上可能是不确定的或以其他方式损坏的。Travis CI服务器上似乎就是这种情况,但尚未在个人MacBook上得到证实!此问题在之前的版本中曾存在过。

  • #9354 : metrics.pairwise.euclidean_distances (在整个库中多次使用)给出的结果精度较差,这特别影响其与32位浮点输入的使用。当某些算法被更改以避免将32位数据转换为64位时,这在0.18和0.19版本中变得更加问题。

Changelog#

对Python 3.3的支持已正式放弃。

sklearn.cluster#

sklearn.compose#

sklearn.covariance#

sklearn.datasets#

sklearn.decomposition#

sklearn.discriminant_analysis#

  • Efficiency 内存使用率改进 _class_means and _ 类_cover ' in  :mod:`sklearn.discriminant_analysis . #10898 通过 Nanxin Chen .

sklearn.dummy#

sklearn.ensemble#

sklearn.feature_extraction#

sklearn.feature_selection#

sklearn.gaussian_process#

sklearn.impute#

sklearn.isotonic#

sklearn.linear_model#

sklearn.manifold#

  • Efficiency 加快中“exact”和“barnes_hut”方法的改进 manifold.TSNE . #10593#10610 通过 Tom Dupre la Tour .

  • Feature 支持稀疏输入 manifold.Isomap.fit . #8554 通过 Leland McInnes .

  • Feature manifold.t_sne.trustworthiness 接受欧几里得以外的指标。 #9775 通过 William de Vazelhes .

  • Fix 修复了中的一个错误 manifold.spectral_embedding 其中频谱的正规化是使用除而不是乘。 #8129 通过 Jan Margeta , Guillaume Lemaitre ,而且 Devansh D. .

  • API Change Feature Deprecate precomputed parameter in function manifold.t_sne.trustworthiness. Instead, the new parameter metric should be used with any compatible metric including 'precomputed', in which case the input matrix X should be a matrix of pairwise distances or squared distances. #9775 by William de Vazelhes.

  • API Change Deprecate precomputed parameter in function manifold.t_sne.trustworthiness. Instead, the new parameter metric should be used with any compatible metric including 'precomputed', in which case the input matrix X should be a matrix of pairwise distances or squared distances. #9775 by William de Vazelhes.

sklearn.metrics#

sklearn.mixture#

sklearn.model_selection#

sklearn.multioutput#

sklearn.naive_bayes#

sklearn.neighbors#

sklearn.neural_network#

sklearn.pipeline#

sklearn.preprocessing#

sklearn.svm#

sklearn.tree#

  • Enhancement 虽然是私有的(因此不能保证API的稳定性), tree._criterion.ClassificationCriteriontree._criterion.RegressionCriterion 现在可以导入和扩展。 #10325 通过 Camil Staps .

  • Fix 修复了中的一个错误 tree.BaseDecisionTreesplitter="best" 当X中的值接近无限时,分裂阈值可能会变得无限。 #10536 通过 Jonathan Ohayon .

  • Fix 修复了中的一个错误 tree.MAE 以确保在计算树木MAE杂质期间使用样本权重。先前的行为可能会导致选择次优分离,因为杂质计算认为所有样本的重量重要性相同。 #11464 通过 John Stott .

sklearn.utils#

多个模块#

杂项#

估计器检查的更改#

这些变化主要影响库开发人员。

代码和文档贡献者#

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

211217613, Aarshay Jain, absolutelyNoWarranty, Adam Greenhall, Adam Kleczewski, Adam Richie-Halford, adelr, AdityaDaflapurkar, Adrin Jalali, Aidan Fitzgerald, aishgrt1, Akash Shivram, Alan Liddell, Alan Yee, Albert Thomas, Alexander Lenail, Alexander-N, Alexandre Boucaud, Alexandre Gramfort, Alexandre Sevin, Alex Egg, Alvaro Perez-Diaz, Amanda, Aman Dalmia, Andreas Bjerre-Nielsen, Andreas Mueller, Andrew Peng, Angus Williams, Aniruddha Dave, annaayzenshtat, Anthony Gitter, Antonio Quinonez, Anubhav Marwaha, Arik Pamnani, Arthur Ozga, Artiem K, Arunava, Arya McCarthy, Attractadore, Aurélien Bellet, Aurélien Geron, Ayush Gupta, Balakumaran Manoharan, Bangda Sun, Barry Hart, Bastian Venthur, Ben Lawson, Benn Roth, Breno Freitas, Brent Yi, brett koonce, Caio Oliveira, Camil Staps, cclauss, Chady Kamar, Charlie Brummitt, Charlie Newey, chris, Chris, Chris Catalfo, Chris Foster, Chris Holdgraf, Christian Braune, Christian Hirsch, Christian Hogan, Christopher Jenness, Clement Joudet, cnx, cwitte, Dallas Card, Dan Barkhorn, Daniel, Daniel Ferreira, Daniel Gomez, Daniel Klevebring, Danielle Shwed, Daniel Mohns, Danil Baibak, Darius Morawiec, David Beach, David Burns, David Kirkby, David Nicholson, David Pickup, Derek, Didi Bar-Zev, diegodlh, Dillon Gardner, Dillon Niederhut, dilutedsauce, dlovell, Dmitry Mottl, Dmitry Petrov, Dor Cohen, Douglas Duhaime, Ekaterina Tuzova, Eric Chang, Eric Dean Sanchez, Erich Schubert, Eunji, Fang-Chieh Chou, FarahSaeed, felix, Félix Raimundo, fenx, filipj8, FrankHui, Franz Wompner, Freija Descamps, frsi, Gabriele Calvo, Gael Varoquaux, Gaurav Dhingra, Georgi Peev, Gil Forsyth, Giovanni Giuseppe Costa, gkevinyen5418, goncalo-rodrigues, Gryllos Prokopis, Guillaume Lemaitre, Guillaume "Vermeille" Sanchez, Gustavo De Mari Pereira, hakaa1, Hanmin Qin, Henry Lin, Hong, Honghe, Hossein Pourbozorg, Hristo, Hunan Rostomyan, iampat, Ivan PANICO, Jaewon Chung, Jake VanderPlas, jakirkham, James Bourbeau, James Malcolm, Jamie Cox, Jan Koch, Jan Margeta, Jan Schlüter, janvanrijn, Jason Wolosonovich, JC Liu, Jeb Bearer, jeremiedbb, Jimmy Wan, Jinkun Wang, Jiongyan Zhang, jjabl, jkleint, Joan Massich, Joël Billaud, Joel Nothman, Johannes Hansen, JohnStott, Jonatan Samoocha, Jonathan Ohayon, Jörg Döpfert, Joris Van den Bossche, Jose Perez-Parras Toledano, josephsalmon, jotasi, jschendel, Julian Kuhlmann, Julien Chaumond, julietcl, Justin Shenk, Karl F, Kasper Primdal Lauritzen, Katrin Leinweber, Kirill, ksemb, Kuai Yu, Kumar Ashutosh, Kyeongpil Kang, Kye Taylor, kyledrogo, Leland McInnes, Léo DS, Liam Geron, Liutong Zhou, Lizao Li, lkjcalc, Loic Esteve, louib, Luciano Viola, Lucija Gregov, Luis Osa, Luis Pedro Coelho, Luke M Craig, Luke Persola, Mabel, Mabel Villalba, Maniteja Nandana, MarkIwanchyshyn, Mark Roth, Markus Müller, MarsGuy, Martin Gubri, martin-hahn, martin-kokos, mathurinm, Matthias Feurer, Max Copeland, Mayur Kulkarni, Meghann Agarwal, Melanie Goetz, Michael A. Alcorn, Minghui Liu, Ming Li, Minh Le, Mohamed Ali Jamaoui, Mohamed Maskani, Mohammad Shahebaz, Muayyad Alsadi, Nabarun Pal, Nagarjuna Kumar, Naoya Kanai, Narendran Santhanam, NarineK, Nathaniel Saul, Nathan Suh, Nicholas Nadeau, P.Eng., AVS, Nick Hoh, Nicolas Goix, Nicolas Hug, Nicolau Werneck, nielsenmarkus11, Nihar Sheth, Nikita Titov, Nilesh Kevlani, Nirvan Anjirbag, notmatthancock, nzw, Oleksandr Pavlyk, oliblum90, Oliver Rausch, Olivier Grisel, Oren Milman, Osaid Rehman Nasir, pasbi, Patrick Fernandes, Patrick Olden, Paul Paczuski, Pedro Morales, Peter, Peter St. John, pierreablin, pietruh, Pinaki Nath Chowdhury, Piotr Szymański, Pradeep Reddy Raamana, Pravar D Mahajan, pravarmahajan, QingYing Chen, Raghav RV, Rajendra arora, RAKOTOARISON Herilalaina, Rameshwar Bhaskaran, RankyLau, Rasul Kerimov, Reiichiro Nakano, Rob, Roman Kosobrodov, Roman Yurchak, Ronan Lamy, rragundez, Rüdiger Busche, Ryan, Sachin Kelkar, Sagnik Bhattacharya, Sailesh Choyal, Sam Radhakrishnan, Sam Steingold, Samuel Bell, Samuel O. Ronsin, Saqib Nizam Shamsi, SATISH J, Saurabh Gupta, Scott Gigante, Sebastian Flennerhag, Sebastian Raschka, Sebastien Dubois, Sébastien Lerique, Sebastin Santy, Sergey Feldman, Sergey Melderis, Sergul Aydore, Shahebaz, Shalil Awaley, Shangwu Yao, Sharad Vijalapuram, Sharan Yalburgi, shenhanc78, Shivam Rastogi, Shu Haoran, siftikha, Sinclert Pérez, SolutusImmensus, Somya Anand, srajan paliwal, Sriharsha Hatwar, Sri Krishna, Stefan van der Walt, Stephen McDowell, Steven Brown, syonekura, Taehoon Lee, Takanori Hayashi, tarcusx, Taylor G Smith, theriley106, Thomas, Thomas Fan, Thomas Heavey, Tobias Madsen, tobycheese, Tom Augspurger, Tom Dupré la Tour, Tommy, Trevor Stephens, Trishnendu Ghorai, Tulio Casagrande, twosigmajab, Umar Farouk Umar, Urvang Patel, Utkarsh Upadhyay, Vadim Markovtsev, Varun Agrawal, Vathsala Achar, Vilhelm von Ehrenheim, Vinayak Mehta, Vinit, Vinod Kumar L, Viraj Mavani, Viraj Navkal, Vivek Kumar, Vlad Niculae, vqean3, Vrishank Bhardwaj, vufg, wallygauze, Warut Vijitbenjaronk, wdevazelhes, Wenhao Zhang, Wes Barnett, Will, William de Vazelhes, Will Rosenfeld, Xin Xiong, Yiming (Paul) Li, ymazari, Yufeng, Zach Griffith, Zé Vinícius, Zhenqing Hu, Zhiqing Xiao, Zijie (ZJ) Poh