版本0.24#
有关该版本主要亮点的简短描述,请参阅 scikit-learn 0.24发布亮点 .
换象传说
Major Feature 一些你以前做不到的大事。
Feature 一些你以前做不到的事情。
Efficiency 现有功能现在可能不需要那么多的计算或内存。
Enhancement 一个杂七杂八的小改进。
Fix 以前没有按照记录或合理预期发挥作用的事情现在应该起作用了。
API Change 您需要更改您的代码才能在将来产生相同的效果;或者将来将删除某个功能。
版本0.24.2#
April 2021
Changelog#
sklearn.compose#
Fix
compose.ColumnTransformer.get_feature_namesdoes not callget_feature_nameson transformers with an empty column selection. #19579 by Thomas Fan .
sklearn.cross_decomposition#
Fix 修复了回归
cross_decomposition.CCA. #19646 通过 Thomas Fan .Fix
cross_decomposition.PLSRegression对常量y残差而不是StopIterationerror. #19922 by Thomas Fan .
sklearn.decomposition#
Fix 修复了中的一个错误
decomposition.KernelPCA的inverse_transform. #19732 通过 Kei Ishikawa .
sklearn.ensemble#
Fix 修复了中的一个错误
ensemble.HistGradientBoostingRegressorfit与sample_weight参数和least_absolute_deviation损失功能。 #19407 通过 Vadim Ushtanit .
sklearn.feature_extraction#
Fix Fixed a bug to support multiple strings for a category when
sparse=Falseinfeature_extraction.DictVectorizer. #19982 by Guillaume Lemaitre.
sklearn.gaussian_process#
Fix 避免在中显式形成逆协方差矩阵
gaussian_process.GaussianProcessRegressor当设置为输出标准差时。对于某些协方差矩阵,这个逆矩阵显式计算是不稳定的。调用Cholesky求解器可以缓解计算中的这个问题。 #19939 通过 Ian Halvic .Fix 缩放恒定目标时避免被零除
gaussian_process.GaussianProcessRegressor.这是由于性病。dev.等于0。现在,这种情况被检测到并进行了std。dev.被影响为1,避免被零除,从而避免标准化目标中存在NaN值。 #19703 通过 @sobkevich , Boris Villazón-Terrazas 和 Alexandr Fonari .
sklearn.linear_model#
Fix :修复了中的一个错误
linear_model.LogisticRegression:sample_weight对象不再被修改。 #19182 通过 Yosuke KOBAYASHI .
sklearn.metrics#
Fix
metrics.top_k_accuracy_score现在支持仅出现两个类的多类问题y_true并且所有类都在中指定labels. #19721 通过 Joris Clement .
sklearn.model_selection#
Fix
model_selection.RandomizedSearchCV和model_selection.GridSearchCV现在正确显示单个指标的得分并且详细度> 2。 #19659 通过 Thomas Fan .Fix 一些价值观
cv_results_attribute ofmodel_selection.HalvingRandomSearchCVandmodel_selection.HalvingGridSearchCVwere not properly converted to numpy arrays. #19211 by Nicolas Hug .Fix The
fitmethod of the successive halving parameter search (model_selection.HalvingGridSearchCV, andmodel_selection.HalvingRandomSearchCV) now correctly handles thegroupsparameter. #19847 by Xiaoyu Chai.
sklearn.multioutput#
Fix
multioutput.MultiOutputRegressor现在与动态定义的估计器一起工作predictduring fitting, such asensemble.StackingRegressor. #19308 by Thomas Fan .
sklearn.preprocessing#
Fix 初始化构造函数参数
handle_unknown在preprocessing.OrdinalEncoder只允许'error'和'use_encoded_value'战略布局 #19234 通过Guillaume Lemaitre <glemaitre>.Fix 修复dype =“S”的编码器类别
preprocessing.OneHotEncoder和preprocessing.OrdinalEncoder. #19727 通过 Andrew Delong .Fix
preprocessing.OrdinalEncoder.transform正确处理字符串数据类型的未知值。 #19888 通过 Thomas Fan .Fix
preprocessing.OneHotEncoder.fit不再改变dropparameter. #19924 by Thomas Fan .
sklearn.semi_supervised#
Fix 在标签传播期间避免NaN
LabelPropagation. #19271 通过 Zhaowei Wang .
sklearn.tree#
Fix 修复中的错误
fit的tree.BaseDecisionTree这在某些条件下会导致分段错误。fit现在深度复制Criterion对象以防止共享并发访问。 #19580 通过 Samuel Brice 和 Alex Adamson 和 Wil Yegelwel .
sklearn.utils#
Fix Better包含由提供的CSS
utils.estimator_html_repr通过为html表示提供CSS id。 #19417 通过 Thomas Fan .
版本0.24.1#
January 2021
包装#
0.24.0 scikit-learn wheels不适用于MacOS <1.15,原因是 libomp .的版本 libomp 用于构建轮子的工具对于旧的macOS版本来说太新了。此问题已在0.24.1 scikit-learn wheels中修复。在PyPI.org上发布的Scikit-learn wheels现在正式支持macOS 10.13及更高版本。
Changelog#
sklearn.metrics#
Fix 修复可能发生的数值稳定性错误
metrics.adjusted_mutual_info_score和metrics.mutual_info_scoreNumPy 1.20+。 #19179 通过 Thomas Fan .
sklearn.semi_supervised#
Fix
semi_supervised.SelfTrainingClassifier现在正在接受元估计器(例如ensemble.StackingClassifier).一旦我们知道该方法的存在,该估计量的验证就在匹配的估计量上完成predict_proba. #19126 通过 Guillaume Lemaitre .
版本0.24.0#
December 2020
更改型号#
以下估计量和函数在与相同的数据和参数进行匹配时,可能会产生与之前版本不同的模型。这种情况通常是由于建模逻辑(错误修复或增强)或随机抽样过程的变化而发生的。
Fix
decomposition.KernelPCA当内核具有较小的正特征值时,32位和64位数据之间的行为现在更加一致。Fix
decomposition.TruncatedSVD通过暴露一个random_state参数.Fix
linear_model.Perceptron当penalty='elasticnet'.Fix 中心初始化随机抽样程序变更
cluster.KMeans.
详细信息见下面的变更日志。
(虽然我们试图通过提供这些信息来更好地告知用户,但我们不能保证此列表是完整的。
Changelog#
sklearn.base#
Fix
base.BaseEstimator.get_params现在将提出一个AttributeError如果参数无法作为实例属性检索。以前它会回来None. #17448 通过 Juan Carlos Alfaro Jiménez .
sklearn.calibration#
Efficiency
calibration.CalibratedClassifierCV.fitnow supports parallelization viajoblib.Parallelusing argumentn_jobs. #17107 by Julien Jerphanion.Enhancement 允许
calibration.CalibratedClassifierCV配合预装使用pipeline.Pipeline数据不在的地方X一开始不是类数组、稀疏矩阵或双框架。 #17546 通过 Lucy Liu .Enhancement 添加
ensemble参数以calibration.CalibratedClassifierCV,它可以通过一系列校准器(当前方法)或使用所有数据的仅一个校准器(类似于sklearn.svm估计器与probabilities=True参数)。 #17856 通过 Lucy Liu 和 Andrea Esuli .
sklearn.cluster#
Enhancement
cluster.AgglomerativeClustering有一个新参数compute_distances.如果设置为True,计算集群之间的距离并存储在distances_属性,即使参数distance_threshold未使用。这个新参数对于生成树状图可视化很有用,但会引入计算和内存开销。 #17984 通过 Michael Riedmann , Emilie Delattre ,而且 Francesco Casalegno .Enhancement
cluster.SpectralClustering和cluster.spectral_clustering有一个新的关键字参数verbose.如果设置为True,将显示额外的消息,有助于调试。 #18052 通过 Sean O. Stalley .Enhancement 添加
cluster.kmeans_plusplus作为公共职能。现在可以单独调用KMeans++来生成初始聚类质心。 #17937 通过 @g-walshAPI Change
cluster.MiniBatchKMeans属性,counts_和init_size_,已弃用,并将在1.1中删除(0.26的重命名)。 #17864 通过 Jérémie du Boisberranger .
sklearn.compose#
Fix
compose.ColumnTransformer将跳过transformers,列选择器是一个为False的布尔值列表。 #17616 通过 Thomas Fan .Fix
compose.ColumnTransformer现在在图表显示中显示其余部分。 #18167 通过 Thomas Fan .Fix
compose.ColumnTransformer强制执行严格的列名计数和顺序fit和transform通过在弃用周期之后引发错误而不是警告。 #18256 通过 Madhura Jayratne .
sklearn.covariance#
API Change 不赞成
cv_alphas_in favor ofcv_results_['alphas']andgrid_scores_in favor of split scores incv_results_incovariance.GraphicalLassoCV.cv_alphas_andgrid_scores_will be removed in version 1.1 (renaming of 0.26). #16392 by Thomas Fan .
sklearn.cross_decomposition#
Fix 修复了中的一个错误
cross_decomposition.PLSSVD它有时会以相反的重要性顺序返回组件。 #17095 通过 Nicolas Hug .Fix 修复了中的一个错误
cross_decomposition.PLSSVD,cross_decomposition.CCA,而且cross_decomposition.PLSCanonical,这将导致错误的预测est.transform(Y)when the training data is single-target. #17095 by Nicolas Hug .Fix 增加的稳定性
cross_decomposition.CCA#18746 通过 Thomas Fan .API Change 的边界
n_components参数现在受到限制:成
[1, min(n_samples, n_features, n_targets)],对于cross_decomposition.PLSSVD,cross_decomposition.CCA,而且cross_decomposition.PLSCanonical.成
[1, n_features]或cross_decomposition.PLSRegression.
1.1中将引发错误(重命名为0.26)。 #17095 通过 Nicolas Hug .
API Change 为
cross_decomposition.PLSSVD,cross_decomposition.CCA,而且cross_decomposition.PLSCanonical,x_scores_andy_scores_attributes were deprecated and will be removed in 1.1 (renaming of 0.26). They can be retrieved by callingtransformon the training data. Thenorm_y_weightsattribute will also be removed. #17095 by Nicolas Hug .API Change 为
cross_decomposition.PLSRegression,cross_decomposition.PLSCanonical,cross_decomposition.CCA,而且cross_decomposition.PLSSVD,x_mean_,y_mean_,x_std_,而且y_std_属性已被弃用并将在1.1中删除(重命名为0.26)。 #18768 通过 Maren Westermann .Fix
decomposition.TruncatedSVD通过使用random_state.它控制基础ARPACK求解器的权重初始化。 :pr:` #18302` 通过 Gaurav Desai 和 Ivan Panico .
sklearn.datasets#
Feature
datasets.fetch_openml现在验证下载或缓存的arff文件的md5检验和,以确保数据完整性。 #14800 通过 Shashank Singh 和 Joel Nothman .Enhancement
datasets.fetch_openml现在允许争论as_frame为“自动”,它会尝试将返回的数据转换为pandas DataFrame,除非数据稀疏。 #17396 通过 Jiaxiang .Enhancement
datasets.fetch_covtype现在支持可选论点as_frame;当它设置为True时,返回的Bunch对象的data和frame成员是熊猫DataFrames,而熊猫target成员是熊猫系列。 #17491 通过 Alex Liang .Enhancement
datasets.fetch_kddcup99现在支持可选论点as_frame; when it is set to True, the returned Bunch object'sdataandframemembers are pandas DataFrames, and thetargetmember is a pandas Series. #18280 by Alex Liang and Guillaume Lemaitre .Enhancement
datasets.fetch_20newsgroups_vectorized现在支持作为熊猫加载DataFrame通过设置as_frame=True. #17499 通过 Brigitta Sipőcz 和 Guillaume Lemaitre .API Change 的默认值
as_frame在datasets.fetch_openml从False更改为“自动”。 #17610 通过 Jiaxiang .
sklearn.decomposition#
API Change 为
decomposition.NMF,init值,当“init=无”且n_components <= min(n_samples,n_features)时,将更改为'nndsvd'到'nndsvda'在1.1中(重命名0.26)。 #18525 通过 Chiara Marmo .Enhancement
decomposition.FactorAnalysis现在支持可选论点rotation,可以取值None,'varimax'或'quartimax'. #11064 通过 Jona Sassenhagen .Enhancement
decomposition.NMF现在支持可选参数regularization,它可以取值None、“组件”、“转换”或“两者”,根据decomposition.NMF.non_negative_factorization. #17414 通过 Bharat Raghunathan .Fix
decomposition.KernelPCA当内核具有较小的正特征值时,32位和64位数据输入之间的行为现在更加一致。32位数据的小正特征值没有正确丢弃。 #18149 通过 Sylvain Marié .Fix 修复
decomposition.SparseCoder这样它就遵循scikit-learn API并支持克隆。属性components_在0.24中不建议使用,并将在1.1中删除(重命名为0.26)。该属性对于dictionary属性和构造函数参数。 #17679 通过 Xavier Dupré .Fix
decomposition.TruncatedSVD.fit_transform始终返回与decomposition.TruncatedSVD.fit其次是decomposition.TruncatedSVD.transform. #18528 通过 Albert Villanova del Moral 和 Ruifeng Zheng .
sklearn.discriminant_analysis#
Enhancement
discriminant_analysis.LinearDiscriminantAnalysis现在可以通过设置covariance_estimator参数. #14446 通过 Hugo Richard .
sklearn.ensemble#
Major Feature
ensemble.HistGradientBoostingRegressor和ensemble.HistGradientBoostingClassifier现在通过对分类功能的本地支持categorical_featuresparameter. #18394 by Nicolas Hug 和 Thomas Fan .Feature
ensemble.HistGradientBoostingRegressor和ensemble.HistGradientBoostingClassifier现在支持该方法staged_predict,这允许监控每个阶段。 #16985 通过 Hao Chun Chang .Efficiency 中断内部使用的树节点中的循环引用
ensemble.HistGradientBoostingRegressor和ensemble.HistGradientBoostingClassifier允许对大型中间数据结构进行及时垃圾收集,并提高内存使用率fit. #18334 by Olivier Grisel Nicolas Hug , Thomas Fan 和 Andreas Müller .Efficiency Histogram initialization is now done in parallel in
ensemble.HistGradientBoostingRegressorandensemble.HistGradientBoostingClassifierwhich results in speed improvement for problems that build a lot of nodes on multicore machines. #18341 by Olivier Grisel, Nicolas Hug, Thomas Fan, and Egor Smirnov.Fix 修复了中的一个错误
ensemble.HistGradientBoostingRegressor和ensemble.HistGradientBoostingClassifier它现在可以接受数据uint8dtype inpredict. #18410 by Nicolas Hug .API Change 参数
n_classes_现已在ensemble.GradientBoostingRegressor并返回1. #17702 通过 Simona Maggio .API Change 现在不建议使用该参数的平均绝对误差(“mae”)
criterion在ensemble.GradientBoostingRegressor和ensemble.GradientBoostingClassifier. #18326 通过 Madhura Jayaratne .
sklearn.exceptions#
API Change
exceptions.ChangedBehaviorWarningandexceptions.NonBLASDotWarningare deprecated and will be removed in 1.1 (renaming of 0.26). #17804 by Adrin Jalali .
sklearn.feature_extraction#
Enhancement
feature_extraction.DictVectorizer接受一个类别特征的多个值。 #17367 通过 Peng Yu 和 Chiara Marmo .Fix
feature_extraction.text.CountVectorizer如果提供捕获多个组的自定义令牌模式,就会出现问题。 #15427 通过 Gangesh Gudmalwar 和 Erin R Hoffman .
sklearn.feature_selection#
Feature 添加
feature_selection.SequentialFeatureSelector它实现向前和向后顺序特征选择。 #6545 通过 Sebastian Raschka 和 #17159 通过 Nicolas Hug .Feature 新参数
importance_getter添加至feature_selection.RFE,feature_selection.RFECV和feature_selection.SelectFromModel,允许用户指定属性名称/路径或callable用于从估计器中提取特征重要性。 #15361 通过 Venkatachalam N .Efficiency 减少内存占用
feature_selection.mutual_info_classif和feature_selection.mutual_info_regression通过调用neighbors.KDTree用于计算最近的邻居。 #17878 通过 Noel Rogers .Enhancement
feature_selection.RFE支持数量选项n_features_to_select以浮点数的形式给出,表示要选择的特征的百分比。 #17090 通过 Lisa Schwetlick 和 Marija Vlajic Wheeler .
sklearn.gaussian_process#
Enhancement 一种新方法
gaussian_process.kernel._check_bounds_params在适应高斯过程后被调用并引发ConvergenceWarning如果超参数的边界太紧 #12638 通过 Sylvain Lannuzel .
sklearn.impute#
Feature
impute.SimpleImputer现在支持字符串列表时strategy='most_frequent'或strategy='constant'. #17526 通过 Ayako YAGI 和 Juan Carlos Alfaro Jiménez .Feature 增加了方法
impute.SimpleImputer.inverse_transform用实例化时,将估算数据恢复为原始数据add_indicator=True. #17612 通过 Srimukh Sripada .Fix 替换默认值
impute.IterativeImputer的min_value和max_value参数以-np.inf和np.inf,分别代替None.然而,班级的行为并没有改变,因为None已经默认了这些价值观。 #16493 通过 Darshan N .Fix
impute.IterativeImputer不会尝试设置估计器的random_state属性,允许将其与更多外部类一起使用。 #15636 通过 David Cortes .Efficiency
impute.SimpleImputer现在更快了objectd类型数组。当strategy='most_frequent'在SimpleImputer. #18987 通过 David Katz .
sklearn.inspection#
Feature
inspection.partial_dependence和inspection.plot_partial_dependence现在支持计算和绘制由kind参数. #16619 通过 Madhura Jayratne .Feature 添加
sample_weight参数以inspection.permutation_importance. #16906 通过 Roei Kahny .API Change 立场论点在
inspection.PartialDependenceDisplay.plot并且在1.1中会出错(重命名为0.26)。 #18293 通过 Thomas Fan .
sklearn.isotonic#
Feature 暴露适合的属性
X_thresholds_和y_thresholds_其保存isotonic.IsotonicRegression用于模型检查目的实例。 #16289 通过 Masashi Kishimoto 和 Olivier Grisel .Enhancement
isotonic.IsotonicRegression现在接受具有1个特征的2D数组作为输入数组。 #17379 通过 Jiaxiang .Fix 在确定重复的X值时添加容差,以防止inf值由
isotonic.IsotonicRegression. #18639 通过 Lucy Liu .
sklearn.kernel_approximation#
Feature 添加类
kernel_approximation.PolynomialCountSketch它实现了用于多元核特征图逼近的张量草图算法。 #13003 通过 Daniel López Sánchez .Efficiency
kernel_approximation.Nystroemnow supports parallelization viajoblib.Parallelusing argumentn_jobs. #18545 by Laurenz Reitsam.
sklearn.linear_model#
Feature
linear_model.LinearRegression现在强制系数全为正值时positive设置为True. #17578 通过 Joseph Knox , Nelle Varoquaux 和 Chiara Marmo .Enhancement
linear_model.RidgeCVnow supports finding an optimal regularization valuealphafor each target separately by settingalpha_per_target=True. This is only supported when using the default efficient leave-one-out cross-validation schemecv=None. #6624 by Marijn van Vliet.Fix 修复错误
linear_model.TheilSenRegressor哪里predictandscorewould fail whenfit_intercept=Falseand there was one feature during fitting. #18121 by Thomas Fan .Fix 修复错误
linear_model.ARDRegression哪里predict提出错误时normalize=True和return_std=True因为X_offset_和X_scale_未定义。 #18607 通过 fhaselbeck .Fix 添加了缺失
l1_ratio参数linear_model.Perceptron,用于当penalty='elasticnet'.这将默认值从0更改为0.15。 #18622 通过 Haesun Park .
sklearn.manifold#
Efficiency 固定 #10493 .改进局部线性嵌入(LLE)
MemoryError与大输入一起使用时例外。 #17997 通过 Bertrand Maisonneuve .Enhancement 添加
square_distances参数以manifold.TSNE,它在废弃遗留平方行为期间提供向后兼容性。1.1中默认距离平方(重命名为0.26),该参数将在1.3中删除。 #17662 通过 Joshua Newton .Fix
manifold.MDS现在正确设置其_pairwiseattribute. #18278 by Thomas Fan .
sklearn.metrics#
Feature 添加
metrics.cluster.pair_confusion_matrix实现由两个集群中的元素对产生的混淆矩阵。 #17412 通过 Uwe F Mayer .Feature 新度量
metrics.top_k_accuracy_score.这是对metrics.top_k_accuracy_score,区别在于,只要真实标签与其中一个关联,预测就被认为是正确的k最高预测分数。metrics.accuracy_score是的特殊情况k = 1. #16625 通过 Geoffrey Bolmier .Feature 添加
metrics.det_curve计算检测误差权衡曲线分类指标。 #10591 通过 Jeremy Karnowski 和 Daniel Mohns .Feature 添加
metrics.plot_det_curve和metrics.DetCurveDisplay以简化DET曲线的绘制。 #18176 通过 Guillaume Lemaitre .Feature 添加
metrics.mean_absolute_percentage_error回归问题的度量和相关评分器。 #10708 与PR固定 #15007 通过 Ashutosh Hathidara .评分者和一些实际测试案例摘自公关 #10711 通过 Mohamed Ali Jamaoui .Feature 添加
metrics.rand_score执行(未经调整的)兰德指数。 #17412 通过 Uwe F Mayer .Feature
metrics.plot_confusion_matrix现在支持通过设置使matplotlib图中的彩色条可选colorbar=False. #17192 通过 Avi GuptaEnhancement 添加
sample_weight参数以metrics.median_absolute_error. #17225 通过 Lucy Liu .Enhancement 添加
pos_label参数metrics.plot_precision_recall_curve以便指定在计算精度和召回统计数据时使用的正类。 #17569 通过 Guillaume Lemaitre .Enhancement 添加
pos_label参数metrics.plot_roc_curve以便指定在计算ROCAUC统计量时要使用的正类。 #17651 通过 Clara Matos .Fix 修复了中的一个错误
metrics.classification_report当调用时,它会引发AttribeRightoutput_dict=True对于0长度值。 #17777 通过 Shubhanshu Mishra .Fix 修复了中的一个错误
metrics.classification_report当调用时,它会引发AttribeRightoutput_dict=True对于0长度值。 #17777 通过 Shubhanshu Mishra .Fix 修复了中的一个错误
metrics.jaccard_score其中建议zero_division当调用没有真实或预测样本时,参数。 #17826 通过 Richard Decal 和 Joseph WillardFix bug in
metrics.hinge_loss当发生错误时y_true缺少中明确提供的一些标签labels参数. #17935 通过 Cary Goltermann .Fix 修复接受pos_label参数并根据
decision_function或predict_proba.以前,当pos_Label不对应时,它们会返回错误的值classifier.classes_[1].当直接使用字符串标记的目标类训练分类器时,这一点尤其重要。 #18114 通过 Guillaume Lemaitre .Fix 修复了
metrics.plot_confusion_matrix当发生错误时y_true包含分类器以前未看到的标签,而labels和display_labels参数设置为None. #18405 通过 Thomas J. Fan 和 Yakov Pchelintsev .
sklearn.model_selection#
Major Feature 添加(实验性)参数搜索估计器
model_selection.HalvingRandomSearchCV和model_selection.HalvingGridSearchCV它实现连续减半,并可用作model_selection.RandomizedSearchCV和model_selection.GridSearchCV. #13900 通过 Nicolas Hug , Joel Nothman 和 Andreas Müller .Feature
model_selection.RandomizedSearchCV和model_selection.GridSearchCV现在有方法了score_samples#17478 通过 Teon Brooks 和 Mohamed Maskani .Enhancement
model_selection.TimeSeriesSplit有两个新的关键字参数test_size和gap.test_size允许固定所有折叠的样本外时间序列长度。gap在每次折叠上删除列车和测试集之间固定数量的样本。 #13204 通过 Kyle Kosic .Enhancement
model_selection.permutation_test_score和model_selection.validation_curve现在接受fit_params以传递额外的估计器参数。 #18527 通过 Gaurav Dhingra , Julien Jerphanion 和 Amanda Dsouza .Enhancement
model_selection.cross_val_score,model_selection.cross_validate,model_selection.GridSearchCV,而且model_selection.RandomizedSearchCV允许估计器评分失败并将评分替换为error_score. Iferror_score="raise", the error will be raised. #18343 by Guillaume Lemaitre 和 Devi Sandeep .Enhancement
model_selection.learning_curve现在接受fit_params以传递额外的估计器参数。 #18595 通过 Amanda Dsouza .Fix 修复了
lenofmodel_selection.ParameterSamplerwhen all distributions are lists andn_iteris more than the number of unique parameter combinations. #18222 by Nicolas Hug .Fix 一个修复当一个或多个简历拆分时发出警告
model_selection.GridSearchCV和model_selection.RandomizedSearchCV导致非有限分数。 #18266 通过 Subrat Sahu , Nirvan 和 Arthur Book .Enhancement
model_selection.GridSearchCV,model_selection.RandomizedSearchCV和model_selection.cross_validate支持scoringbeing a callable returning a dictionary of multiple metric names/values association. #15126 by Thomas Fan .
sklearn.multiclass#
Enhancement
multiclass.OneVsOneClassifier现在接受具有缺失值的输入。因此,可以处理缺失值的估计器(可以是具有插补步骤的管道)可以用作多类包装器的估计器。 #17987 通过 Venkatachalam N .Fix 允许的修复
multiclass.OutputCodeClassifier接受稀疏的输入数据,fit和predict方法.输入有效性的检查现在委托给基本估计器。 #17233 通过 Zolisa Bleki .
sklearn.multioutput#
Enhancement
multioutput.MultiOutputClassifier和multioutput.MultiOutputRegressor现在接受具有缺失值的输入。因此,可以处理缺失值的估计器(可能是具有插补步骤的管道,HistoricentBoosting估计器)可以用作多类包装器的估计器。 #17987 通过 Venkatachalam N .Fix 接受二元组的修复方法
order参数multioutput.ClassifierChain. #18124 通过 Gus Brocchini 和 Amanda Dsouza .
sklearn.naive_bayes#
Enhancement 添加参数
min_categories到naive_bayes.CategoricalNB这允许为每个功能指定最少数量的类别。这使得训练期间未看到的类别可以被考虑在内。 #16326 通过 George Armstrong .API Change 的属性
coef_和intercept_现已被废弃naive_bayes.MultinomialNB,naive_bayes.ComplementNB,naive_bayes.BernoulliNB和naive_bayes.CategoricalNB,并将在v1.1中删除(重命名为0.26)。 #17427 通过 Juan Carlos Alfaro Jiménez .
sklearn.neighbors#
Efficiency 加快
seuclidean,wminkowski,mahalanobis和haversine度量neighbors.DistanceMetric通过在设置时避免Cython中意外获得GILn_jobs>1在neighbors.KNeighborsClassifier,neighbors.KNeighborsRegressor,neighbors.RadiusNeighborsClassifier,neighbors.RadiusNeighborsRegressor,metrics.pairwise_distances并通过验证循环外的数据。 #17038 通过 Wenbo Zhao .Efficiency
neighbors.NeighborsBase改善的好处algorithm = 'auto'启发式的。除了之前的一套规则之外,现在,当特征数量超过15个时,brute假设数据固有维度对于基于树的方法来说太高,则选择。 #17148 通过 Geoffrey Bolmier .Fix
neighbors.BinaryTree将筹集ValueError当拟合具有不同维度的点的数据阵列时, #18691 通过 Chiara Marmo .Fix
neighbors.NearestCentroid与数值shrink_threshold将筹集ValueError当对具有所有恒定特征的数据进行匹配时。 #18370 通过 Trevor Waite .Fix 方法中
radius_neighborsandradius_neighbors_graphofneighbors.NearestNeighbors,neighbors.RadiusNeighborsClassifier,neighbors.RadiusNeighborsRegressor, andneighbors.RadiusNeighborsTransformer, usingsort_results=Truenow correctly sorts the results even when fitting with the "brute" algorithm. #18612 by Tom Dupre la Tour .
sklearn.neural_network#
Efficiency 神经网络训练和预测现在快了一些。 #17603 , #17604 , #17606 , #17608 , #17609 , #17633 , #17661 , #17932 通过 Alex Henrie .
Enhancement 避免将float32输入转换为float64,
neural_network.BernoulliRBM. #16352 通过 Arthur Imbert .Enhancement 支持32位计算
neural_network.MLPClassifier和neural_network.MLPRegressor. #17759 通过 Srimukh Sripada .Fix 固定方法
neural_network.MLPClassifier.fit不迭代max_iter如果开始变暖。 #18269 通过 Norbert Preining 和 Guillaume Lemaitre .
sklearn.pipeline#
Enhancement 通过的对变压器的引用
transformer_weights到pipeline.FeatureUnion这些都不是transformer_list将筹集ValueError. #17876 通过 Cary Goltermann .Fix 的切片
pipeline.Pipeline现在继承了原始管道的参数 (memory和verbose). #18429 通过 Albert Villanova del Moral 和 Paweł Biernat .
sklearn.preprocessing#
Feature
preprocessing.OneHotEncoder现在通过将缺失值视为一个类别来支持缺失值。 #17317 通过 Thomas Fan .Feature 添加新
handle_unknown参数与use_encoded_value选项,以及新的unknown_value参数向preprocessing.OrdinalEncoder在转换过程中允许未知类别并设置未知类别的编码值。 #17406 通过 Felix Wick 和 #18406 通过 Nicolas Hug .Feature 添加
clip参数以preprocessing.MinMaxScaler,它将测试数据的转换值剪辑为feature_range. #17833 通过 Yashika Sharma .Feature 添加
sample_weight参数以preprocessing.StandardScaler.允许为每个样本设置单独的权重。 #18510 和 #18447 和 #16066 和 #18682 通过 Maria Telenczuk 和 Albert Villanova 和 @panpiort8 和 Alex Gramfort .Enhancement 详细输出
model_selection.GridSearchCV可读性有所提高。 #16935 通过 Raghav Rajagopalan 和 Chiara Marmo .Enhancement 添加
unit_variance到preprocessing.RobustScaler,它对输出数据进行缩放,使正态分布特征的方差为1。 #17193 通过 Lucy Liu 和 Mabel Villalba .Enhancement 添加
dtype参数以preprocessing.KBinsDiscretizer. #16335 通过 Arthur Imbert .Fix 提出错误
sklearn.preprocessing.OneHotEncoder.inverse_transform当handle_unknown='error'和drop=None对于编码为全零的样本。 #14982 通过 Kevin Winata .
sklearn.semi_supervised#
Major Feature 添加
semi_supervised.SelfTrainingClassifier,一个元分类器,允许任何监督分类器充当半监督分类器,可以从未标记的数据中学习。 #11682 通过 Oliver Rausch 和 Patrice Becker .Fix 修复在中使用Unicode字符串dtypes时不正确的编码
preprocessing.OneHotEncoder和preprocessing.OrdinalEncoder. #15763 通过 Thomas Fan .
sklearn.svm#
Enhancement 在中调用SciPy BLAS API以获取支持率
fit,predict和相关方法svm.SVC,svm.NuSVC,svm.SVR,svm.NuSVR,svm.OneClassSVM. #16530 通过 Shuhua Fan .
sklearn.tree#
Feature
tree.DecisionTreeRegressor现在支持新的拆分标准'poisson'对于建模计数数据有用。 #17386 通过 Christian Lorentzen .Enhancement
tree.plot_tree现在使用matplotlib配置设置中的颜色。 #17187 通过 Andreas Müller .API Change 参数
X_idx_sorted现已在tree.DecisionTreeClassifier.fit和tree.DecisionTreeRegressor.fit,并且没有效果。 #17614 通过 Juan Carlos Alfaro Jiménez .
sklearn.utils#
Enhancement 添加
check_methods_sample_order_invariance到check_estimator,它检查如果应用于具有不同样本顺序的同一数据集,估计器方法是否不变 #17598 通过 Jason Ngo .Enhancement 添加对体重的支持
utils.sparse_func.incr_mean_variance_axis.通过 Maria Telenczuk 和 Alex Gramfort .Fix 引发ValueRight并伴有明确的错误消息
utils.check_array用于具有混合类型的稀疏数据帧。 #17992 通过 Thomas J. Fan 和 Alex Shacked .Fix 检查当轴=1并且尺寸不匹配时是否出现适当的误差
utils.sparse_func.incr_mean_variance_axis.通过 Alex Gramfort .
杂项#
代码和文档贡献者
感谢自0.23版本以来为项目维护和改进做出贡献的所有人,包括:
Abo7atm, Adam Spannbauer, Adrin Jalali, adrinjalali, Agamemnon Krasoulis, Akshay Deodhar, Albert Villanova del Moral, Alessandro Gentile, Alex Henrie, Alex Itkes, Alex Liang, Alexander Lenail, alexandracraciun, Alexandre Gramfort, alexshacked, Allan D Butler, Amanda Dsouza, amy12xx, Anand Tiwari, Anderson Nelson, Andreas Mueller, Ankit Choraria, Archana Subramaniyan, Arthur Imbert, Ashutosh Hathidara, Ashutosh Kushwaha, Atsushi Nukariya, Aura Munoz, AutoViz and Auto_ViML, Avi Gupta, Avinash Anakal, Ayako YAGI, barankarakus, barberogaston, beatrizsmg, Ben Mainye, Benjamin Bossan, Benjamin Pedigo, Bharat Raghunathan, Bhavika Devnani, Biprateep Dey, bmaisonn, Bo Chang, Boris Villazón-Terrazas, brigi, Brigitta Sipőcz, Bruno Charron, Byron Smith, Cary Goltermann, Cat Chenal, CeeThinwa, chaitanyamogal, Charles Patel, Chiara Marmo, Christian Kastner, Christian Lorentzen, Christoph Deil, Christos Aridas, Clara Matos, clmbst, Coelhudo, crispinlogan, Cristina Mulas, Daniel López, Daniel Mohns, darioka, Darshan N, david-cortes, Declan O'Neill, Deeksha Madan, Elizabeth DuPre, Eric Fiegel, Eric Larson, Erich Schubert, Erin Khoo, Erin R Hoffman, eschibli, Felix Wick, fhaselbeck, Forrest Koch, Francesco Casalegno, Frans Larsson, Gael Varoquaux, Gaurav Desai, Gaurav Sheni, genvalen, Geoffrey Bolmier, George Armstrong, George Kiragu, Gesa Stupperich, Ghislain Antony Vaillant, Gim Seng, Gordon Walsh, Gregory R. Lee, Guillaume Chevalier, Guillaume Lemaitre, Haesun Park, Hannah Bohle, Hao Chun Chang, Harry Scholes, Harsh Soni, Henry, Hirofumi Suzuki, Hitesh Somani, Hoda1394, Hugo Le Moine, hugorichard, indecisiveuser, Isuru Fernando, Ivan Wiryadi, j0rd1smit, Jaehyun Ahn, Jake Tae, James Hoctor, Jan Vesely, Jeevan Anand Anne, JeroenPeterBos, JHayes, Jiaxiang, Jie Zheng, Jigna Panchal, jim0421, Jin Li, Joaquin Vanschoren, Joel Nothman, Jona Sassenhagen, Jonathan, Jorge Gorbe Moya, Joseph Lucas, Joshua Newton, Juan Carlos Alfaro Jiménez, Julien Jerphanion, Justin Huber, Jérémie du Boisberranger, Kartik Chugh, Katarina Slama, kaylani2, Kendrick Cetina, Kenny Huynh, Kevin Markham, Kevin Winata, Kiril Isakov, kishimoto, Koki Nishihara, Krum Arnaudov, Kyle Kosic, Lauren Oldja, Laurenz Reitsam, Lisa Schwetlick, Louis Douge, Louis Guitton, Lucy Liu, Madhura Jayaratne, maikia, Manimaran, Manuel López-Ibáñez, Maren Westermann, Maria Telenczuk, Mariam-ke, Marijn van Vliet, Markus Löning, Martin Scheubrein, Martina G. Vilas, Martina Megasari, Mateusz Górski, mathschy, mathurinm, Matthias Bussonnier, Max Del Giudice, Michael, Milan Straka, Muoki Caleb, N. Haiat, Nadia Tahiri, Ph. D, Naoki Hamada, Neil Botelho, Nicolas Hug, Nils Werner, noelano, Norbert Preining, oj_lappi, Oleh Kozynets, Olivier Grisel, Pankaj Jindal, Pardeep Singh, Parthiv Chigurupati, Patrice Becker, Pete Green, pgithubs, Poorna Kumar, Prabakaran Kumaresshan, Probinette4, pspachtholz, pwalchessen, Qi Zhang, rachel fischoff, Rachit Toshniwal, Rafey Iqbal Rahman, Rahul Jakhar, Ram Rachum, RamyaNP, rauwuckl, Ravi Kiran Boggavarapu, Ray Bell, Reshama Shaikh, Richard Decal, Rishi Advani, Rithvik Rao, Rob Romijnders, roei, Romain Tavenard, Roman Yurchak, Ruby Werman, Ryotaro Tsukada, sadak, Saket Khandelwal, Sam, Sam Ezebunandu, Sam Kimbinyi, Sarah Brown, Saurabh Jain, Sean O. Stalley, Sergio, Shail Shah, Shane Keller, Shao Yang Hong, Shashank Singh, Shooter23, Shubhanshu Mishra, simonamaggio, Soledad Galli, Srimukh Sripada, Stephan Steinfurt, subrat93, Sunitha Selvan, Swier, Sylvain Marié, SylvainLan, t-kusanagi2, Teon L Brooks, Terence Honles, Thijs van den Berg, Thomas J Fan, Thomas J. Fan, Thomas S Benjamin, Thomas9292, Thorben Jensen, tijanajovanovic, Timo Kaufmann, tnwei, Tom Dupré la Tour, Trevor Waite, ufmayer, Umberto Lupo, Venkatachalam N, Vikas Pandey, Vinicius Rios Fuck, Violeta, watchtheblur, Wenbo Zhao, willpeppo, xavier dupré, Xethan, Xue Qianming, xun-tang, yagi-3, Yakov Pchelintsev, Yashika Sharma, Yi-Yan Ge, Yue Wu, Yutaro Ikeda, Zaccharie Ramzi, zoj613, Zhao Feng.