版本 1.1#
有关此版本主要亮点的简要说明,请参阅 scikit-learn 1.1 版本亮点。
更新日志图例
重大功能 以前无法实现的大功能。
功能 以前无法实现的功能。
效率提升 现有功能现在可能不需要那么多计算或内存。
增强 一般性的小改进。
修复 以前无法按文档或合理预期工作的问题现在应该可以了。
API 变更 未来你需要更改代码才能达到相同的效果;或者未来某个功能将被移除。
版本 1.1.3#
2022 年 10 月
此错误修复版本仅包含针对最新 SciPy 版本 >= 1.9.2 兼容性的修复。值得注意的更改包括
修复 将
msvcp140.dll包含在 scikit-learn wheel 文件中,因为它已在最新的 SciPy wheel 文件中移除。 #24631 by Chiara Marmo。增强 为 Python 3.11 创建 wheel 文件。 #24446 by Chiara Marmo。
其他错误修复将在接下来的几周内发布的 1.2 版本中提供。
请注意,此版本中已放弃对 Windows 上 32 位 Python 的支持。这是因为 SciPy 1.9.2 也放弃了对该平台的支持。建议 Windows 用户安装 64 位版本的 Python。
版本 1.1.2#
2022 年 8 月
变更模型#
以下估计器和函数在用相同数据和参数拟合时,可能会产生与上一个版本不同的模型。这通常是由于建模逻辑(bug 修复或增强)或随机采样过程的更改所致。
修复
manifold.TSNE现在在拟合时如果perplexity>=n_samples会抛出ValueError,以确保算法的数学正确性。 #10805 by Mathias Andersen 和 #23471 by Meekail Zain。
更新日志#
修复 对于带有无效参数的元估计器,会显示默认的 HTML 表示。 #24015 by Thomas Fan。
修复 为后端在 1.1 版本中更改的估计器和函数添加了对 F-contiguous 数组的支持。 #23990 by Julien Jerphanion。
修复 现在提供适用于 MacOS 10.9 及更高版本的 wheel 文件。 #23833 by Thomas Fan。
sklearn.base#
修复
base.BaseEstimator类的get_params方法现在支持具有get_params方法的type类型参数的估计器。 #24017 by Henry Sorsky。
sklearn.cluster#
修复 修复了
cluster.Birch中的一个错误,当数据集中存在重复项时,在拆分节点时可能会触发错误。 #23395 by Jérémie du Boisberranger。
sklearn.feature_selection#
修复 当估计器为
linear_model.ElasticNet或linear_model.ElasticNetCV且l1_ratio等于 1 时,或为linear_model.LassoCV时,feature_selection.SelectFromModel默认选择阈值为 1e-5。 #23636 by Hao Chun Chang。
sklearn.impute#
修复 当 dtype 为对象时,
impute.SimpleImputer在transform中使用在fit中看到的 dtype。 #22063 by Thomas Fan。
sklearn.linear_model#
修复 对克拉姆矩阵(由用户传入或预计算)的验证使用 dtype 感知的容差。 #22059 by Malte S. Kurz。
修复 修复了
linear_model.LogisticRegression中solver="newton-cg",fit_intercept=True和单个特征的错误。 #23608 by Tom Dupre la Tour。
sklearn.manifold#
修复
manifold.TSNE现在在拟合时如果perplexity>=n_samples会抛出ValueError,以确保算法的数学正确性。 #10805 by Mathias Andersen 和 #23471 by Meekail Zain。
sklearn.metrics#
修复 修复了
metrics.coverage_error对于 1D 数组输入的错误消息。 #23548 by Hao Chun Chang。
sklearn.preprocessing#
修复
preprocessing.OrdinalEncoder.inverse_transform现在正确处理unknown_value或encoded_missing_value为nan的用例。 #24087 by Thomas Fan。
sklearn.tree#
修复 修复了
tree.DecisionTreeRegressor和tree.DecisionTreeClassifier在拟合过程中无效内存访问的错误。 #23273 by Thomas Fan。
版本 1.1.1#
2022 年 5 月
更新日志#
增强 在没有导入 experimental 标志的情况下导入
model_selection.HalvingGridSearchCV,model_selection.HalvingRandomSearchCV或impute.IterativeImputer时,错误消息得到改进。 #23194 by Thomas Fan。增强 在 doc/conf.py 中添加了一个扩展,用于自动生成处理 NaN 值的估计器列表。 #23198 by Lise Kleiber, Zhehao Liu and Chiara Marmo。
sklearn.datasets#
修复 通过不传递
timeout参数,避免datasets.fetch_openml中的超时。 #23358 by Loïc Estève。
sklearn.decomposition#
修复 避免在
decomposition.IncrementalPCA中出现n_samples == n_components时的虚假警告。 #23264 by Lucy Liu。
sklearn.feature_selection#
修复
feature_selection.SelectFromModel的partial_fit方法现在对max_features和feature_names_in参数执行验证。 #23299 by Long Bao。
sklearn.metrics#
修复 修复了
metrics.precision_recall_curve以计算 100% 召回率时的精确率-召回率。精确率-召回率曲线现在显示对应于始终预测正类的分类器的最后一个点:召回率 = 100%,精确率 = 类平衡。 #23214 by Stéphane Collot and Max Baak。
sklearn.preprocessing#
修复
preprocessing.PolynomialFeatures当degree等于 0 且include_bias设置为 False 时会引发错误,当include_bias设置为 True 时会输出单个常量数组。 #23370 by Zhehao Liu。
sklearn.tree#
sklearn.utils#
修复
utils.class_weight.compute_sample_weight现在可与稀疏y一起使用。 #23115 by kernc。
版本 1.1.0#
2022 年 5 月
最低依赖项#
scikit-learn 1.1.0 版本需要 python 3.8+、numpy 1.17.3+ 和 scipy 1.3.2+。可选的最低依赖项是 matplotlib 3.1.2+。
更改的模型#
以下估计器和函数在用相同数据和参数拟合时,可能会产生与上一个版本不同的模型。这通常是由于建模逻辑(bug 修复或增强)或随机采样过程的更改所致。
效率
cluster.KMeans现在默认为algorithm="lloyd"而不是algorithm="auto",后者等同于algorithm="elkan"。Lloyd 算法和 Elkan 算法收敛到相同的解,仅存在数值舍入误差,但通常 Lloyd 算法使用的内存要少得多,而且通常更快。效率 由于采用了新的排序算法来查找最佳分割,拟合
tree.DecisionTreeClassifier,tree.DecisionTreeRegressor,ensemble.RandomForestClassifier,ensemble.RandomForestRegressor,ensemble.GradientBoostingClassifier和ensemble.GradientBoostingRegressor的速度平均比以前的版本快 15%。由于对具有相同准则值的分割的处理方式不同,模型可能会有所不同:新旧排序算法都是不稳定的排序算法。 #22868 by Thomas Fan。修复
cluster.SpectralClustering和manifold.SpectralEmbedding的特征向量初始化现在在使用'amg'或'lobpcg'求解器时从高斯分布中采样。此更改提高了求解器的数值稳定性,但可能导致模型不同。修复
feature_selection.f_regression和feature_selection.r_regression现在默认返回有限分数,而不是在某些角落情况下的np.nan和np.inf。如果确实需要非有限值并保持旧行为,可以使用force_finite=False。修复 包含所有非字符串列(例如 MultiIndex)的 Panda DataFrame 在传递给估计器时不再发出警告。对于具有非字符串列的 DataFrame,估计器将继续忽略列名。为了定义
feature_names_in_,所有列都必须是字符串。 #22410 by Thomas Fan。修复
preprocessing.KBinsDiscretizer更改了分箱边缘的处理方式,这可能导致相同数据产生不同的编码。修复
calibration.calibration_curve更改了分箱边缘的处理方式,这可能导致相同数据产生不同的输出曲线。修复
discriminant_analysis.LinearDiscriminantAnalysis现在使用正确的方差缩放系数,这可能导致不同的模型行为。修复
feature_selection.SelectFromModel.fit和feature_selection.SelectFromModel.partial_fit现在可以使用prefit=True调用。当prefit=True时,estimators_将是estimator的深层副本。 #23271 by Guillaume Lemaitre。
更新日志#
效率 用于密集 float64 数据集成对距离缩减的低级例程已重构。以下函数和估计器现在受益于硬件可扩展性和速度方面的性能改进
例如,在笔记本电脑上,
sklearn.neighbors.NearestNeighbors.kneighbors和sklearn.neighbors.NearestNeighbors.radius_neighbors分别比以前快 20 倍和 5 倍。此外,这两种算法的实现现在适用于具有许多核心的机器,使它们可用于包含数百万样本的数据集。
#21987, #22064, #22065, #22288 and #22320 by Julien Jerphanion。
增强 当某些输入包含意外的
NaN或无限值时,所有 scikit-learn 模型现在都会生成更具信息性的错误消息。特别是,消息包含输入名称(“X”、“y”或“sample_weight”),如果X中发现意外的NaN值,则错误消息会建议潜在的解决方案。 #21219 by Olivier Grisel。增强 当使用
set_params设置无效超参数时,所有 scikit-learn 模型现在都会生成更具信息性的错误消息。 #21542 by Olivier Grisel。增强 删除了 HTML 表示中的随机唯一标识符。通过此更改,只要单元格以相同的顺序运行,jupyter notebook 就可以重现。 #23098 by Thomas Fan。
修复 将
non_deterministic标签设置为True的估计器将跳过check_methods_sample_order_invariance和check_methods_subset_invariance测试。 #22318 by Zhehao Liu。API 更改 通过
loss参数使用对数损失(又称二项式或多项式偏差)的选项变得更加一致。首选方法是将值设置为"log_loss"。旧的选项名称仍然有效并生成相同的模型,但已被弃用,并将在 1.3 版本中移除。对于
ensemble.GradientBoostingClassifier,参数loss的名称“deviance”已被弃用,取而代之的是新名称“log_loss”,后者现在是默认值。 #23036 by Christian Lorentzen。对于
ensemble.HistGradientBoostingClassifier,参数loss的名称“auto”、“binary_crossentropy”和“categorical_crossentropy”已被弃用,取而代之的是新名称“log_loss”,后者现在是默认值。 #23040 by Christian Lorentzen。对于
linear_model.SGDClassifier,参数loss的名称“log”已被弃用,取而代之的是新名称“log_loss”。 #23046 by Christian Lorentzen。
API 更改 估计器的富 HTML 表示现在默认在 Jupyter notebook 中启用。可以通过在
sklearn.set_config中设置display='text'来禁用它。 #22856 by Jérémie du Boisberranger。
sklearn.calibration#
增强
calibration.calibration_curve接受参数pos_label以指定正类标签。 #21032 by Guillaume Lemaitre。增强
calibration.CalibratedClassifierCV.fit现在支持传递fit_params,这些参数被路由到base_estimator。 #18170 by Benjamin Bossan。增强
calibration.CalibrationDisplay接受参数pos_label以将此信息添加到绘图中。 #21038 by Guillaume Lemaitre。修复
calibration.calibration_curve现在更一致地处理分箱边缘。 #14975 by Andreas Müller and #22526 by Meekail Zain。API 更改
calibration.calibration_curve的normalize参数现在已弃用,并将在 1.3 版本中移除。建议将适当的概率(即分类器的 predict_proba 正类)用于y_prob。 #23095 by Jordan Silke。
sklearn.cluster#
主要功能 添加了新估计器
cluster.BisectingKMeans,引入了 Bisecting K-Means 算法。 #20031 by Michal Krawczyk, Tom Dupre la Tour and Jérémie du Boisberranger。增强
cluster.SpectralClustering和cluster.spectral_clustering现在包含新的'cluster_qr'方法,作为现有'kmeans'和'discrete'方法的替代方案,用于在嵌入空间中对样本进行聚类。有关详细信息,请参阅cluster.spectral_clustering。 #21148 by Andrew Knyazev。增强 将 get_feature_names_out 添加到
cluster.Birch,cluster.FeatureAgglomeration,cluster.KMeans,cluster.MiniBatchKMeans。 #22255 by Thomas Fan。增强
cluster.SpectralClustering现在在传入无效的n_clusters,n_init,gamma,n_neighbors,eigen_tol或degree值时引发一致的错误消息。 #21881 by Hugo Vassard。增强
cluster.AffinityPropagation现在返回聚类中心和标签(如果存在),即使模型没有完全收敛。当返回这些可能退化的聚类中心和标签时,会显示一条新的警告消息。如果没有构建聚类中心,则聚类中心仍然是一个空列表,标签设置为-1,并显示原始警告消息。 #22217 by Meekail Zain。效率 在
cluster.KMeans中,默认的algorithm现在是"lloyd",它是完整的经典 EM 风格算法。"auto"和"full"都已弃用,并将在 1.3 版本中移除。它们现在是"lloyd"的别名。以前的默认值是"auto",它依赖于 Elkan 算法。Lloyd 算法使用的内存比 Elkan 算法少,在许多数据集上更快,并且结果相同,因此进行了更改。 #21735 by Aurélien Geron。修复
cluster.KMeans的init参数现在正确支持类数组输入和 NumPy 字符串标量。 #22154 by Thomas Fan。
sklearn.compose#
修复
compose.ColumnTransformer现在移除__init__和set_params方法中的验证错误。 #22537 by iofall and Arisa Y.。修复 当使用
slice指定列时,compose.ColumnTransformer中的 get_feature_names_out 功能被破坏。这已在 #22775 and #22913 by randomgeek78 中修复。
sklearn.covariance#
修复
covariance.GraphicalLassoCV现在接受 NumPy 数组作为参数alphas。 #22493 by Guillaume Lemaitre。
sklearn.cross_decomposition#
增强
cross_decomposition.PLSRegression,cross_decomposition.PLSCanonical和cross_decomposition.CCA的inverse_transform方法现在允许在给定Y参数时重建X目标。 #19680 by Robin Thibaut。增强 将 get_feature_names_out 添加到
cross_decomposition模块中的所有转换器:cross_decomposition.CCA,cross_decomposition.PLSSVD,cross_decomposition.PLSRegression和cross_decomposition.PLSCanonical。 #22119 by Thomas Fan。修复
cross_decomposition.CCA,cross_decomposition.PLSCanonical和cross_decomposition.PLSRegression的 coef_ 属性的形状将在 1.3 版本中更改,从(n_features, n_targets)更改为(n_targets, n_features),以与其他线性模型保持一致,并使其适用于期望coef_具有特定形状的接口(例如feature_selection.RFE)。 #22016 by Guillaume Lemaitre。API 更改 为
cross_decomposition.PLSCanonical,cross_decomposition.PLSRegression和cross_decomposition.CCA添加拟合属性intercept_。方法predict确实等同于Y = X @ coef_ + intercept_。 #22015 by Guillaume Lemaitre。
sklearn.datasets#
功能
datasets.load_files现在接受基于文件扩展名的忽略列表和允许列表。 #19747 by Tony Attalla and #22498 by Meekail Zain。增强
datasets.make_swiss_roll现在支持可选参数 hole;当设置为 True 时,它返回 swiss-hole 数据集。 #21482 by Sebastian Pujalte。增强
datasets.make_blobs在生成过程中不再复制数据,因此使用的内存更少。 #22412 by Zhehao Liu。增强
datasets.load_diabetes现在接受参数scaled,允许加载未缩放的数据。此数据集的缩放版本现在从未缩放数据计算,并且可能产生与以前版本略有不同的结果(在 1e-4 绝对容差范围内)。 #16605 by Mandy Gu。增强
datasets.fetch_openml现在有两个可选参数n_retries和delay。默认情况下,如果发生网络故障,datasets.fetch_openml将重试 3 次,每次重试之间有延迟。 #21901 by Rileran。修复
datasets.fetch_covtype现在是并发安全的:数据在移动到数据目录之前会下载到临时目录。 #23113 by Ilion Beyst。API 更改
datasets.make_sparse_coded_signal现在接受参数data_transposed以显式指定矩阵X的形状。默认行为True是返回对应于(n_features, n_samples)形状的转置矩阵X。默认值将在 1.3 版本中更改为False。 #21425 by Gabriel Stefanini Vicente。
sklearn.decomposition#
主要功能 添加了一个新的估计器
decomposition.MiniBatchNMF。它是非负矩阵分解的一个更快但不那么准确的版本,更适合大型数据集。 #16948 by Chiara Marmo, Patricio Cerda and Jérémie du Boisberranger。增强
decomposition.dict_learning,decomposition.dict_learning_online和decomposition.sparse_encode为numpy.float32保留 dtype。decomposition.DictionaryLearning,decomposition.MiniBatchDictionaryLearning和decomposition.SparseCoder为numpy.float32保留 dtype。 #22002 by Takeshi Oura。增强
decomposition.PCA暴露了一个参数n_oversamples来调整utils.extmath.randomized_svd,并在特征数量较大时获得准确的结果。 #21109 by Smile。增强
decomposition.MiniBatchDictionaryLearning和decomposition.dict_learning_online已重构,现在具有基于字典或目标函数微小变化的停止准则,由新的max_iter、tol和max_no_improvement参数控制。两者的
n_iter参数已弃用。请改用max_iter。decomposition.dict_learning_online的iter_offset、return_inner_stats、inner_stats和return_n_iter参数用于内部目的,已弃用。decomposition.MiniBatchDictionaryLearning的inner_stats_、iter_offset_和random_state_属性用于内部目的,已弃用。两者的
batch_size参数的默认值将在 1.3 版本中从 3 更改为 256。
增强
decomposition.SparsePCA和decomposition.MiniBatchSparsePCA为numpy.float32保留 dtype。 #22111 by Takeshi Oura。增强
decomposition.TruncatedSVD现在允许n_components == n_features,如果algorithm='randomized'。 #22181 by Zach Deane-Mayer。增强 将 get_feature_names_out 添加到
decomposition模块中的所有转换器:decomposition.DictionaryLearning,decomposition.FactorAnalysis,decomposition.FastICA,decomposition.IncrementalPCA,decomposition.KernelPCA,decomposition.LatentDirichletAllocation,decomposition.MiniBatchDictionaryLearning,decomposition.MiniBatchSparsePCA,decomposition.NMF,decomposition.PCA,decomposition.SparsePCA和decomposition.TruncatedSVD。 #21334 by Thomas Fan。增强
decomposition.TruncatedSVD暴露了参数n_oversamples和power_iteration_normalizer来调整utils.extmath.randomized_svd,并在特征数量较大、矩阵秩高或矩阵的其他特征使得低秩近似困难时获得更准确的结果。 #21705 by Jay S. Stanley III。增强
decomposition.PCA暴露了参数power_iteration_normalizer来调整utils.extmath.randomized_svd,并在低秩近似困难时获得更准确的结果。 #21705 by Jay S. Stanley III。修复
decomposition.FastICA现在在fit中验证输入参数,而不是在__init__中。 #21432 by Hannah Bohle and Maren Westermann。修复
decomposition.FastICA现在接受np.float32数据,而不会进行隐式上转换。fit和fit_transform会保留 dtype,并且主要拟合属性使用与训练数据精度相同的 dtype。 #22806 by Jihane Bennis and Olivier Grisel。修复
decomposition.FactorAnalysis现在在fit中验证输入参数,而不是在__init__中。 #21713 by Haya and Krum Arnaudov。修复
decomposition.KernelPCA现在在fit中验证输入参数,而不是在__init__中。 #21567 by Maggie Chege。Fix
decomposition.PCA和decomposition.IncrementalPCA如果self.noise_variance_为零,则更安全地使用协方差矩阵的逆来计算精度。 #22300 by Meekail Zain and #15948 by @sysuresh.Fix 在调用
fit或fit_transform时,decomposition.PCA中的峰值内存使用量大大减少。 #22553 by Meekail Zain.API Change
decomposition.FastICA现在支持用于白化的单位方差。其whiten参数的默认值将在 1.3 版本中从True(行为类似于'arbitrary-variance')更改为'unit-variance'。 #19490 by Facundo Ferrin and Julien Jerphanion.
sklearn.discriminant_analysis#
Enhancement 为
discriminant_analysis.LinearDiscriminantAnalysis添加 get_feature_names_out。 #22120 by Thomas Fan.Fix
discriminant_analysis.LinearDiscriminantAnalysis现在使用正确的方差缩放系数,这可能会导致不同的模型行为。 #15984 by Okon Samuel and #22696 by Meekail Zain.
sklearn.dummy#
Fix
dummy.DummyRegressor在fit期间不再覆盖constant参数。 #22486 by Thomas Fan.
sklearn.ensemble#
Major Feature 为
ensemble.HistGradientBoostingRegressor添加了额外的选项loss="quantile"用于分位数建模。分位数水平可以通过新参数quantile指定。 #21800 and #20567 by Christian Lorentzen.Efficiency
ensemble.GradientBoostingClassifier和ensemble.GradientBoostingRegressor的fit现在调用utils.check_array时,对于非初始 warm-start 运行,参数force_all_finite=False,因为它之前已经被检查过了。 #22159 by Geoffrey Paris.Enhancement 由于新的私有损失函数模块,
ensemble.HistGradientBoostingClassifier对于二元问题,尤其是多类问题,速度更快。 #20811, #20567 and #21814 by Christian Lorentzen.Enhancement 为
ensemble.StackingClassifier和ensemble.StackingRegressor添加了使用cv="prefit"的预训练模型支持。 #16748 by Siqi He and #22215 by Meekail Zain.Enhancement
ensemble.RandomForestClassifierandensemble.ExtraTreesClassifier具有新的criterion="log_loss",它等效于criterion="entropy"。 #23047 by Christian Lorentzen.Enhancement 为
ensemble.VotingClassifier,ensemble.VotingRegressor,ensemble.StackingClassifier, andensemble.StackingRegressor添加 get_feature_names_out。 #22695 and #22697 by Thomas Fan.Enhancement
ensemble.RandomTreesEmbedding现在有一个信息丰富的 get_feature_names_out 函数,它在输出特征名称中包含树索引和叶子索引。 #21762 by Zhehao Liu and Thomas Fan.Efficiency 在多处理设置中,拟合
ensemble.RandomForestClassifier,ensemble.RandomForestRegressor,ensemble.ExtraTreesClassifier,ensemble.ExtraTreesRegressor, andensemble.RandomTreesEmbedding现在更快,尤其是对于启用warm_start的后续拟合。 #22106 by Pieter Gijsbers.Fix 更改
ensemble.GradientBoostingClassifier和ensemble.GradientBoostingRegressor中的参数validation_fraction,以便在传入的参数不是浮点数时引发错误。 #21632 by Genesis Valencia.Fix 移除了
ensemble.HistGradientBoostingClassifier和ensemble.HistGradientBoostingRegressor中潜在的 CPU 过度订阅源,尤其是在 CPU 资源使用受限时(例如在 docker 容器中使用 cgroups 配额)。 #22566 by Jérémie du Boisberranger.Fix
ensemble.HistGradientBoostingClassifier和ensemble.HistGradientBoostingRegressor在使用非默认scoring参数并启用 early_stopping 对 pandas DataFrame 进行拟合时不再发出警告。 #22908 by Thomas Fan.Fix 修复了
ensemble.StackingClassifierandensemble.StackingRegressor的 HTML 表示。 #23097 by Thomas Fan.API Change
ensemble.GradientBoostingClassifier和ensemble.GradientBoostingRegressor的属性loss_已被弃用,并将在 1.3 版本中移除。 #23079 by Christian Lorentzen.API Change
ensemble.RandomForestRegressor的max_features默认值更改为 1.0,ensemble.RandomForestClassifier的默认值更改为"sqrt"。请注意,这些值给出了与以前相同的拟合结果,但更容易理解。旧的默认值"auto"已被弃用,并将在 1.3 版本中移除。同样的更改也适用于ensemble.ExtraTreesRegressorandensemble.ExtraTreesClassifier。 #20803 by Brian Sun.Efficiency 通过跳过重复的输入检查,提高了
ensemble.IsolationForest的运行时性能。 #23149 by Zhehao Liu.
sklearn.feature_extraction#
Feature
feature_extraction.FeatureHasher现在支持 PyPy。 #23023 by Thomas Fan.Fix
feature_extraction.FeatureHasher现在在transform中验证输入参数,而不是在__init__中。 #21573 by Hannah Bohle and Maren Westermann.Fix
feature_extraction.text.TfidfVectorizer现在在__init__时不再创建feature_extraction.text.TfidfTransformer,这是我们 API 所要求的。 #21832 by Guillaume Lemaitre.
sklearn.feature_selection#
Feature 为
feature_selection.SequentialFeatureSelector添加了自动模式。如果参数n_features_to_select为'auto',则选择特征直到得分改进不超过参数tol。n_features_to_select的默认值在 1.1 中从None更改为'warn',并将在 1.3 中变为'auto'。None和'warn'将在 1.3 中移除。 #20145 by murata-yu.Feature 为
feature_selection.SelectFromModel的max_features参数添加了传递可调用对象的能力。还引入了新属性max_features_,它是在fit期间根据max_features和数据推断出来的。如果max_features是一个整数,则max_features_ = max_features。如果max_features是一个可调用对象,则max_features_ = max_features(X)。 #22356 by Meekail Zain.Enhancement
feature_selection.GenericUnivariateSelect保留 float32 dtype。 #18482 by Thierry Gameiro and Daniel Kharsa and #22370 by Meekail Zain.Enhancement 为
feature_selection.f_regressionandfeature_selection.r_regression添加参数force_finite。当特征或目标恒定,或者特征和目标完全相关时(仅适用于 F-statistic),此参数允许强制输出为有限值。 #17819 by Juan Carlos Alfaro Jiménez.Efficiency 提高了布尔数组的
feature_selection.chi2运行时性能。 #22235 by Thomas Fan.Efficiency 降低了
feature_selection.chi2的内存使用量。 #21837 by Louis Wagner.
sklearn.gaussian_process#
Fix
gaussian_process.GaussianProcessRegressor的predict和sample_y方法现在在单目标和多目标情况下,以及对于normalize_y=False和normalize_y=True都返回正确形状的数组。 #22199 by Guillaume Lemaitre, Aidar Shakerimoff and Tenavi Nakamura-Zimmerer.Fix 如果通过
kernel传入CompoundKernel,gaussian_process.GaussianProcessClassifier会引发更具信息性的错误。 #22223 by MarcoM.
sklearn.impute#
Enhancement
impute.SimpleImputer现在在由于训练集中缺少任何观察值而被跳过的特征发出特征名称警告。 #21617 by Christian Ritter.Enhancement 为
impute.SimpleImputer添加了对pd.NA的支持。 #21114 by Ying Xiong.Enhancement 为
impute.SimpleImputer,impute.KNNImputer,impute.IterativeImputer, andimpute.MissingIndicator添加 get_feature_names_out。 #21078 by Thomas Fan.API Change
impute.SimpleImputer的verbose参数已弃用。移除空列时将始终发出警告。 #21448 by Oleh Kozynets and Christian Ritter.
sklearn.inspection#
Feature 添加了一个显示器,用于通过使用方法
inspection.DecisionBoundaryDisplay.from_estimator绘制分类器的决策边界。 #16061 by Thomas Fan.Enhancement 在
inspection.PartialDependenceDisplay.from_estimator中,允许kind接受字符串列表以指定每个特征交互要绘制的图表类型。 #19438 by Guillaume Lemaitre.Enhancement
inspection.PartialDependenceDisplay.from_estimator,inspection.PartialDependenceDisplay.plot, andinspection.plot_partial_dependence现在支持绘制居中的个体条件期望(cICE)和居中的 PDP 曲线,通过设置参数centered进行控制。 #18310 by Johannes Elfner and Guillaume Lemaitre.
sklearn.isotonic#
Enhancement 为
isotonic.IsotonicRegression添加 get_feature_names_out。 #22249 by Thomas Fan.
sklearn.kernel_approximation#
sklearn.linear_model#
Feature
linear_model.ElasticNet,linear_model.ElasticNetCV,linear_model.Lassoandlinear_model.LassoCV支持稀疏输入X的sample_weight。 #22808 by Christian Lorentzen.Feature
linear_model.Ridgewithsolver="lsqr"现在支持拟合带有fit_intercept=True的稀疏输入。 #22950 by Christian Lorentzen.Enhancement
linear_model.QuantileRegressor支持基于 highs 的求解器的稀疏输入。 #21086 by Venkatachalam Natchiappan. 此外,这些求解器现在从一开始就使用 CSC 矩阵,从而加快了拟合速度。 #22206 by Christian Lorentzen.Enhancement
linear_model.LogisticRegression对于solvers="lbfgs"和solver="newton-cg"更快,对于二元问题,尤其是多类问题,这要归功于新的私有损失函数模块。在多类情况下,这些求解器的内存消耗也减少了,因为目标现在被标签编码(映射为整数)而不是标签二值化(one-hot 编码)。类别越多,好处越大。 #21808, #20567 and #21814 by Christian Lorentzen.Enhancement
linear_model.GammaRegressor,linear_model.PoissonRegressorandlinear_model.TweedieRegressor对于solvers="lbfgs"更快。 #22548, #21808 and #20567 by Christian Lorentzen.Enhancement 将
linear_model.RANSACRegressor中的参数base_estimator重命名为estimator,以提高可读性和一致性。base_estimator已弃用,并将在 1.3 中移除。 #22062 by Adrian Trujillo.Enhancement
linear_model.ElasticNet和其他使用坐标下降的线性模型类在产生非有限参数权重时会显示错误消息。 #22148 by Christian Ritter and Norbert Preining.Enhancement
linear_model.ElasticNet和linear_model.Lasso现在在传入无效的l1_ratio,alpha,max_iter和tol值时会引发一致的错误消息。 #22240 by Arturo Amor.Enhancement
linear_model.BayesianRidgeandlinear_model.ARDRegression现在保留 float32 dtype。 #9087 by Arthur Imbert and #22525 by Meekail Zain.Enhancement
linear_model.RidgeClassifier现在支持多标签分类。 #19689 by Guillaume Lemaitre.Enhancement
linear_model.RidgeCVandlinear_model.RidgeClassifierCV现在在传入无效的alphas值时会引发一致的错误消息。 #21606 by Arturo Amor.Enhancement
linear_model.Ridgeandlinear_model.RidgeClassifier现在在传入无效的alpha,max_iter和tol值时会引发一致的错误消息。 #21341 by Arturo Amor.Enhancement
linear_model.orthogonal_mp_gram保留numpy.float32的 dtype。 #22002 by Takeshi Oura.Fix
linear_model.LassoLarsIC现在正确计算 AIC 和 BIC。当n_features > n_samples且未提供噪声方差时,现在会引发错误。 #21481 by Guillaume Lemaitre and Andrés Babino.Fix
linear_model.TheilSenRegressor现在在fit中验证输入参数max_subpopulation,而不是在__init__中。 #21767 by Maren Westermann.Fix
linear_model.ElasticNetCV现在在l1_ratio=0时产生正确的警告。 #21724 by Yar Khine Phyo.Fix
linear_model.LogisticRegressionandlinear_model.LogisticRegressionCV现在设置n_iter_属性的形状,该形状符合文档字符串,并且与在使用 one-vs-rest 设置中的其他求解器时获得的形状一致。以前,它只记录每个二元子问题的最大迭代次数,而现在记录所有迭代次数。 #21998 by Olivier Grisel.Fix
linear_model.TweedieRegressor的属性family不再在__init__中验证。相反,此(私有)属性在linear_model.GammaRegressor,linear_model.PoissonRegressorandlinear_model.TweedieRegressor中被弃用,并将在 1.3 中移除。 #22548 by Christian Lorentzen.Fix 当输入稀疏且存在样本权重时,
linear_model.LinearRegression的coef_和intercept_属性现在计算正确。 #22891 by Jérémie du Boisberranger.Fix 当输入稀疏且存在样本权重时,
linear_model.Ridgewithsolver="sparse_cg"andsolver="lbfgs"的coef_和intercept_属性现在计算正确。 #22899 by Jérémie du Boisberranger.Fix
linear_model.SGDRegressorandlinear_model.SGDClassifier现在在启用 early stopping 时正确计算验证错误。 #23256 by Zhehao Liu.API Change
linear_model.LassoLarsIC现在将noise_variance作为参数公开,以便提供噪声方差的估计。当n_features > n_samples且无法计算噪声方差的估计器时,这尤其重要。 #21481 by Guillaume Lemaitre.
sklearn.manifold#
Feature
manifold.Isomap现在通过radius参数支持基于半径的邻居。 #19794 by Zhehao Liu.Enhancement
manifold.spectral_embeddingandmanifold.SpectralEmbedding支持np.float32dtype 并将保留此 dtype。 #21534 by Andrew Knyazev.Enhancement 为
manifold.Isomapandmanifold.LocallyLinearEmbedding添加 get_feature_names_out。 #22254 by Thomas Fan.Enhancement 为
manifold.TSNE构造函数添加了metric_params,用于优化中使用的距离度量的附加参数。 #21805 by Jeanne Dionisi and #22685 by Meekail Zain.Enhancement
manifold.trustworthinessraises an error ifn_neighbours >= n_samples / 2to ensure a correct support for the function. #18832 by Hong Shao Yang and #23033 by Meekail Zain.Fix
manifold.spectral_embedding现在使用高斯(Gaussian)而不是以前在 [0, 1] 上的均匀(uniform)随机初始近似于lobpcg和amg的特征向量,以提高它们的数值稳定性。 #21565 by Andrew Knyazev.
sklearn.metrics#
Feature
metrics.r2_scoreandmetrics.explained_variance_score有一个新的force_finite参数。将此参数设置为False将在完美预测或y_true恒定的情况下返回实际的非有限分数,而不是目前默认返回的有限近似值(分别为1.0和0.0)。 #17266 by Sylvain Marié.Feature
metrics.d2_pinball_score和metrics.d2_absolute_error_score分别计算用于 pinball loss 和绝对误差的 \(D^2\) 回归分数。metrics.d2_absolute_error_score是metrics.d2_pinball_score的一个特例,其中分位数参数alpha=0.5固定,以便于使用和发现。\(D^2\) 分数是r2_score的推广,可以解释为解释的偏差分数。 #22118 by Ohad Michel.Enhancement 当
y_true为二元且y_score为 2d 时,metrics.top_k_accuracy_score会引发改进的错误消息。 #22284 by Thomas Fan.Enhancement
metrics.roc_auc_score现在支持在多类情况下,当multiclass='ovr'时,average=None,它将返回每个类别的分数。 #19158 by Nicki Skafte.Enhancement 为
metrics.ConfusionMatrixDisplay.from_estimatormetrics.ConfusionMatrixDisplay.from_predictions, andmetrics.ConfusionMatrixDisplay.plot添加im_kw参数。im_kw参数在绘制混淆矩阵时传递给matplotlib.pyplot.imshow调用。 #20753 by Thomas Fan.修复
metrics.silhouette_score现在支持预计算距离的整数输入。#22108 by Thomas Fan。修复 修复了
metrics.normalized_mutual_info_score中可能返回无界值的问题。#22635 by Jérémie du Boisberranger。修复 修复了当真实标签全为负数时,
metrics.precision_recall_curve和metrics.average_precision_score的问题。#19085 by Varun Agrawal。API 变更
metrics.SCORERS现已弃用,并将在 1.3 版本中移除。请使用metrics.get_scorer_names来检索所有可用评分器的名称。#22866 by Adrin Jalali。API 变更
metrics.mean_absolute_percentage_error的参数sample_weight和multioutput现为仅限关键字参数,符合 SLEP009。已引入弃用周期。#21576 by Paul-Emile Dugnat。API 变更
metrics.DistanceMetric的"wminkowski"度量已弃用,并将在 1.3 版本中移除。取而代之的是,现有的"minkowski"度量现在接受一个可选的w参数用于权重。此弃用旨在与 SciPy 1.8 惯例保持一致。#21873 by Yar Khine Phyo。API 变更
metrics.DistanceMetric已从sklearn.neighbors移至sklearn.metrics。出于向后兼容性考虑,使用neighbors.DistanceMetric进行导入仍然有效,但此别名将在 1.3 版本中移除。#21177 by Julien Jerphanion。
sklearn.mixture#
增强
mixture.GaussianMixture和mixture.BayesianGaussianMixture现在可以使用 k-means++ 和随机数据点进行初始化。#20408 by Gordon Walsh, Alberto Ceballos 和 Andres Rios。修复 修复了在
mixture.GaussianMixture中提供precisions_init时,通过取其平方根来正确初始化precisions_cholesky_的错误。#22058 by Guillaume Lemaitre。修复
mixture.GaussianMixture现在更安全地标准化weights_,防止在调用mixture.GaussianMixture.sample时n_components=1时出现舍入错误。#23034 by Meekail Zain。
sklearn.model_selection#
增强 现在可以将
scoring="matthews_corrcoef"传递给所有带有scoring参数的模型选择工具,以使用马修斯相关系数 (MCC)。#22203 by Olivier Grisel。增强 当所有拆分的拟合都失败时,在交叉验证期间引发错误。同样,当所有模型和所有拆分的拟合都失败时,在网格搜索期间引发错误。#21026 by Loïc Estève。
修复
model_selection.GridSearchCV,model_selection.HalvingGridSearchCV现在在fit中而不是在__init__中验证输入参数。#21880 by Mrinal Tyagi。修复
model_selection.learning_curve现在支持带有回归器的partial_fit。#22982 by Thomas Fan。
sklearn.multiclass#
增强
multiclass.OneVsRestClassifier现在支持verbose参数,以便可以看到拟合的进度。#22508 by Chris Combs。修复 当内部分类器只有 predict_proba 时,
multiclass.OneVsOneClassifier.predict返回正确的预测。#22604 by Thomas Fan。
sklearn.neighbors#
增强 为
neighbors.RadiusNeighborsTransformer,neighbors.KNeighborsTransformer和neighbors.NeighborhoodComponentsAnalysis添加了 get_feature_names_out。#22212 by Meekail Zain。修复
neighbors.KernelDensity现在在fit中而不是在__init__中验证输入参数。#21430 by Desislava Vasileva 和 Lucy Jimenez。修复 如果
KNeighborsRegressor首先使用传递给weights参数的可调用对象构造,neighbors.KNeighborsRegressor.predict现在在给定类似数组的输入时也能正常工作。#22687 by Meekail Zain。
sklearn.neural_network#
增强
neural_network.MLPClassifier和neural_network.MLPRegressor在优化器产生非有限参数权重时显示错误消息。#22150 by Christian Ritter 和 Norbert Preining。增强 为
neural_network.BernoulliRBM添加了 get_feature_names_out。#22248 by Thomas Fan。
sklearn.pipeline#
增强 在
pipeline.FeatureUnion中添加了对 “passthrough” 的支持。将转换器设置为 “passthrough” 将会保持特征不变。#20860 by Shubhraneel Pal。修复
pipeline.Pipeline现在不在__init__中验证超参数,而是在.fit()中验证。#21888 by iofall and Arisa Y.。修复
pipeline.FeatureUnion不在__init__中验证超参数。验证现在在.fit()和.fit_transform()中处理。#21954 by iofall and Arisa Y.。修复 在
pipeline.FeatureUnion中定义__sklearn_is_fitted__以使用utils.validation.check_is_fitted返回正确的结果。#22953 by randomgeek78。
sklearn.preprocessing#
新功能
preprocessing.OneHotEncoder现在支持将不常见类别分组为一个特征。通过使用min_frequency或max_categories指定如何选择不常见类别来启用不常见类别分组。#16018 by Thomas Fan。增强 为
preprocessing.KBinsDiscretizer添加了subsample参数。这允许指定在拟合模型时使用的最大样本数。此选项仅在strategy设置为quantile时可用。#21445 by Felipe Bidu 和 Amanda Dsouza。增强 为
preprocessing.OrdinalEncoder添加了encoded_missing_value,用于配置缺失数据的编码值。#21988 by Thomas Fan。增强 为
preprocessing.FunctionTransformer添加了get_feature_names_out方法和一个新参数feature_names_out。您可以将feature_names_out设置为 'one-to-one' 以使用输入特征名称作为输出特征名称,或者将其设置为返回输出特征名称的可调用对象。当转换器更改特征数量时,这特别有用。如果feature_names_out为 None(默认值),则未定义get_output_feature_names。#21569 by Aurélien Geron。增强 为
preprocessing.Normalizer,preprocessing.KernelCenterer,preprocessing.OrdinalEncoder和preprocessing.Binarizer添加了 get_feature_names_out。#21079 by Thomas Fan。修复 使用
method='yeo-johnson'的preprocessing.PowerTransformer在搜索最佳 lambda 时更好地支持显着非高斯数据。#20653 by Thomas Fan。修复
preprocessing.LabelBinarizer现在在fit中而不是在__init__中验证输入参数。#21434 by Krum Arnaudov。修复 带有
check_inverse=True的preprocessing.FunctionTransformer现在在输入具有混合 dtypes 时提供信息丰富的错误消息。#19916 by Zhehao Liu。修复
preprocessing.KBinsDiscretizer现在更一致地处理 bin 边缘。#14975 by Andreas Müller and #22526 by Meekail Zain。修复 添加了对
preprocessing.KBinsDiscretizer.get_feature_names_out的支持,当encode="ordinal"时。#22735 by Thomas Fan。
sklearn.random_projection#
增强 为
random_projection.GaussianRandomProjection和random_projection.SparseRandomProjection添加了inverse_transform方法和compute_inverse_transform参数。当参数设置为 True 时,在fit期间计算组件的伪逆,并存储为inverse_components_。#21701 by Aurélien Geron。增强
random_projection.SparseRandomProjection和random_projection.GaussianRandomProjection保留numpy.float32的 dtype。#22114 by Takeshi Oura。增强 为
sklearn.random_projection模块中的所有转换器添加了 get_feature_names_out:random_projection.GaussianRandomProjection和random_projection.SparseRandomProjection。#21330 by Loïc Estève。
sklearn.svm#
增强
svm.OneClassSVM,svm.NuSVC,svm.NuSVR,svm.SVC和svm.SVR现在公开了n_iter_,即 libsvm 优化例程的迭代次数。#21408 by Juan Martín Loyola。增强
svm.SVR,svm.SVC,svm.NuSVR,svm.OneClassSVM,svm.NuSVC现在在对偶间隙估计产生非有限参数权重时引发错误。#22149 by Christian Ritter and Norbert Preining。修复
svm.NuSVC,svm.NuSVR,svm.SVC,svm.SVR,svm.OneClassSVM现在在fit中而不是在__init__中验证输入参数。#21436 by Haidar Almubarak。
sklearn.tree#
增强
tree.DecisionTreeClassifier和tree.ExtraTreeClassifier具有新的criterion="log_loss",这等同于criterion="entropy"。#23047 by Christian Lorentzen。修复 修复了
tree.DecisionTreeRegressor的泊松分裂准则中的错误。#22191 by Christian Lorentzen。API 变更
tree.ExtraTreeRegressor的max_features默认值更改为 1.0,tree.ExtraTreeClassifier的默认值更改为"sqrt",这不会改变拟合结果。原始默认值"auto"已弃用,并将在 1.3 版本中移除。将max_features设置为"auto"对tree.DecisionTreeClassifier和tree.DecisionTreeRegressor也已弃用。#22476 by Zhehao Liu。
sklearn.utils#
增强
utils.check_array和utils.multiclass.type_of_target现在接受input_name参数,以便在传入无效输入数据(例如带有 NaN 或无穷大值)时使错误消息更具信息性。#21219 by Olivier Grisel。增强
utils.check_array在传入带有pd.NA的Float32或Float64pandas 扩展数组时返回带有np.nan的 float ndarray。#21278 by Thomas Fan。增强
utils.estimator_html_repr在非受信任的 jupyter notebook 中运行时显示更有用的错误消息。#21316 by Thomas Fan。增强
utils.estimator_html_repr在 HTML 表示的左上角显示一个箭头,以显示元素是可点击的。#21298 by Thomas Fan。增强 带有
dtype=None的utils.check_array在传入具有混合 dtypes 的 pandas DataFrame 时返回数字数组。dtype="numeric"在 DataFrame 具有混合 dtypes 时也会更好地推断 dtype。#22237 by Thomas Fan。增强
utils.check_scalar在显示类型时具有更好的消息。#22218 by Thomas Fan。修复 更改了
utils.check_X_y在 y 为 None 时引发的ValidationError的错误消息,使其与check_requires_y_none估计器检查兼容。#22578 by Claudio Salvatore Arcidiacono。修复
utils.class_weight.compute_class_weight现在只要求y中的所有类别在class_weight中都有权重。当y中存在某个类别但在class_weight中不存在时,仍然会引发错误。#22595 by Thomas Fan。修复
utils.estimator_html_repr对嵌套元估计器进行了改进的可视化。#21310 by Thomas Fan。修复 当
include_boundaries={"left", "right"}且未设置边界时,utils.check_scalar引发错误。#22027 by Marie Lanternier。修复
utils.metaestimators.available_if正确返回可被 pickle 的有界方法。#23077 by Thomas Fan。API 变更
utils.estimator_checks.check_estimator的参数现在称为estimator(以前的名称是Estimator)。#22188 by Mathurin Massias。API 变更
utils.metaestimators.if_delegate_has_method已弃用,并将在 1.3 版本中移除。请改用utils.metaestimators.available_if。#22830 by Jérémie du Boisberranger。
代码和文档贡献者
感谢自 1.0 版本以来为项目的维护和改进做出贡献的所有人,包括
2357juan, Abhishek Gupta, adamgonzo, Adam Li, adijohar, Aditya Kumawat, Aditya Raghuwanshi, Aditya Singh, Adrian Trujillo Duron, Adrin Jalali, ahmadjubair33, AJ Druck, aj-white, Alan Peixinho, Alberto Mario Ceballos-Arroyo, Alek Lefebvre, Alex, Alexandr, Alexandre Gramfort, alexanmv, almeidayoel, Amanda Dsouza, Aman Sharma, Amar pratap singh, Amit, amrcode, András Simon, Andreas Grivas, Andreas Mueller, Andrew Knyazev, Andriy, Angus L’Herrou, Ankit Sharma, Anne Ducout, Arisa, Arth, arthurmello, Arturo Amor, ArturoAmor, Atharva Patil, aufarkari, Aurélien Geron, avm19, Ayan Bag, baam, Bardiya Ak, Behrouz B, Ben3940, Benjamin Bossan, Bharat Raghunathan, Bijil Subhash, bmreiniger, Brandon Truth, Brenden Kadota, Brian Sun, cdrig, Chalmer Lowe, Chiara Marmo, Chitteti Srinath Reddy, Chloe-Agathe Azencott, Christian Lorentzen, Christian Ritter, christopherlim98, Christoph T. Weidemann, Christos Aridas, Claudio Salvatore Arcidiacono, combscCode, Daniela Fernandes, darioka, Darren Nguyen, Dave Eargle, David Gilbertson, David Poznik, Dea María Léon, Dennis Osei, DessyVV, Dev514, Dimitri Papadopoulos Orfanos, Diwakar Gupta, Dr. Felix M. Riese, drskd, Emiko Sano, Emmanouil Gionanidis, EricEllwanger, Erich Schubert, Eric Larson, Eric Ndirangu, ErmolaevPA, Estefania Barreto-Ojeda, eyast, Fatima GASMI, Federico Luna, Felix Glushchenkov, fkaren27, Fortune Uwha, FPGAwesome, francoisgoupil, Frans Larsson, ftorres16, Gabor Berei, Gabor Kertesz, Gabriel Stefanini Vicente, Gabriel S Vicente, Gael Varoquaux, GAURAV CHOUDHARY, Gauthier I, genvalen, Geoffrey-Paris, Giancarlo Pablo, glennfrutiz, gpapadok, Guillaume Lemaitre, Guillermo Tomás Fernández Martín, Gustavo Oliveira, Haidar Almubarak, Hannah Bohle, Hansin Ahuja, Haoyin Xu, Haya, Helder Geovane Gomes de Lima, henrymooresc, Hideaki Imamura, Himanshu Kumar, Hind-M, hmasdev, hvassard, i-aki-y, iasoon, Inclusive Coding Bot, Ingela, iofall, Ishan Kumar, Jack Liu, Jake Cowton, jalexand3r, J Alexander, Jauhar, Jaya Surya Kommireddi, Jay Stanley, Jeff Hale, je-kr, JElfner, Jenny Vo, Jérémie du Boisberranger, Jihane, Jirka Borovec, Joel Nothman, Jon Haitz Legarreta Gorroño, Jordan Silke, Jorge Ciprián, Jorge Loayza, Joseph Chazalon, Joseph Schwartz-Messing, Jovan Stojanovic, JSchuerz, Juan Carlos Alfaro Jiménez, Juan Martin Loyola, Julien Jerphanion, katotten, Kaushik Roy Chowdhury, Ken4git, Kenneth Prabakaran, kernc, Kevin Doucet, KimAYoung, Koushik Joshi, Kranthi Sedamaki, krishna kumar, krumetoft, lesnee, Lisa Casino, Logan Thomas, Loic Esteve, Louis Wagner, LucieClair, Lucy Liu, Luiz Eduardo Amaral, Magali, MaggieChege, Mai, mandjevant, Mandy Gu, Manimaran, MarcoM, Marco Wurps, Maren Westermann, Maria Boerner, MarieS-WiMLDS, Martel Corentin, martin-kokos, mathurinm, Matías, matjansen, Matteo Francia, Maxwell, Meekail Zain, Megabyte, Mehrdad Moradizadeh, melemo2, Michael I Chen, michalkrawczyk, Micky774, milana2, millawell, Ming-Yang Ho, Mitzi, miwojc, Mizuki, mlant, Mohamed Haseeb, Mohit Sharma, Moonkyung94, mpoemsl, MrinalTyagi, Mr. Leu, msabatier, murata-yu, N, Nadirhan Şahin, Naipawat Poolsawat, NartayXD, nastegiano, nathansquan, nat-salt, Nicki Skafte Detlefsen, Nicolas Hug, Niket Jain, Nikhil Suresh, Nikita Titov, Nikolay Kondratyev, Ohad Michel, Oleksandr Husak, Olivier Grisel, partev, Patrick Ferreira, Paul, pelennor, PierreAttard, Piet Brömmel, Pieter Gijsbers, Pinky, poloso, Pramod Anantharam, puhuk, Purna Chandra Mansingh, QuadV, Rahil Parikh, Randall Boyes, randomgeek78, Raz Hoshia, Reshama Shaikh, Ricardo Ferreira, Richard Taylor, Rileran, Rishabh, Robin Thibaut, Rocco Meli, Roman Feldbauer, Roman Yurchak, Ross Barnowski, rsnegrin, Sachin Yadav, sakinaOuisrani, Sam Adam Day, Sanjay Marreddi, Sebastian Pujalte, SEELE, SELEE, Seyedsaman (Sam) Emami, ShanDeng123, Shao Yang Hong, sharmadharmpal, shaymerNaturalint, Shuangchi He, Shubhraneel Pal, siavrez, slishak, Smile, spikebh, sply88, Srinath Kailasa, Stéphane Collot, Sultan Orazbayev, Sumit Saha, Sven Eschlbeck, Sven Stehle, Swapnil Jha, Sylvain Marié, Takeshi Oura, Tamires Santana, Tenavi, teunpe, Theis Ferré Hjortkjær, Thiruvenkadam, Thomas J. Fan, t-jakubek, toastedyeast, Tom Dupré la Tour, Tom McTiernan, TONY GEORGE, Tyler Martin, Tyler Reddy, Udit Gupta, Ugo Marchand, Varun Agrawal, Venkatachalam N, Vera Komeyer, victoirelouis, Vikas Vishwakarma, Vikrant khedkar, Vladimir Chernyy, Vladimir Kim, WeijiaDu, Xiao Yuan, Yar Khine Phyo, Ying Xiong, yiyangq, Yosshi999, Yuki Koyama, Zach Deane-Mayer, Zeel B Patel, zempleni, zhenfisher, 赵丰 (Zhao Feng)