版本 0.14#
版本 0.14#
2013年8月7日
变更日志#
可以使用转换器
preprocessing.Imputer
(由Nicolas Trésegnie贡献)对稀疏和密集矩阵中的缺失值进行插补。决策树的核心实现已从头开始重写,从而在所有基于树的估计器中实现更快的树归纳和更低的内存消耗。由Gilles Louppe贡献。
添加了
ensemble.AdaBoostClassifier
和ensemble.AdaBoostRegressor
,由Noel Dawe和Gilles Louppe贡献。有关详细信息和示例,请参阅用户指南的AdaBoost部分。添加了
grid_search.RandomizedSearchCV
和grid_search.ParameterSampler
用于随机超参数优化。由Andreas Müller贡献。添加了双聚类算法(
sklearn.cluster.bicluster.SpectralCoclustering
和sklearn.cluster.bicluster.SpectralBiclustering
)、数据生成方法(sklearn.datasets.make_biclusters
和sklearn.datasets.make_checkerboard
)和评分指标(sklearn.metrics.consensus_score
)。由Kemal Eren贡献。由Justin Vincent、Lars Buitinck、Subhodeep Moitra和Olivier Grisel贡献了Python 3支持。所有测试现在都在Python 3.3下通过。
能够在
linear_model.Ridge
中为每个目标传递一个惩罚项(alpha值),由@eickenberg和Mathieu Blondel贡献。修复了
sklearn.linear_model.stochastic_gradient.py
的L2正则化问题(实际意义较小)。由Norbert Crombach和Mathieu Blondel贡献。在文档中添加了Andreas Müller的机器学习速查表(适用于scikit-learn)的交互式版本。请参阅选择合适的估计器。由Jaques Grobler贡献。
grid_search.GridSearchCV
和cross_validation.cross_val_score
现在支持使用高级评分函数,例如ROC曲线下面积和f-beta分数。有关详细信息,请参阅scoring参数:定义模型评估规则。由Andreas Müller和Lars Buitinck贡献。将sklearn.metrics
中的函数作为score_func
传递已弃用。多标签分类输出现在受
metrics.accuracy_score
、metrics.zero_one_loss
、metrics.f1_score
、metrics.fbeta_score
、metrics.classification_report
、metrics.precision_score
和metrics.recall_score
支持,由Arnaud Joly贡献。Arnaud Joly添加了两个新的指标
metrics.hamming_loss
和metrics.jaccard_similarity_score
,并支持多标签。Jochen Wersdörfer和Roman Sinayev改进了
feature_extraction.text.CountVectorizer
和feature_extraction.text.TfidfVectorizer
的速度和内存使用。feature_extraction.text.CountVectorizer
和feature_extraction.text.TfidfVectorizer
中的min_df
参数,以前默认为2,现已重置为1,以避免初学者在处理小型文档集时出现意外情况(空词汇表)。但在实际应用中,仍然建议使用至少2的值。svm.LinearSVC
、linear_model.SGDClassifier
和linear_model.SGDRegressor
现在具有sparsify
方法,该方法可将其coef_
转换为稀疏矩阵,这意味着使用这些估计器训练的已存储模型可以变得更加紧凑。当
linear_model.SGDClassifier
在对数损失或修正Huber损失下训练时,现在会生成多类别概率估计。Martin Luessi在网站上的示例代码中添加了指向文档的超链接。
Andreas Müller修复了
preprocessing.MinMaxScaler
中的一个错误,该错误会导致在非默认feature_range
设置下特征缩放不正确。tree.DecisionTreeClassifier
、tree.DecisionTreeRegressor
和所有派生的集成估计器中的max_features
现在支持百分比值。由Gilles Louppe完成。Nelle Varoquaux改进了
isotonic.IsotonicRegression
的性能。Arnaud Joly添加了
metrics.accuracy_score
的normalize选项,可以返回正确分类样本的比例或数量。添加了
metrics.log_loss
,用于计算对数损失,也称为交叉熵损失。由Jochen Wersdörfer和Lars Buitinck完成。修复了导致
ensemble.AdaBoostClassifier
输出概率不正确的错误。特征选择器现在共享一个mixin,提供一致的
transform
、inverse_transform
和get_support
方法。由Joel Nothman完成。现在通常可以对拟合的
grid_search.GridSearchCV
或grid_search.RandomizedSearchCV
进行pickle操作。由Joel Nothman完成。Joel Nothman重构并向量化了
metrics.roc_curve
和metrics.precision_recall_curve
的实现。新的估计器
sklearn.decomposition.TruncatedSVD
使用SVD对稀疏矩阵进行降维,可用于潜在语义分析(LSA)。由Lars Buitinck完成。添加了关于文本数据核心外学习的独立示例文本文档的核外分类。由Eustache Diemert完成。
sklearn.decomposition.RandomizedPCA
的默认组件数量现在已正确记录为n_features
。这是默认行为,因此使用它的程序将继续像以前一样工作。sklearn.cluster.KMeans
现在在稀疏数据上的拟合速度快了好几个数量级(加速取决于稀疏性)。由Lars Buitinck完成。Denis Engemann和Alexandre Gramfort减少了FastICA的内存占用。
sklearn.ensemble.gradient_boosting
中的详细输出现在使用列格式,并降低打印进度的频率。它还会显示剩余时间。作者:Peter Prettenhofer。sklearn.ensemble.gradient_boosting
提供袋外改进值oob_improvement_
,而不是袋外评分用于模型选择。添加了一个示例,展示如何使用袋外估计来选择树的数量。作者:Peter Prettenhofer。现在,大多数指标都支持多类分类的字符串标签。作者:Arnaud Joly 和 Lars Buitinck。
新的OrthogonalMatchingPursuitCV类。作者:Alexandre Gramfort 和 Vlad Niculae。
修复了
sklearn.covariance.GraphLassoCV
中的一个错误:现在,当给出值列表时,'alphas'参数按预期工作。作者:Philippe Gervais。修复了
sklearn.covariance.GraphLassoCV
中一个重要的错误,该错误阻止了使用CV对象提供的所有折叠(仅使用了前3个)。因此,当提供CV对象时,与以前的版本相比,执行时间可能会大大增加(错误结果现在是正确的)。作者:Philippe Gervais。cross_validation.cross_val_score
和grid_search
模块现在已通过多输出数据测试。作者:Arnaud Joly。datasets.make_multilabel_classification
现在可以以标签指示器多标签格式返回输出。作者:Arnaud Joly。K近邻算法,
neighbors.KNeighborsRegressor
和neighbors.RadiusNeighborsRegressor
,以及半径近邻算法,neighbors.RadiusNeighborsRegressor
和neighbors.RadiusNeighborsClassifier
支持多输出数据。作者:Arnaud Joly。现在可以控制基于LibSVM的估计器(
svm.SVC
,svm.NuSVC
,svm.OneClassSVM
,svm.SVR
,svm.NuSVR
)中的随机状态。这对于确保使用probability=True
训练的分类器的概率估计的一致性非常有用。作者:Vlad Niculae。通过添加
partial_fit
方法,为离散朴素贝叶斯分类器sklearn.naive_bayes.MultinomialNB
和sklearn.naive_bayes.BernoulliNB
添加了out-of-core学习支持。作者:Olivier Grisel。新的网站设计和导航。作者:Gilles Louppe,Nelle Varoquaux,Vincent Michel和Andreas Müller。
改进了关于多类、多标签和多输出分类的文档。作者:Yannick Schwartz和Arnaud Joly。
改进了
sklearn.metrics
模块的输入和错误处理。作者:Arnaud Joly和Joel Nothman。优化了
hmm
模块的速度。作者:Mikhail Korobov显著提高了
sklearn.cluster.DBSCAN
的速度。作者:cleverless
API更改摘要#
auc_score
已重命名为metrics.roc_auc_score
。使用
sklearn.test()
测试scikit-learn已弃用。请使用命令行中的nosetests sklearn
。tree.DecisionTreeClassifier
、tree.DecisionTreeRegressor
和所有派生的集成估计器中的特征重要性现在在访问feature_importances_
属性时动态计算。不再需要设置compute_importances=True
。作者:Gilles Louppe。linear_model.lasso_path
和linear_model.enet_path
可以返回与其结果相同的格式linear_model.lars_path
。这是通过将return_models
参数设置为False
来完成的。作者:Jaques Grobler和Alexandre Gramfort已将
grid_search.IterGrid
重命名为grid_search.ParameterGrid
。修复了
KFold
中的一个bug,该bug在某些情况下会导致类不平衡。由Alexandre Gramfort和Tadej Janež完成。已重构
sklearn.neighbors.BallTree
,并添加了具有相同接口的sklearn.neighbors.KDTree
。球树现在可以与各种距离度量一起使用。这两个类都有许多新方法,包括单树和双树查询、广度优先和深度优先搜索,以及更高级的查询,例如核密度估计和二点相关函数。由Jake Vanderplas完成。已移除对邻居查询中
scipy.spatial.cKDTree
的支持,并用新的sklearn.neighbors.KDTree
类替换了其功能。已添加
sklearn.neighbors.KernelDensity
,它使用各种核进行高效的核密度估计。sklearn.decomposition.KernelPCA
现在始终返回具有n_components
个分量的输出,除非将新的参数remove_zero_eig
设置为True
。此新行为与始终记录的核PCA方式一致;以前,对所有数据都隐式地执行了具有零特征值的成分的移除。在
sklearn.linear_model.RidgeCV
中,gcv_mode="auto"
不再尝试对密集稀疏矩阵执行SVD。sklearn.decomposition.RandomizedPCA
中的稀疏矩阵支持现已弃用,取而代之的是新的TruncatedSVD
。cross_validation.KFold
和cross_validation.StratifiedKFold
现在强制执行n_folds >= 2
,否则将引发ValueError
。由Olivier Grisel完成。datasets.load_files
的charset
和charset_errors
参数已重命名为encoding
和decode_errors
。sklearn.ensemble.GradientBoostingRegressor
和sklearn.ensemble.GradientBoostingClassifier
中的属性oob_score_
已弃用,并已替换为oob_improvement_
。OrthogonalMatchingPursuit中的属性已弃用(copy_X,Gram,…)并且为了保持一致性,precompute_gram已重命名为precompute。参见 #2224。
sklearn.preprocessing.StandardScaler
现在将整数输入转换为浮点数,并发出警告。以前它会对密集整数输入进行四舍五入。sklearn.multiclass.OneVsRestClassifier
现在具有decision_function
方法。只要基础估计器实现了decision_function
方法,这将返回每个样本到每个类的决策边界的距离。由Kyle Kastner完成。更好的输入验证,针对y的意外形状发出警告。
人员#
按提交次数列出的 0.14 版本贡献者列表。
277 Gilles Louppe
245 Lars Buitinck
187 Andreas Mueller
124 Arnaud Joly
112 Jaques Grobler
109 Gael Varoquaux
107 Olivier Grisel
102 Noel Dawe
99 Kemal Eren
79 Joel Nothman
75 Jake VanderPlas
73 Nelle Varoquaux
71 Vlad Niculae
65 Peter Prettenhofer
64 Alexandre Gramfort
54 Mathieu Blondel
38 Nicolas Trésegnie
35 eustache
27 Denis Engemann
25 Yann N. Dauphin
19 Justin Vincent
17 Robert Layton
15 Doug Coleman
14 Michael Eickenberg
13 Robert Marchman
11 Fabian Pedregosa
11 Philippe Gervais
10 Jim Holmström
10 Tadej Janež
10 syhw
9 Mikhail Korobov
9 Steven De Gryze
8 sergeyf
7 Ben Root
7 Hrishikesh Huilgolkar
6 Kyle Kastner
6 Martin Luessi
6 Rob Speer
5 Federico Vaggi
5 Raul Garreta
5 Rob Zinkov
4 Ken Geis
3 A. Flaxman
3 Denton Cockburn
3 Dougal Sutherland
3 Ian Ozsvald
3 Johannes Schönberger
3 Robert McGibbon
3 Roman Sinayev
3 Szabo Roland
2 Diego Molla
2 Imran Haque
2 Jochen Wersdörfer
2 Sergey Karayev
2 Yannick Schwartz
2 jamestwebber
1 Abhijeet Kolhe
1 Alexander Fabisch
1 Bastiaan van den Berg
1 Benjamin Peterson
1 Daniel Velkov
1 Fazlul Shahriar
1 Felix Brockherde
1 Félix-Antoine Fortin
1 Harikrishnan S
1 Jack Hale
1 JakeMick
1 James McDermott
1 John Benediktsson
1 John Zwinck
1 Joshua Vredevoogd
1 Justin Pati
1 Kevin Hughes
1 Kyle Kelley
1 Matthias Ekman
1 Miroslav Shubernetskiy
1 Naoki Orii
1 Norbert Crombach
1 Rafael Cunha de Almeida
1 Rolando Espinoza La fuente
1 Seamus Abshere
1 Sergey Feldman
1 Sergio Medina
1 Stefano Lattarini
1 Steve Koch
1 Sturla Molden
1 Thomas Jarosch
1 Yaroslav Halchenko