版本 0.18#
警告
Scikit-learn 0.18 是最后一个支持 Python 2.6 的主要 scikit-learn 版本。后续版本的 scikit-learn 将需要 Python 2.7 或更高版本。
版本 0.18.2#
2017年6月20日
变更日志#
代码贡献者#
Aman Dalmia, Loic Esteve, Nate Guerin, Sergei Lebedev
版本 0.18.1#
2016年11月11日
变更日志#
增强功能#
利用 numpy.random.permutation 提升了
sample_without_replacement
的速度,在大多数情况下。因此,对于固定的随机状态,此版本中的样本可能会有所不同。受影响的估计器这也影响了
datasets.make_classification
方法。
错误修复#
修复
min_grad_norm
和n_iter_without_progress
参数未被manifold.TSNE
使用的问题。 #6497 由 Sebastian Säger 完成修复了当
svm.SVC
中decision_function_shape
为ovr
时 svm 决策值的问题。svm.SVC
的 decision_function 从 0.17.0 版本到 0.18.0 版本都是不正确的。 #7724 由 Bing Tian Dai 完成discriminant_analysis.LinearDiscriminantAnalysis
的属性explained_variance_ratio
使用 SVD 和特征值求解器计算的结果现在长度相同了。 #7632 由 JPFrancoia 完成修复了 单变量特征选择 中评分函数不接受多标签目标的问题。 #7676 由 Mohammed Affan 完成
修复了在
feature_selection.SelectFromModel
上多次调用fit
时设置参数的问题。 #7756 由 Andreas Müller 完成修复了
multiclass.OneVsRestClassifier
的partial_fit
方法中,当partial_fit
中使用的类别数少于数据中类别总数的问题。 #7786 由 Srivatsan Ramesh 完成修复了
calibration.CalibratedClassifierCV
中每个数据类的概率之和不为 1 的问题,并且CalibratedClassifierCV
现在可以处理训练集类别数少于数据总类别数的情况。 #7799 由 Srivatsan Ramesh 完成修复了
sklearn.feature_selection.SelectFdr
没有完全实现 Benjamini-Hochberg 程序的错误。之前它可能选择的特征少于应有的数量。 #7490 由 Peng Meng 完成。sklearn.manifold.LocallyLinearEmbedding
现在可以正确处理整数输入。 #6282 由 Jake Vanderplas 完成。基于树的分类器和回归器的
min_weight_fraction_leaf
参数,如果未将sample_weight
参数传递给fit
函数,现在默认情况下假设样本权重一致。之前,此参数会被静默忽略。#7301 由 Nelson Liu贡献。当
n_features > n_samples
时,linear_model.RidgeCV
在中心化数据上存在数值问题。#6178 由 Bertrand Thirion贡献。树分割标准类的克隆/pickle操作现在内存安全。#7680 由 Ibraim Ganiev贡献。
修复了
decomposition.NMF
在transform()
中设置其n_iters_
属性的错误。#7553 由 Ekaterina Krivich贡献。sklearn.linear_model.LogisticRegressionCV
现在可以正确处理字符串标签。#5874 由 Raghav RV贡献。修复了当
stratify
是字符串标签列表时,sklearn.model_selection.train_test_split
引发错误的bug。#7593 由 Raghav RV贡献。修复了由于
np.ma.MaskedArray
中的pickle错误导致sklearn.model_selection.GridSearchCV
和sklearn.model_selection.RandomizedSearchCV
不可pickle的bug。#7594 由 Raghav RV贡献。sklearn.model_selection
中的所有交叉验证工具现在允许对cv
参数使用一次性交叉验证分割器。 此外,非确定性交叉验证分割器(其中多次调用split
会产生不同的分割)也可以用作cv
参数。sklearn.model_selection.GridSearchCV
将在交叉验证分割器第一次split
调用产生的分割上对每个参数设置进行交叉验证。#7660 由 Raghav RV贡献。修复了
preprocessing.MultiLabelBinarizer.fit_transform
返回无效CSR矩阵的bug。#7750 由 CJ Carey贡献。修复了
metrics.pairwise.cosine_distances
可能返回小的负距离的bug。#7732 由 Artsion贡献。
API 变更概要#
树和森林
基于树的分类器和回归器的
min_weight_fraction_leaf
参数,如果未将sample_weight
参数传递给fit
函数,现在默认情况下假设样本权重一致。之前,此参数会被静默忽略。#7301 由 Nelson Liu贡献。树分割标准类的克隆/pickle操作现在内存安全。#7680 由 Ibraim Ganiev贡献。
线性、核化及相关模型
discriminant_analysis.LinearDiscriminantAnalysis
的explained_variance_ratio
长度对于特征值和SVD求解器都发生了变化。该属性现在长度为min(n_components, n_classes - 1)。#7632 由 JPFrancoia贡献。当
n_features > n_samples
时,linear_model.RidgeCV
在中心化数据上存在数值问题。#6178 由 Bertrand Thirion贡献。
0.18 版本#
2016年9月28日
模型选择增强和API变更#
model_selection 模块
新的模块
sklearn.model_selection
,它将以前sklearn.cross_validation
、sklearn.grid_search
和sklearn.learning_curve
的功能组合在一起,引入了嵌套交叉验证和使用Pandas更好地处理参数搜索等新可能性。许多方面将保持不变,但也有一些关键差异。请阅读以下内容以了解有关更改的更多信息。
支持嵌套交叉验证的数据无关CV分割器
在
sklearn.model_selection
中定义的新交叉验证分割器不再使用任何依赖于数据的参数(例如y
)进行初始化。相反,它们公开了一个split
方法,该方法接收数据并为不同的分割生成生成器。此更改使得可以使用交叉验证分割器执行嵌套交叉验证,这由
model_selection.GridSearchCV
和model_selection.RandomizedSearchCV
工具辅助完成。增强的 cv_results_ 属性
新的
cv_results_
属性(model_selection.GridSearchCV
和model_selection.RandomizedSearchCV
)取代了grid_scores_
属性,它是一个包含一维数组的字典,每个数组的元素对应于参数设置(即搜索候选)。cv_results_
字典可以很容易地导入到pandas
中,作为一个DataFrame
来探索搜索结果。cv_results_
数组包含每个交叉验证分割的得分(键例如'split0_test_score'
),以及它们的平均值('mean_test_score'
)和标准差('std_test_score'
)。搜索候选的排名(基于它们的平均交叉验证得分)可在
cv_results_['rank_test_score']
中找到。每个参数的参数值分别存储为 NumPy 掩码对象数组。如果对应的参数不适用,则该搜索候选的值将被掩码。此外,所有参数字典的列表存储在
cv_results_['params']
中。参数 n_folds 和 n_iter 重命名为 n_splits
一些参数名称已更改:新的
model_selection.KFold
、model_selection.GroupKFold
(有关名称更改,请参见下文)和model_selection.StratifiedKFold
中的n_folds
参数现已重命名为n_splits
。model_selection.ShuffleSplit
、新类model_selection.GroupShuffleSplit
和model_selection.StratifiedShuffleSplit
中的n_iter
参数现已重命名为n_splits
。接受组标签和数据的分割器类的重命名
交叉验证分割器
LabelKFold
、LabelShuffleSplit
、LeaveOneLabelOut
和LeavePLabelOut
已分别重命名为model_selection.GroupKFold
、model_selection.GroupShuffleSplit
、model_selection.LeaveOneGroupOut
和model_selection.LeavePGroupsOut
。请注意
model_selection.LeavePGroupsOut
从单数形式变为复数形式。拟合参数标签重命名为 groups
新重命名的分割器
model_selection.GroupKFold
、model_selection.LeaveOneGroupOut
、model_selection.LeavePGroupsOut
、model_selection.GroupShuffleSplit
的split
方法中的labels
参数已重命名为groups
,遵循其类名的新命名法。参数 n_labels 重命名为 n_groups
新重命名的
model_selection.LeavePGroupsOut
中的参数n_labels
已更改为n_groups
。训练得分和计时信息
cv_results_
还包括每个交叉验证分割的训练得分(键例如'split0_train_score'
),以及它们的平均值('mean_train_score'
)和标准差('std_train_score'
)。若要避免评估训练得分的成本,请设置return_train_score=False
。此外,在所有交叉验证分割中,模型分割、训练和评分所花费时间的平均值和标准差分别可在键
'mean_time'
和'std_time'
中找到。
更新日志#
新功能#
分类器和回归器
高斯过程模块已重新实现,现在通过
gaussian_process.GaussianProcessClassifier
和gaussian_process.GaussianProcessRegressor
提供分类和回归估计器。新实现支持内核工程、基于梯度的超参数优化或从GP先验和GP后验采样函数等。提供了大量的文档和示例。由Jan Hendrik Metzen完成。添加了新的监督学习算法:多层感知器 #3204,由Issam H. Laradji完成。
添加了
linear_model.HuberRegressor
,这是一种对异常值具有鲁棒性的线性模型。#5291,由Manoj Kumar完成。添加了元估计器
multioutput.MultiOutputRegressor
。它通过为每个输出拟合一个回归器来将单输出回归器转换为多输出回归器。由Tim Head完成。
其他估计器
新的
mixture.GaussianMixture
和mixture.BayesianGaussianMixture
取代了以前的混合模型,采用更快的推理方法以获得更可靠的结果。#7295,由Wei Xue和Thierry Guillemot完成。decomposition.RandomizedPCA
类现在被分解为decomposition.PCA
,可以通过参数svd_solver='randomized'
调用。'randomized'
的n_iter
默认值已更改为4。通过svd_solver='full'
可以恢复PCA的旧行为。另一个求解器调用arpack
并执行截断(非随机)SVD。默认情况下,将根据输入的大小和请求的组件数量选择最佳求解器。#5299,由Giorgio Patrini完成。添加了两个用于互信息估计的函数:
feature_selection.mutual_info_classif
和feature_selection.mutual_info_regression
。这些函数可以用在feature_selection.SelectKBest
和feature_selection.SelectPercentile
中作为评分函数。由Andrea Bravi和Nikolay Mayorov完成。添加了
ensemble.IsolationForest
类,用于基于随机森林的异常检测。由Nicolas Goix完成。向
cluster.KMeans
添加了algorithm="elkan"
,实现了Elkan的快速K-Means算法。由Andreas Müller完成。
模型选择和评估
添加了
metrics.fowlkes_mallows_score
,即Fowlkes Mallows指数,用于衡量一组点的两种聚类的相似性。由Arnaud Fouchet和Thierry Guillemot完成。添加了
metrics.calinski_harabaz_score
,用于计算Calinski和Harabaz得分,以评估一组点的聚类结果。由Arnaud Fouchet和Thierry Guillemot完成。添加了新的交叉验证分割器
model_selection.TimeSeriesSplit
来处理时间序列数据。#6586,由YenChen Lin完成。交叉验证迭代器已被
sklearn.model_selection
中提供的交叉验证分割器取代,允许嵌套交叉验证。有关详细信息,请参阅模型选择增强和API更改。#4294,由Raghav RV完成。
增强功能#
树和集成
为
tree.DecisionTreeRegressor
添加了一个新的分割准则,即平均绝对误差。此准则也可以用于ensemble.ExtraTreesRegressor
、ensemble.RandomForestRegressor
和梯度提升估计器。#6667,由Nelson Liu完成。为决策树增长添加了基于加权杂质的提前停止准则。#6954 由 Nelson Liu 完成。
随机森林、ExtraTrees 和决策树估计器现在具有一个名为
decision_path
的方法,该方法返回树中样本的决策路径。由 Arnaud Joly 完成。添加了一个新的示例,揭示了决策树的结构。由 Arnaud Joly 完成。
随机森林、ExtraTrees、决策树和梯度提升估计器接受参数
min_samples_split
和min_samples_leaf
,它们可以作为训练样本的百分比提供。由 yelite 和 Arnaud Joly 完成。梯度提升估计器接受参数
criterion
,用于指定在构建的决策树中使用的分割准则。#6667 由 Nelson Liu 完成。降低了
ensemble.bagging.BaseBagging
及其继承类(即ensemble.BaggingClassifier
、ensemble.BaggingRegressor
和ensemble.IsolationForest
)的内存占用(有时大幅降低),方法是仅在需要时动态生成属性estimators_samples_
。由 David Staub 完成。为
ensemble.VotingClassifier
添加了n_jobs
和sample_weight
参数,以便并行拟合底层估计器。#5805 由 Ibraim Ganiev 完成。
线性、核化及相关模型
在
linear_model.LogisticRegression
中,SAG 求解器现在可在多项式情况下使用。#5251 由 Tom Dupre la Tour 完成。linear_model.RANSACRegressor
、svm.LinearSVC
和svm.LinearSVR
现在支持sample_weight
。由 Imaculate 完成。为
linear_model.RANSACRegressor
添加了参数loss
,用于测量每次试验中样本的误差。由 Manoj Kumar 完成。等距回归 (
isotonic.IsotonicRegression
) 的样本外事件预测现在快得多(在使用合成数据的测试中快了 1000 多倍)。由 Jonathan Arfa 完成。等距回归 (
isotonic.IsotonicRegression
) 现在使用更好的算法来避免在病态情况下出现O(n^2)
行为,并且通常也更快 (##6691)。由 Antony Lee 完成。naive_bayes.GaussianNB
现在通过参数priors
接受与数据无关的类先验概率。由 Guillaume Lemaitre 完成。linear_model.ElasticNet
和linear_model.Lasso
现在可以使用np.float32
输入数据,而无需将其转换为np.float64
。这有助于降低内存消耗。#6913 由 YenChen Lin 完成。semi_supervised.LabelPropagation
和semi_supervised.LabelSpreading
现在除了字符串knn
和rbf
之外,还可以接受任意的核函数。#5762 由 Utkarsh Upadhyay 完成。
分解、流形学习和聚类
在
decomposition.NMF
中添加了inverse_transform
函数,用于计算原始形状的数据矩阵。由 Anish Shah 完成。cluster.KMeans
和cluster.MiniBatchKMeans
现在可以处理np.float32
和np.float64
输入数据,无需进行类型转换。这允许通过使用np.float32
来减少内存消耗。 #6846 由 Sebastian Säger 和 YenChen Lin 完成。
预处理和特征选择
preprocessing.RobustScaler
现在接受quantile_range
参数。 #5929 由 Konstantin Podshumok 完成。feature_extraction.FeatureHasher
现在接受字符串值。 #6173 由 Ryad Zenine 和 Devashish Deshpande 完成。现在可以通过
kw_args
参数向preprocessing.FunctionTransformer
中的func
提供关键字参数。由 Brian McFee 完成。feature_selection.SelectKBest
和feature_selection.SelectPercentile
现在接受以 X, y 作为输入并仅返回分数的评分函数。由 Nikolay Mayorov 完成。
模型评估和元估计器
multiclass.OneVsOneClassifier
和multiclass.OneVsRestClassifier
现在支持partial_fit
。由 Asish Panda 和 Philipp Dowling 完成。添加了使用
set_params
接口(支持sklearn.grid_search
)替换或禁用pipeline.Pipeline
和pipeline.FeatureUnion
组件的支持。参见 使用 Pipeline 和 GridSearchCV 选择降维。由 Joel Nothman 和 Robert McGibbon 完成。model_selection.GridSearchCV
(以及model_selection.RandomizedSearchCV
)的新cv_results_
属性可以轻松地导入到 pandas 中作为DataFrame
。更多信息请参考 模型选择增强和 API 更改。 #6697 由 Raghav RV 完成。model_selection.cross_val_predict
的泛化。可以传递诸如predict_proba
之类的函数名称,以便在交叉验证框架中使用,而不是默认的predict
。由 Ori Ziv 和 Sears Merritt 完成。每个搜索候选的训练分数和训练时间以及随后的评分时间现在都可以在
cv_results_
字典中找到。更多信息请参考 模型选择增强和 API 更改。 #7325 由 Eugene Chen 和 Raghav RV 完成。
指标
在
metrics.log_loss
中添加了labels
标志,以便在y_true
和y_pred
中的类别数量不同时显式提供标签。 #7239 由 Hong Guangguo 在 Mads Jensen 和 Nelson Liu 的帮助下完成。在聚类评估(
metrics.cluster.supervised
)中支持稀疏列联矩阵,以便扩展到大量聚类。 #7419 由 Gregory Stupp 和 Joel Nothman 完成。在
metrics.matthews_corrcoef
中添加了sample_weight
参数。由 Jatin Shah 和 Raghav RV 完成。通过使用向量化操作来加速
metrics.silhouette_score
。作者:Manoj Kumar。向
metrics.confusion_matrix
添加sample_weight
参数。作者:Bernardo Stein。
其他改进
向
feature_selection.RFECV
添加n_jobs
参数,以便并行计算测试折叠上的分数。作者:Manoj Kumar代码库不包含C/C++ Cython生成的代码文件:这些文件在构建过程中生成。发行版软件包仍将包含生成的C/C++文件。作者:Arthur Mensch。
通过支持Cython融合类型,减少了
utils.sparse_func.mean_variance_axis
和utils.sparse_func.incr_mean_variance_axis
中32位浮点输入数组的内存使用量。作者:YenChen Lin。ignore_warnings
现在接受一个类别参数,以便仅忽略指定类型的警告。作者:Thierry Guillemot。向
datasets.load_iris
数据集#7049、datasets.load_breast_cancer
数据集#7152、datasets.load_digits
数据集、datasets.load_diabetes
数据集、datasets.load_linnerud
数据集和datasets.load_boston
数据集#7154添加了参数return_X_y
和返回类型(data, target) : tuple
选项。作者:Manvendra Singh。简化了
clone
函数,弃用对在__init__
中修改参数的估计器的支持。#5540 作者:Andreas Müller。在使用与训练估计器不同的版本反序列化scikit-learn估计器时,会引发
UserWarning
,详情请参见模型持久性文档。(#7248)作者:Andreas Müller。
错误修复#
树和集成
随机森林、额外树、决策树和梯度提升不再接受
min_samples_split=1
,因为至少需要2个样本才能分割决策树节点。作者:Arnaud Jolyensemble.VotingClassifier
现在会在未拟合的估计器上调用predict
、transform
或predict_proba
时引发NotFittedError
。作者:Sebastian Raschka。修复了
ensemble.AdaBoostClassifier
和ensemble.AdaBoostRegressor
在random_state
固定时性能较差的错误(#7411)。作者:Joel Nothman。修复了具有随机性的集成中,集成不会在管道或类似嵌套中的基础估计器上设置
random_state
的错误。(#7411)。请注意,ensemble.BaggingClassifier
ensemble.BaggingRegressor
、ensemble.AdaBoostClassifier
和ensemble.AdaBoostRegressor
的结果现在将与以前的版本不同。作者:Joel Nothman。
线性、核化及相关模型
修复了
linear_model.SGDClassifier
和linear_model.SGDRegressor
中loss='squared_epsilon_insensitive'
的梯度计算错误(#6764)。作者:Wenhua Yang。修复了
linear_model.LogisticRegressionCV
中的bug,其中solver='liblinear'
不接受class_weights='balanced'
。(#6817)。由Tom Dupre la Tour完成。修复了
neighbors.RadiusNeighborsClassifier
中的bug,当存在被标记的异常值且指定了权重函数时,会发生错误。(#6902)。由LeonieBorne完成。修复了
linear_model.ElasticNet
在多输出情况下,稀疏决策函数与密集决策函数输出不匹配的问题。
分解、流形学习和聚类
decomposition.RandomizedPCA
的iterated_power
默认值由3改为4。#5141 由Giorgio Patrini完成。utils.extmath.randomized_svd
默认执行4次幂迭代,而不是0次。实际上,这足以在存在噪声的情况下获得对真实特征值/特征向量的良好近似。当n_components
较小(< .1 * min(X.shape)
)时,n_iter
设置为7,除非用户指定更高的数值。这提高了少量成分的精度。#5299 由Giorgio Patrini完成。修复了
decomposition.PCA
和decomposition.RandomizedPCA
(现在合并到PCA中,参见新增功能)的组件之间白化/非白化不一致的问题。components_
存储时不进行白化。#5299 由Giorgio Patrini完成。修复了
manifold.spectral_embedding
中的bug,其中未归一化拉普拉斯矩阵的对角线被错误地设置为1。#4995 由Peter Fischer完成。修复了所有出现位置上
utils.arpack.eigsh
的错误初始化问题。这会影响cluster.bicluster.SpectralBiclustering
,decomposition.KernelPCA
,manifold.LocallyLinearEmbedding
和manifold.SpectralEmbedding
。(#5012)。由Peter Fischer完成。使用
discriminant_analysis.LinearDiscriminantAnalysis
的SVD求解器计算的属性explained_variance_ratio_
现在返回正确的结果。由JPFrancoia完成。
预处理和特征选择
preprocessing.data._transform_selected
现在在copy=True
时始终将X
的副本传递给转换函数。(#7194)。由Caio Oliveira完成。
模型评估和元估计器
model_selection.StratifiedKFold
现在如果所有单个类的n_labels都小于n_folds,则会引发错误。#6182 由Devashish Deshpande完成。修复了
model_selection.StratifiedShuffleSplit
中的bug,在某些极端情况下,训练样本和测试样本可能重叠,更多详情请参见#6121。由Loic Esteve完成。修复了
sklearn.model_selection.StratifiedShuffleSplit
,使其在所有情况下都能返回大小为train_size
和test_size
的分割。(#6472)。由Andreas Müller完成。multiclass.OneVsOneClassifier
和multiclass.OneVsRestClassifier
的交叉验证现在支持预计算的核。#7350 由Russell Smith完成。修复了
model_selection.GridSearchCV
到linear_model.SGDClassifier
的predict_proba
方法委托不完整的问题。(#7159)由Yichuan Liu完成。
指标
修复了
metrics.silhouette_score
中的一个bug,该bug导致大小为1的簇的评分不正确。它们的分数应该为0。由Joel Nothman修复。修复了
metrics.silhouette_samples
中的一个bug,使其现在可以处理任意标签,而不仅仅是范围从0到n_clusters - 1的标签。修复了一个bug,该bug导致如果簇列联表单元格超过
2**16
,则预期互信息和调整后的互信息计算不正确。由Joel Nothman修复。metrics.pairwise_distances
现在在scipy.spatial.distance
中需要时会将数组转换为布尔数组。#5460 由Tom Dupre la Tour修复。修复了
metrics.silhouette_score
以及示例examples/text/document_clustering.py中的稀疏输入支持。由YenChen Lin修复。metrics.roc_curve
和metrics.precision_recall_curve
在创建ROC曲线时不再对y_score
值进行四舍五入;这导致使用分数差异非常小的用户出现问题。#7353
其他改进
model_selection.tests._search._check_param_grid
现在可以正确处理扩展/实现Sequence
的所有类型(字符串除外),包括range(Python 3.x)和xrange(Python 2.x)。#7323 由Viacheslav Kovalevskyi修复。utils.extmath.randomized_range_finder
在请求许多幂迭代时具有更高的数值稳定性,因为它默认应用LU归一化。如果n_iter<2
,则数值问题不太可能出现,因此不应用归一化。其他归一化选项可用:'none', 'LU'
和'QR'
。#5141 由Giorgio Patrini修复。修复了一个bug,该bug导致某些格式的
scipy.sparse
矩阵以及具有这些矩阵作为参数的估计器无法传递给base.clone
。由Loic Esteve修复。datasets.load_svmlight_file
现在能够读取长整型QID值。#7101 由Ibraim Ganiev修复。
API更改摘要#
线性、核化及相关模型
residual_metric
已在linear_model.RANSACRegressor
中弃用。请改用loss
。由Manoj Kumar修复。在
isotonic.IsotonicRegression
中,访问公共属性.X_
和.y_
已被弃用。由Jonathan Arfa修复。
分解、流形学习和聚类
旧的
mixture.DPGMM
已被弃用,取而代之的是新的mixture.BayesianGaussianMixture
(使用参数weight_concentration_prior_type='dirichlet_process'
)。新类解决了旧类的计算问题,并且比以前更快地计算具有狄利克雷过程先验的高斯混合。 #7295 由Wei Xue和Thierry Guillemot修复。旧的
mixture.VBGMM
已被弃用,取而代之的是新的mixture.BayesianGaussianMixture
(使用参数weight_concentration_prior_type='dirichlet_distribution'
)。新类解决了旧类的计算问题,并且比以前更快地计算变分贝叶斯高斯混合。 #6651 由Wei Xue和Thierry Guillemot修复。旧的
mixture.GMM
已被弃用,推荐使用新的mixture.GaussianMixture
。新类比以前更快地计算高斯混合模型,并解决了一些计算问题。#6666 由 薛伟 和 Thierry Guillemot 完成。
模型评估和元估计器
sklearn.cross_validation
、sklearn.grid_search
和sklearn.learning_curve
已被弃用,其类和函数已被重组到sklearn.model_selection
模块中。更多信息请参考 模型选择增强和API更改。#4294 由 Raghav RV 完成。model_selection.GridSearchCV
和model_selection.RandomizedSearchCV
的grid_scores_
属性已被弃用,推荐使用cv_results_
属性。更多信息请参考 模型选择增强和API更改。#6697 由 Raghav RV 完成。旧的交叉验证分割器中的参数
n_iter
或n_folds
已被新的参数n_splits
替换,因为它可以提供一致且明确的接口来表示训练测试分割的数量。#7187 由 YenChen Lin 完成。metrics.hamming_loss
中的参数classes
已重命名为labels
。#7260 由 Sebastián Vanrell 完成。分割器类
LabelKFold
、LabelShuffleSplit
、LeaveOneLabelOut
和LeavePLabelsOut
分别被重命名为model_selection.GroupKFold
、model_selection.GroupShuffleSplit
、model_selection.LeaveOneGroupOut
和model_selection.LeavePGroupsOut
。此外,新重命名分割器model_selection.LeaveOneGroupOut
和model_selection.LeavePGroupsOut
的split
方法中的参数labels
已重命名为groups
。另外,在model_selection.LeavePGroupsOut
中,参数n_labels
已重命名为n_groups
。#6660 由 Raghav RV 完成。现在
scoring
参数的错误和损失名称都以'neg_'
为前缀,例如neg_mean_squared_error
。未加前缀的版本已被弃用,将在 0.20 版本中移除。#7261 由 Tim Head 完成。
代码贡献者#
Aditya Joshi,Alejandro,Alexander Fabisch,Alexander Loginov,Alexander Minyushkin,Alexander Rudy,Alexandre Abadie,Alexandre Abraham,Alexandre Gramfort,Alexandre Saint,alexfields,Alvaro Ulloa,alyssaq,Amlan Kar,Andreas Mueller,andrew giessel,Andrew Jackson,Andrew McCulloh,Andrew Murray,Anish Shah,Arafat,Archit Sharma,Ariel Rokem,Arnaud Joly,Arnaud Rachez,Arthur Mensch,Ash Hoover,asnt,b0noI,Behzad Tabibian,Bernardo,Bernhard Kratzwald,Bhargav Mangipudi,blakeflei,Boyuan Deng,Brandon Carter,Brett Naul,Brian McFee,Caio Oliveira,Camilo Lamus,Carol Willing,Cass,CeShine Lee,Charles Truong,Chyi-Kwei Yau,CJ Carey,codevig,Colin Ni,Dan Shiebler,Daniel,Daniel Hnyk,David Ellis,David Nicholson,David Staub,David Thaler,David Warshaw,Davide Lasagna,Deborah,definitelyuncertain,Didi Bar-Zev,djipey,dsquareindia,edwinENSAE,Elias Kuthe,Elvis DOHMATOB,Ethan White,Fabian Pedregosa,Fabio Ticconi,fisache,Florian Wilhelm,Francis,Francis O’Donovan,Gaël Varoquaux,Ganiev Ibraim,ghg,Gilles Louppe,Giorgio Patrini,Giovanni Cherubin,Giovanni Lanzani,Glenn Qian,Gordon Mohr,govin-vatsan,Graham Clenaghan,Greg Reda,Greg Stupp,Guillaume Lemaître,Gustav Mörtberg,halwai,Harizo Rajaona,Harry Mavroforakis,hashcode55,hdmetor,Henry Lin,Hobson Lane,Hugo Bowne-Anderson,Igor Andriushchenko,Imaculate,Inki Hwang,Isaac Sijaranamual,Ishank Gulati,Issam Laradji,Iver Jordal,jackmartin,Jacob Schreiber,Jake Vanderplas,James Fiedler,James Routley,Jan Zikes,Janna Brettingen,jarfa,Jason Laska,jblackburne,jeff levesque,Jeffrey Blackburne,Jeffrey04,Jeremy Hintz,jeremynixon,Jeroen,Jessica Yung,Jill-Jênn Vie,Jimmy Jia,Jiyuan Qian,Joel Nothman,johannah,John,John Boersma,John Kirkham,John Moeller,jonathan.striebel,joncrall,Jordi,Joseph Munoz,Joshua Cook,JPFrancoia,jrfiedler,Julian Kahnert,juliathebrave,kaichogami,Kamalaker Dadi,Kenneth Lyons,Kevin Wang,kingjr,kjell,Konstantin Podshumok,Kornel Kielczewski,Krishna Kalyan,krishnakalyan3,Kvle Putnam,Kyle Jackson,Lars Buitinck,ldavid,LeiG,Leighton Zhang,Leland McInnes,Liang-Chi Hsieh,Lilian Besson,lizsz,Loïc Esteve,Louis Tiao,Léonie Borne,Mads Jensen,Maniteja Nandana,Manoj Kumar,Manvendra Singh,Marco,Mario Krell,Mark Bao,Mark Szepieniec,Martin Madsen,MartinBpr,Maryan Morel,Massil,Matheus,Mathieu Blondel,Mathieu Dubois,Matteo,Matthias Ekman,Max Moroz,Michael Scherer,michiaki ariga,Mikhail Korobov,Moussa Taifi,mrandrewandrade,Mridul Seth,nadya-p,Naoya Kanai,Nate George,Nelle Varoquaux,Nelson Liu,Nick James,NickleDave,Nico,Nicolas Goix,Nikolay Mayorov,ningchi,nlathia,okbalefthanded,Okhlopkov,Olivier Grisel,Panos Louridas,Paul Strickland,Perrine Letellier,pestrickland,Peter Fischer,Pieter,Ping-Yao Chang,practicalswift,Preston Parry,Qimu Zheng,Rachit Kansal,Raghav RV,Ralf Gommers,Ramana.S,Rammig,Randy Olson,Rob Alexander,Robert Lutz,Robin Schucker,Rohan Jain,Ruifeng Zheng,Ryan Yu,Rémy Léone,saihttam,Saiwing Yeung,Sam Shleifer,Samuel St-Jean,Sartaj Singh,Sasank Chilamkurthy,saurabh.bansod,Scott Andrews,Scott Lowe,seales,Sebastian Raschka,Sebastian Saeger,Sebastián Vanrell,Sergei Lebedev,shagun Sodhani,shanmuga cv,Shashank Shekhar,shawpan,shengxiduan,Shota,shuckle16,Skipper Seabold,sklearn-ci,SmedbergM,srvanrell,Sébastien Lerique,Taranjeet,themrmax,Thierry,Thierry Guillemot,Thomas,Thomas Hallock,Thomas Moreau,Tim Head,tKammy,toastedcornflakes,Tom,TomDLT,Toshihiro Kamishima,tracer0tong,Trent Hauck,trevorstephens,Tue Vo,Varun,Varun Jewalikar,Viacheslav,Vighnesh Birodkar,Vikram,Villu Ruusmann,Vinayak Mehta,walter,waterponey,Wenhua Yang,Wenjian Huang,Will Welch,wyseguy7,xyguo,yanlend,Yaroslav Halchenko,yelite,Yen,YenChenLin,Yichuan Liu,Yoav Ram,Yoshiki,Zheng RuiFeng,zivori,Óscar Nájera