版本 0.16#

版本 0.16.1#

2015年4月14日

变更日志#

错误修复#

版本 0.16#

2015年3月26日

亮点#

  • 速度改进(尤其是在 cluster.DBSCAN 中),降低了内存需求,修复了错误并改进了默认设置。

  • linear_model.LogisticRegressionCV 中添加了多项式逻辑回归和路径算法。

  • 通过 decomposition.IncrementalPCA 实现 PCA 的 Out-of-core 学习。

  • 使用 calibration.CalibratedClassifierCV 对分类器进行概率校准。

  • cluster.Birch 用于大规模数据集的聚类方法。

  • neighbors.LSHForest 中使用局部敏感哈希森林进行可扩展的近似最近邻搜索。

  • 改进了错误消息,并改进了使用格式错误的输入数据时的验证。

  • 更强大的 pandas 数据框集成。

变更日志#

新功能#

增强功能#

文档改进#

错误修复#

API 变更概要#

  • GridSearchCVcross_val_score 以及其他元估计器不再将 pandas DataFrame 转换为数组,允许在自定义估计器中进行 DataFrame 特定的操作。

  • multiclass.fit_ovrmulticlass.predict_ovrpredict_proba_ovrmulticlass.fit_ovomulticlass.predict_ovomulticlass.fit_ecocmulticlass.predict_ecoc 已弃用。请改用底层估计器。

  • 最近邻估计器过去可以接受任意关键字参数并将这些参数传递给它们的距离度量。scikit-learn 0.18 将不再支持此功能;请改用 metric_params 参数。

  • n_jobs 参数已从拟合方法移至

    LinearRegression 类的构造函数。

  • multiclass.OneVsRestClassifierpredict_proba 方法现在在多类别情况下为每个样本返回两个概率;这与其他估计器和方法文档一致,但之前的版本意外地只返回了正概率。由 Will Lamond 和 Lars Buitinck 修复。

  • linear_model.ElasticNetlinear_model.Lassoprecompute 的默认值更改为 False。发现当 n_samples > n_features 时,将 precompute 设置为“auto”会更慢,因为 Gram 矩阵的计算非常耗时,并且超过了仅为一个 alpha 拟合 Gram 的好处。precompute="auto" 现已弃用,将在 0.18 中移除。由 Manoj Kumar 完成。

  • linear_model.enet_path 中公开 positive 选项,该选项将系数限制为正数。由 Manoj Kumar 完成。

  • 在执行多类别或多标签(即非二元)分类时,用户现在应该为 sklearn.metrics.f1_scoresklearn.metrics.fbeta_scoresklearn.metrics.recall_scoresklearn.metrics.precision_score 提供显式的 average 参数。由 Joel Nothman 完成。

  • 交叉验证的 scoring 参数现在接受 'f1_micro''f1_macro''f1_weighted''f1' 现在仅用于二元分类。类似的更改适用于 'precision''recall'。由 Joel Nothman 完成。

  • linear_model.enet_pathlinear_model.lasso_path 中的 fit_interceptnormalizereturn_models 参数已被移除。它们自 0.14 版本起已被弃用。

  • 从现在起,所有估计器在拟合模型之前调用任何类似 predict 的方法时,都将统一引发 NotFittedError。作者:Raghav RV

  • 对输入数据验证进行了重构,以实现更一致的输入验证。 check_arrays 函数被 check_arraycheck_X_y 替换。作者:Andreas Müller

  • sklearn.neighbors.NearestNeighbors 及其相关类中,允许在 radius_neighborskneighborskneighbors_graphradius_neighbors_graph 方法中使用 X=None。如果设置为 None,则对于每个样本,这将避免将样本本身设置为第一个最近邻。作者:Manoj Kumar

  • neighbors.kneighbors_graphneighbors.radius_neighbors_graph 中添加参数 include_self,该参数必须由用户显式设置。如果设置为 True,则样本本身将被视为第一个最近邻。

  • thresh 参数已弃用,在 GMMDPGMMVBGMM 中,建议使用新的 tol 参数。详情请参阅“增强功能”部分。作者:Hervé Bredin

  • 估计器将尽可能将 dtype 为 object 的输入视为数值型。作者:Andreas Müller

  • 当对空数据(少于 1 个样本或对于二维输入少于 1 个特征)进行拟合时,估计器现在会一致地引发 ValueError。作者:Olivier Grisel

  • linear_model.SGDClassifierlinear_model.SGDRegressorlinear_model.Perceptronlinear_model.PassiveAggressiveClassifierlinear_model.PassiveAggressiveRegressorshuffle 选项现在默认为 True

  • cluster.DBSCAN 现在使用确定性初始化。 random_state 参数已弃用。作者:Erich Schubert

代码贡献者#

A. Flaxman, Aaron Schumacher, Aaron Staple, abhishek thakur, Akshay, akshayah3, Aldrian Obaja, Alexander Fabisch, Alexandre Gramfort, Alexis Mignon, Anders Aagaard, Andreas Mueller, Andreas van Cranenburgh, Andrew Tulloch, Andrew Walker, Antony Lee, Arnaud Joly, banilo, Barmaley.exe, Ben Davies, Benedikt Koehler, bhsu, Boris Feld, Borja Ayerdi, Boyuan Deng, Brent Pedersen, Brian Wignall, Brooke Osborn, Calvin Giles, Cathy Deng, Celeo, cgohlke, chebee7i, Christian Stade-Schuldt, Christof Angermueller, Chyi-Kwei Yau, CJ Carey, Clemens Brunner, Daiki Aminaka, Dan Blanchard, danfrankj, Danny Sullivan, David Fletcher, Dmitrijs Milajevs, Dougal J. Sutherland, Erich Schubert, Fabian Pedregosa, Florian Wilhelm, floydsoft, Félix-Antoine Fortin, Gael Varoquaux, Garrett-R, Gilles Louppe, gpassino, gwulfs, Hampus Bengtsson, Hamzeh Alsalhi, Hanna Wallach, Harry Mavroforakis, Hasil Sharma, Helder, Herve Bredin, Hsiang-Fu Yu, Hugues SALAMIN, Ian Gilmore, Ilambharathi Kanniah, Imran Haque, isms, Jake VanderPlas, Jan Dlabal, Jan Hendrik Metzen, Jatin Shah, Javier López Peña, jdcaballero, Jean Kossaifi, Jeff Hammerbacher, Joel Nothman, Jonathan Helmus, Joseph, Kaicheng Zhang, Kevin Markham, Kyle Beauchamp, Kyle Kastner, Lagacherie Matthieu, Lars Buitinck, Laurent Direr, leepei, Loic Esteve, Luis Pedro Coelho, Lukas Michelbacher, maheshakya, Manoj Kumar, Manuel, Mario Michael Krell, Martin, Martin Billinger, Martin Ku, Mateusz Susik, Mathieu Blondel, Matt Pico, Matt Terry, Matteo Visconti dOC, Matti Lyra, Max Linke, Mehdi Cherti, Michael Bommarito, Michael Eickenberg, Michal Romaniuk, MLG, mr.Shu, Nelle Varoquaux, Nicola Montecchio, Nicolas, Nikolay Mayorov, Noel Dawe, Okal Billy, Olivier Grisel, Óscar Nájera, Paolo Puggioni, Peter Prettenhofer, Pratap Vardhan, pvnguyen, queqichao, Rafael Carrascosa, Raghav R V, Rahiel Kasim, Randall Mason, Rob Zinkov, Robert Bradshaw, Saket Choudhary, Sam Nicholls, Samuel Charron, Saurabh Jha, sethdandridge, sinhrks, snuderl, Stefan Otte, Stefan van der Walt, Steve Tjoa, swu, Sylvain Zimmer, tejesh95, terrycojones, Thomas Delteil, Thomas Unterthiner, Tomas Kazmar, trevorstephens, tttthomasssss, Tzu-Ming Kuo, ugurcaliskan, ugurthemaster, Vinayak Mehta, Vincent Dubourg, Vjacheslav Murashkin, Vlad Niculae, wadawson, Wei Xue, Will Lamond, Wu Jiang, x0l, Xinfan Meng, Yan Yi, Yu-Chin