版本 1.1#
有关此版本主要亮点的简短说明,请参阅 scikit-learn 1.1 的发行亮点。
变更日志图例
主要功能 之前无法实现的重要功能。
功能 之前无法实现的功能。
效率提升 现有功能现在可能不需要那么多计算或内存。
增强 各种各样的次要改进。
修复 之前无法按文档说明工作(或根据合理预期)的内容现在应该可以工作了。
API 变更 您需要更改代码才能在将来获得相同的效果;或者某个功能将在将来被移除。
版本 1.1.3#
2022 年 10 月
此错误修复版本仅包含与最新 SciPy 版本(>= 1.9.2)兼容性的修复。值得注意的更改包括
修复 在 scikit-learn 轮子中包含
msvcp140.dll,因为它已从最新的 SciPy 轮子中移除。 #24631 由 Chiara Marmo 完成。增强 为 Python 3.11 创建轮子。 #24446 由 Chiara Marmo 完成。
其他错误修复将在接下来的 1.2 版本中提供,该版本将在未来几周内发布。
请注意,此版本已放弃对 Windows 上 32 位 Python 的支持。这是因为 SciPy 1.9.2 也放弃了对该平台的支持。建议 Windows 用户改用 64 位版本的 Python。
版本 1.1.2#
2022 年 8 月
更改的模型#
使用相同数据和参数拟合的以下估计器和函数,可能会生成与先前版本不同的模型。这通常是由于建模逻辑(错误修复或增强)或随机抽样过程中的更改引起的。
修复
manifold.TSNE现在在使用perplexity>=n_samples拟合时会抛出ValueError,以确保算法的数学正确性。 #10805 由 Mathias Andersen 和 #23471 由 Meekail Zain 完成。
变更日志#
修复 对于具有无效参数的元估计器,将显示默认的 HTML 表示。 #24015 由 Thomas Fan 完成。
修复 为其后端在 1.1 中已更改的估计器和函数添加了对 F 连续数组的支持。 #23990 由 Julien Jerphanion 完成。
修复 现在可以为 MacOS 10.9 及更高版本提供轮子。 #23833 由 Thomas Fan 完成。
sklearn.base#
修复
base.BaseEstimator类的get_params方法现在支持具有type类型参数且具有get_params方法的估计器。 #24017 由 Henry Sorsky 完成。
sklearn.cluster#
修复 修复了
cluster.Birch中的一个错误,该错误在数据集存在重复项时拆分节点时可能会触发错误。 #23395 由 Jérémie du Boisberranger 完成。
sklearn.feature_selection#
修复 当估计器为
feature_selection.SelectFromModel,且l1_ratio等于 1 时,如果估计器是linear_model.ElasticNet或linear_model.ElasticNetCV或者linear_model.LassoCV,则默认选择阈值将设置为 1e-5。 #23636 由 Hao Chun Chang 完成。
sklearn.impute#
修复 当数据类型为 object 时,
impute.SimpleImputer在transform中使用fit中看到的 dtype。 #22063 由 Thomas Fan 完成。
sklearn.linear_model#
修复 使用考虑数据类型的容差来验证 Gram 矩阵(用户传入或预计算)。 #22059 由 Malte S. Kurz 完成。
修复 修复了
linear_model.LogisticRegression在solver="newton-cg",fit_intercept=True和单个特征的情况下的错误。 #23608 由 Tom Dupre la Tour 完成。
sklearn.manifold#
修复
manifold.TSNE现在在使用perplexity>=n_samples拟合时会抛出ValueError,以确保算法的数学正确性。 #10805 由 Mathias Andersen 和 #23471 由 Meekail Zain 完成。
sklearn.metrics#
修复 修复了
metrics.coverage_error针对一维数组输入的错误消息。 #23548 由 Hao Chun Chang 完成。
sklearn.preprocessing#
修复
preprocessing.OrdinalEncoder.inverse_transform正确处理unknown_value或encoded_missing_value为nan的用例。 #24087 由 Thomas Fan 完成。
sklearn.tree#
修复 修复了
tree.DecisionTreeRegressor和tree.DecisionTreeClassifier在拟合过程中出现的无效内存访问错误。 #23273 由 Thomas Fan 完成。
版本 1.1.1#
2022年5月
变更日志#
增强 提升了导入
model_selection.HalvingGridSearchCV、model_selection.HalvingRandomSearchCV或impute.IterativeImputer(未导入实验性标志) 时的错误消息。 #23194 由 Thomas Fan 完成。增强 在 doc/conf.py 中添加了一个扩展,用于自动生成处理 NaN 值的估计器列表。 #23198 由 Lise Kleiber、Zhehao Liu 和 Chiara Marmo 完成。
sklearn.datasets#
修复 通过不传递
timeout参数来避免datasets.fetch_openml中的超时问题,#23358,由 Loïc Estève 完成。
sklearn.decomposition#
修复 当
n_samples == n_components时,避免decomposition.IncrementalPCA中出现虚假警告。 #23264,由 Lucy Liu 完成。
sklearn.feature_selection#
修复
feature_selection.SelectFromModel的partial_fit方法现在对max_features和feature_names_in参数进行验证。 #23299,由 Long Bao 完成。
sklearn.metrics#
修复 修复了
metrics.precision_recall_curve以计算 100% 召回率下的精确率-召回率。精确率-召回率曲线现在显示对应于始终预测正类的分类器的最后一个点:召回率=100% 和精确率=类别平衡。 #23214,由 Stéphane Collot 和 Max Baak 完成。
sklearn.preprocessing#
修复 当
include_bias设置为 False 时,degree等于 0 的preprocessing.PolynomialFeatures将引发错误;当include_bias设置为 True 时,输出单个常量数组。 #23370,由 Zhehao Liu 完成。
sklearn.tree#
sklearn.utils#
修复
utils.class_weight.compute_sample_weight现在可以与稀疏y一起使用。 #23115,由 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+。
已更改的模型#
使用相同数据和参数拟合的以下估计器和函数,可能会生成与先前版本不同的模型。这通常是由于建模逻辑(错误修复或增强)或随机抽样过程中的更改引起的。
效率提升
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 由 Thomas Fan 完成。修复 现在,对于
cluster.SpectralClustering和manifold.SpectralEmbedding,使用'amg'或'lobpcg'求解器时,特征向量初始化现在从高斯分布中采样。此更改提高了求解器的数值稳定性,但可能会导致不同的模型。修复
feature_selection.f_regression和feature_selection.r_regression现在默认返回有限分数,而不是在某些极端情况下返回np.nan和np.inf。如果您确实想要获取非有限值并保持旧的行为,可以使用force_finite=False。修复 当将所有非字符串列(例如 MultiIndex)的 Pandas DataFrame 传递到 Estimator 时,不再发出警告。对于具有非字符串列的 DataFrame,Estimator 将继续忽略列名。要定义
feature_names_in_,列必须全部为字符串。#22410 由 Thomas Fan 完成。修复
preprocessing.KBinsDiscretizer稍微更改了对 bin 边界的处理,这可能会导致使用相同数据时编码不同。修复
calibration.calibration_curve稍微更改了对 bin 边界的处理,这可能会导致使用相同数据时输出曲线不同。修复
discriminant_analysis.LinearDiscriminantAnalysis现在使用正确的方差缩放系数,这可能会导致模型行为不同。修复 现在可以使用
prefit=True调用feature_selection.SelectFromModel.fit和feature_selection.SelectFromModel.partial_fit。当prefit=True时,estimators_将是estimator的深拷贝。#23271 由 Guillaume Lemaitre 完成。
变更日志#
效率提升 针对密集 float64 数据集的成对距离约简的底层例程已被重构。以下函数和估计器现在受益于改进的硬件可扩展性和加速性能
例如,在笔记本电脑上,
sklearn.neighbors.NearestNeighbors.kneighbors和sklearn.neighbors.NearestNeighbors.radius_neighbors的速度分别最多可提高 20 倍和 5 倍。此外,这两种算法的实现现在适用于具有多个内核的机器,使其可用于包含数百万个样本的数据集。
#21987、#22064、#22065、#22288 和 #22320 由 Julien Jerphanion 完成。
增强 当某些输入包含意外的
NaN或无限值时,所有 scikit-learn 模型现在都会生成更具信息量的错误消息。特别是,消息包含输入名称(“X”、“y”或“sample_weight”),如果在X中发现意外的NaN值,则错误消息会建议可能的解决方案。#21219 由 Olivier Grisel 完成。增强所有 scikit-learn 模型现在在使用
set_params设置无效超参数时会生成更具信息量的错误消息。 #21542 由 Olivier Grisel 贡献。增强移除 HTML 表示中的随机唯一标识符。通过此更改,只要单元格按相同的顺序运行,Jupyter Notebook 就可以重现。 #23098 由 Thomas Fan 贡献。
修复将
non_deterministic标签设置为True的估计器将跳过check_methods_sample_order_invariance和check_methods_subset_invariance测试。 #22318 由 刘哲昊 贡献。API 变更通过
loss参数使用对数损失(又名二项式或多项式偏差)的选项已变得更加一致。推荐的方式是将值设置为"log_loss"。旧的选项名称仍然有效并生成相同的模型,但已弃用,并将在 1.3 版中移除。对于
ensemble.GradientBoostingClassifier,loss参数名称“deviance”已弃用,推荐使用新的名称“log_loss”,现在它是默认值。 #23036 由 Christian Lorentzen 贡献。对于
ensemble.HistGradientBoostingClassifier,loss参数名称“auto”、“binary_crossentropy”和“categorical_crossentropy”已弃用,推荐使用新的名称“log_loss”,现在它是默认值。 #23040 由 Christian Lorentzen 贡献。对于
linear_model.SGDClassifier,loss参数名称“log”已弃用,推荐使用新的名称“log_loss”。 #23046 由 Christian Lorentzen 贡献。
API 变更估计器的丰富 HTML 表示现在在 Jupyter Notebook 中默认启用。可以通过在
sklearn.set_config中设置display='text'来将其停用。 #22856 由 Jérémie du Boisberranger 贡献。
sklearn.calibration#
增强
calibration.calibration_curve接受参数pos_label来指定正类标签。 #21032 由 Guillaume Lemaitre 贡献。增强
calibration.CalibratedClassifierCV.fit现在支持传递fit_params,这些参数将传递给base_estimator。 #18170 由 Benjamin Bossan 贡献。增强
calibration.CalibrationDisplay接受参数pos_label以将此信息添加到绘图中。 #21038 由 Guillaume Lemaitre 贡献。修复
calibration.calibration_curve现在更一致地处理箱边缘。 #14975 由 Andreas Müller 和 #22526 由 Meekail Zain 贡献。API 变更
calibration.calibration_curve的normalize参数现已弃用,并将在 1.3 版中移除。建议使用正确的概率(即分类器的 predict_proba 正类)用于y_prob。 #23095 由 Jordan Silke 贡献。
sklearn.cluster#
主要功能 引入二分 K 均值算法的
cluster.BisectingKMeans#20031,由 Michal Krawczyk、Tom Dupre la Tour 和 Jérémie du Boisberranger 贡献。增强
cluster.SpectralClustering和cluster.spectral_clustering现在包含新的'cluster_qr'方法,该方法作为现有'kmeans'和'discrete'方法的替代方案,在嵌入空间中对样本进行聚类。更多详情请参见cluster.spectral_clustering。 #21148,由 Andrew Knyazev 贡献。增强 为
cluster.Birch、cluster.FeatureAgglomeration、cluster.KMeans、cluster.MiniBatchKMeans添加了 get_feature_names_out。 #22255,由 Thomas Fan 贡献。增强
cluster.SpectralClustering现在在传递给n_clusters、n_init、gamma、n_neighbors、eigen_tol或degree无效值时,会引发一致的错误消息。 #21881,由 Hugo Vassard 贡献。增强
cluster.AffinityPropagation现在即使模型没有完全收敛,也会返回聚类中心和标签(如果存在)。当返回这些可能退化的聚类中心和标签时,会显示一条新的警告消息。如果未构造任何聚类中心,则聚类中心保持为空列表,标签设置为-1,并显示原始警告消息。 #22217,由 Meekail Zain 贡献。效率 在
cluster.KMeans中,默认的algorithm现在是"lloyd",它是完整的经典 EM 风格算法。"auto"和"full"已弃用,将在 1.3 版本中删除。它们现在是"lloyd"的别名。之前的默认值是"auto",它依赖于 Elkan 算法。Lloyd 算法比 Elkan 算法使用更少的内存,在许多数据集上速度更快,并且结果相同,因此进行了更改。 #21735,由 Aurélien Geron 贡献。修复
cluster.KMeans的init参数现在正确支持类数组输入和 NumPy 字符串标量。 #22154,由 Thomas Fan 贡献。
sklearn.compose#
修复
compose.ColumnTransformer现在从__init__和set_params方法中删除了验证错误。 #22537,由 iofall 和 Arisa Y. 贡献。修复 当使用
slice指定列时,compose.ColumnTransformer中的 get_feature_names_out 功能已损坏。此问题已在 #22775 和 #22913 中修复,由 randomgeek78 贡献。
sklearn.covariance#
修复
covariance.GraphicalLassoCV现在接受参数alphas的 NumPy 数组。 #22493,由 Guillaume Lemaitre 贡献。
sklearn.cross_decomposition#
增强
inverse_transform方法已得到cross_decomposition.PLSRegression、cross_decomposition.PLSCanonical和cross_decomposition.CCA的增强,现在允许在给出Y参数时重建X目标。 #19680 by Robin Thibaut.增强 为
cross_decomposition模块中的所有转换器添加了 get_feature_names_out: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 由 Rileran 完成。修复
datasets.fetch_covtype现在是并发安全的:数据下载到临时目录,然后再移动到数据目录。#23113 由 Ilion Beyst 完成。API 变更
datasets.make_sparse_coded_signal现在接受一个参数data_transposed来显式指定矩阵X的形状。默认行为True是返回一个转置矩阵X,其形状为(n_features, n_samples)。默认值将在 1.3 版本中更改为False。#21425 由 Gabriel Stefanini Vicente 完成。
sklearn.decomposition#
主要功能 添加了一个新的估计器
decomposition.MiniBatchNMF。它是一个更快但精度较低的非负矩阵分解版本,更适合大型数据集。#16948 由 Chiara Marmo、Patricio Cerda 和 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 由 Takeshi Oura 完成。增强功能
decomposition.PCA公开了参数n_oversamples来调整utils.extmath.randomized_svd并获得在特征数量很大的情况下准确的结果。#21109 由 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的数据类型。 #22111 由 Takeshi Oura 完成。增强
decomposition.TruncatedSVD现在允许n_components == n_features,如果algorithm='randomized'。 #22181 由 Zach Deane-Mayer 完成。增强 为
decomposition模块中的所有转换器添加了 get_feature_names_out: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 由 Thomas Fan 完成。增强
decomposition.TruncatedSVD公开了参数n_oversamples和power_iteration_normalizer来微调utils.extmath.randomized_svd,并在特征数量很大、矩阵秩很高或矩阵的其他特征使低秩逼近困难时获得准确的结果。 #21705 由 Jay S. Stanley III 完成。增强
decomposition.PCA公开了参数power_iteration_normalizer来微调utils.extmath.randomized_svd,并在低秩逼近困难时获得更准确的结果。 #21705 由 Jay S. Stanley III 完成。修复
decomposition.FastICA现在在fit方法而不是__init__方法中验证输入参数。 #21432 由 Hannah Bohle 和 Maren Westermann 完成。修复
decomposition.FastICA现在可以接受np.float32数据,无需静默向上转换。数据类型由fit和fit_transform保留,主要拟合属性使用与训练数据精度相同的 dtype。 #22806 由 Jihane Bennis 和 Olivier Grisel 完成。修复
decomposition.FactorAnalysis现在在fit中而不是__init__中验证输入参数。 #21713 由 Haya 和 Krum Arnaudov 完成。修复
decomposition.KernelPCA现在在fit中而不是__init__中验证输入参数。 #21567 由 Maggie Chege 完成。修复
decomposition.PCA和decomposition.IncrementalPCA更安全地使用协方差矩阵的逆来计算精度,如果self.noise_variance_为零。 #22300 由 Meekail Zain 完成,以及 #15948 由 @sysuresh 完成。修复 大大减少了在调用
fit或fit_transform时decomposition.PCA的峰值内存使用。 #22553 由 Meekail Zain 完成。API 变更
decomposition.FastICA现在支持单位方差白化。其whiten参数的默认值将从True(其行为类似于'arbitrary-variance')更改为'unit-variance'(在 1.3 版本中)。 #19490 由 Facundo Ferrin 和 Julien Jerphanion 完成。
sklearn.discriminant_analysis#
增强 向
discriminant_analysis.LinearDiscriminantAnalysis添加了 get_feature_names_out。 #22120 由 Thomas Fan 完成。修复
discriminant_analysis.LinearDiscriminantAnalysis现在使用正确的方差缩放系数,这可能会导致不同的模型行为。 #15984 由 Okon Samuel 完成,以及 #22696 由 Meekail Zain 完成。
sklearn.dummy#
修复
dummy.DummyRegressor在fit期间不再覆盖constant参数。 #22486 由 Thomas Fan 完成。
sklearn.ensemble#
主要功能 向
ensemble.HistGradientBoostingRegressor添加了附加选项loss="quantile"用于建模分位数。分位数级别可以使用新的参数quantile指定。 #21800 和 #20567 由 Christian Lorentzen 完成。效率提升
ensemble.GradientBoostingClassifier和ensemble.GradientBoostingRegressor的fit现在使用参数force_all_finite=False调用utils.check_array,用于非初始预热启动运行,因为它之前已经过检查。 #22159 由 Geoffrey Paris 完成。增强 由于新的私有损失函数模块,
ensemble.HistGradientBoostingClassifier速度更快,尤其是在二元分类和多类分类问题上。#20811,#20567 和 #21814 由 Christian Lorentzen贡献。增强 在
ensemble.StackingClassifier和ensemble.StackingRegressor中,添加了使用 `cv="prefit"` 的预训练模型的支持。#16748 由 Siqi He 贡献,#22215 由 Meekail Zain 贡献。增强
ensemble.RandomForestClassifier和ensemble.ExtraTreesClassifier增加了新的参数criterion="log_loss",它等效于criterion="entropy"。#23047 由 Christian Lorentzen贡献。增强 为
ensemble.VotingClassifier,ensemble.VotingRegressor,ensemble.StackingClassifier和ensemble.StackingRegressor添加了 get_feature_names_out 方法。#22695 和 #22697 由 Thomas Fan贡献。增强
ensemble.RandomTreesEmbedding现在有一个信息丰富的 get_feature_names_out 函数,该函数在输出特征名称中包含树索引和叶索引。#21762 由 Zhehao Liu 和 Thomas Fan贡献。效率提升 在多进程设置下,拟合
ensemble.RandomForestClassifier,ensemble.RandomForestRegressor,ensemble.ExtraTreesClassifier,ensemble.ExtraTreesRegressor和ensemble.RandomTreesEmbedding现在更快了,尤其是在启用warm_start的后续拟合中。#22106 由 Pieter Gijsbers贡献。修复 更改
ensemble.GradientBoostingClassifier和ensemble.GradientBoostingRegressor中的参数validation_fraction,以便在传入非浮点数作为参数时引发错误。#21632 由 Genesis Valencia贡献。修复 在
ensemble.HistGradientBoostingClassifier和ensemble.HistGradientBoostingRegressor中,删除了当 CPU 资源使用受限时(例如,在 docker 容器中使用 cgroups 配额)可能导致 CPU 资源过度订阅的潜在来源。#22566 由 Jérémie du Boisberranger贡献。修复 当拟合带有非默认
scoring参数和启用 early_stopping 的 pandas DataFrame 时,ensemble.HistGradientBoostingClassifier和ensemble.HistGradientBoostingRegressor不会再发出警告。#22908 由 Thomas Fan贡献。修复 修复了
ensemble.StackingClassifier和ensemble.StackingRegressor的 HTML 表示。 #23097 由 Thomas Fan 完成。API 变更
ensemble.GradientBoostingClassifier和ensemble.GradientBoostingRegressor的属性loss_已弃用,并将从 1.3 版本中移除。 #23079 由 Christian Lorentzen 完成。API 变更 将
ensemble.RandomForestRegressor的max_features默认值更改为 1.0,并将ensemble.RandomForestClassifier的默认值更改为"sqrt"。请注意,这些更改与之前的拟合结果相同,但更容易理解。旧的默认值"auto"已弃用,并将从 1.3 版本中移除。相同的更改也应用于ensemble.ExtraTreesRegressor和ensemble.ExtraTreesClassifier。 #20803 由 Brian Sun 完成。效率提升 通过跳过重复的输入检查,提高了
ensemble.IsolationForest的运行时性能。 #23149 由 Zhehao Liu 完成。
sklearn.feature_extraction#
新增功能
feature_extraction.FeatureHasher现在支持 PyPy。 #23023 由 Thomas Fan 完成。修复
feature_extraction.FeatureHasher现在在transform方法中而不是__init__方法中验证输入参数。 #21573 由 Hannah Bohle 和 Maren Westermann 完成。修复
feature_extraction.text.TfidfVectorizer现在不再像我们的 API 所要求的那样在__init__中创建一个feature_extraction.text.TfidfTransformer。 #21832 由 Guillaume Lemaitre 完成。
sklearn.feature_selection#
新增功能 为
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 由 murata-yu 完成。功能 为
feature_selection.SelectFromModel的max_features参数添加了传递可调用对象的能力。还引入了新的属性max_features_,该属性在fit过程中根据max_features和数据推断得出。如果max_features是一个整数,则max_features_ = max_features。如果max_features是一个可调用对象,则max_features_ = max_features(X)。 #22356 由 Meekail Zain 完成。增强
feature_selection.GenericUnivariateSelect保留 float32 数据类型。 #18482 由 Thierry Gameiro 和 Daniel Kharsa 完成, #22370 由 Meekail Zain 完成。增强 为
feature_selection.f_regression和feature_selection.r_regression添加了参数force_finite。此参数允许在特征或目标值恒定,或特征与目标值完全相关(仅限于 F 统计量)的情况下强制输出为有限值。 #17819 由 Juan Carlos Alfaro Jiménez 完成。效率 提高了
feature_selection.chi2使用布尔数组时的运行时性能。 #22235 由 Thomas Fan 完成。效率 减少了
feature_selection.chi2的内存使用量。 #21837 由 Louis Wagner 完成。
sklearn.gaussian_process#
修复
gaussian_process.GaussianProcessRegressor的predict和sample_y方法现在在单目标和多目标情况下,以及normalize_y=False和normalize_y=True两种情况下都返回正确形状的数组。 #22199 由 Guillaume Lemaitre、Aidar Shakerimoff 和 Tenavi Nakamura-Zimmerer 完成。修复 如果通过
kernel传递CompoundKernel,gaussian_process.GaussianProcessClassifier现在会抛出一个更具信息量的错误。 #22223 由 MarcoM 完成。
sklearn.impute#
增强
impute.SimpleImputer现在会在训练集中由于缺少任何观察值而跳过特征时,使用特征名称发出警告。 #21617 由 Christian Ritter 完成。增强 为
impute.SimpleImputer添加了对pd.NA的支持。 #21114 由 Ying Xiong 完成。增强 为
impute.SimpleImputer、impute.KNNImputer、impute.IterativeImputer和impute.MissingIndicator添加了 get_feature_names_out。 #21078 由 Thomas Fan 完成。API变更
verbose参数已弃用impute.SimpleImputer。删除空列时,将始终发出警告。#21448 由 Oleh Kozynets 和 Christian Ritter 完成。
sklearn.inspection#
新增功能 添加了一个显示,通过使用
inspection.DecisionBoundaryDisplay.from_estimator方法来绘制分类器的决策边界。#16061 由 Thomas Fan 完成。增强功能 在
inspection.PartialDependenceDisplay.from_estimator中,允许kind接受一个字符串列表,以指定为每个特征交互绘制哪种类型的图。#19438 由 Guillaume Lemaitre 完成。增强功能
inspection.PartialDependenceDisplay.from_estimator,inspection.PartialDependenceDisplay.plot和inspection.plot_partial_dependence现在支持通过设置参数centered来绘制中心化个体条件期望 (cICE) 和中心化 PDP 曲线。#18310 由 Johannes Elfner 和 Guillaume Lemaitre 完成。
sklearn.isotonic#
增强功能 向
isotonic.IsotonicRegression添加了 get_feature_names_out。#22249 由 Thomas Fan 完成。
sklearn.kernel_approximation#
sklearn.linear_model#
新增功能
linear_model.ElasticNet,linear_model.ElasticNetCV,linear_model.Lasso和linear_model.LassoCV支持针对稀疏输入X的sample_weight。#22808 由 Christian Lorentzen 完成。新增功能 使用
solver="lsqr"的linear_model.Ridge现在支持使用fit_intercept=True来拟合稀疏输入。#22950 由 Christian Lorentzen 完成。增强
linear_model.QuantileRegressor现在支持基于高级求解器的稀疏输入。 #21086 由 Venkatachalam Natchiappan贡献。此外,这些求解器现在从一开始就使用 CSC 矩阵,从而加快了拟合速度。 #22206 由 Christian Lorentzen贡献。增强 对于
solvers="lbfgs"和solver="newton-cg",linear_model.LogisticRegression的速度更快,这得益于新的私有损失函数模块,尤其体现在二元问题和多类别问题上。在多类别情况下,这些求解器的内存消耗也得到了降低,因为目标现在是标签编码(映射到整数),而不是标签二值化(独热编码)。类别越多,好处越大。 #21808,#20567 和 #21814 由 Christian Lorentzen贡献。增强 对于
solvers="lbfgs",linear_model.GammaRegressor、linear_model.PoissonRegressor和linear_model.TweedieRegressor的速度更快。 #22548,#21808 和 #20567 由 Christian Lorentzen贡献。增强 将
linear_model.RANSACRegressor中的参数base_estimator重命名为estimator,以提高可读性和一致性。base_estimator已弃用,将在 1.3 版本中移除。 #22062 由 Adrian Trujillo贡献。增强
linear_model.ElasticNet和其他使用坐标下降的线性模型类,在产生非有限参数权重时会显示错误消息。 #22148 由 Christian Ritter 和 Norbert Preining贡献。增强
linear_model.ElasticNet和linear_model.Lasso现在在传递l1_ratio、alpha、max_iter和tol的无效值时,会引发一致的错误消息。 #22240 由 Arturo Amor贡献。增强
linear_model.BayesianRidge和linear_model.ARDRegression现在保留 float32 数据类型。 #9087 由 Arthur Imbert贡献,以及 #22525 由 Meekail Zain贡献。增强
linear_model.RidgeClassifier现在支持多标签分类。 #19689 由 Guillaume Lemaitre贡献。增强
linear_model.RidgeCV和linear_model.RidgeClassifierCV现在在传递alphas的无效值时,会引发一致的错误消息。 #21606 由 Arturo Amor贡献。增强
linear_model.Ridge和linear_model.RidgeClassifier现在在传递alpha、max_iter和tol的无效值时,会引发一致的错误消息。 #21341 由 Arturo Amor贡献。增强
linear_model.orthogonal_mp_gram保持了numpy.float32的数据类型。 #22002 由 Takeshi Oura 完成。修复
linear_model.LassoLarsIC现在可以正确计算 AIC 和 BIC。当n_features > n_samples以及未提供噪声方差时,现在会抛出错误。 #21481 由 Guillaume Lemaitre 和 Andrés Babino 完成。修复
linear_model.TheilSenRegressor现在在fit方法而不是__init__方法中验证输入参数max_subpopulation。 #21767 由 Maren Westermann 完成。修复
linear_model.ElasticNetCV现在在l1_ratio=0时会产生正确的警告。 #21724 由 Yar Khine Phyo 完成。修复
linear_model.LogisticRegression和linear_model.LogisticRegressionCV现在设置n_iter_属性的形状符合文档字符串,并且与在 one-vs-rest 设置中使用其他求解器获得的形状一致。之前,它只记录每个二元子问题的迭代次数的最大值,而现在则记录所有次数。 #21998 由 Olivier Grisel 完成。修复
linear_model.TweedieRegressor的属性family不再在__init__中进行验证。相反,此(私有)属性在linear_model.GammaRegressor、linear_model.PoissonRegressor和linear_model.TweedieRegressor中已弃用,并将在 1.3 版本中移除。 #22548 由 Christian Lorentzen 完成。修复 当输入为稀疏矩阵时,
linear_model.LinearRegression的coef_和intercept_属性现在在存在样本权重的情况下可以正确计算。 #22891 由 Jérémie du Boisberranger 完成。修复 当输入为稀疏矩阵时,使用
solver="sparse_cg"和solver="lbfgs"的linear_model.Ridge的coef_和intercept_属性现在在存在样本权重的情况下可以正确计算。 #22899 由 Jérémie du Boisberranger 完成。修复 启用提前停止时,
linear_model.SGDRegressor和linear_model.SGDClassifier现在可以正确计算验证误差。 #23256 由 Zhehao Liu 完成。API 变更
linear_model.LassoLarsIC现在将noise_variance作为参数公开,以便提供噪声方差的估计值。当n_features > n_samples且无法计算噪声方差的估计值时,这尤其重要。 #21481 由 Guillaume Lemaitre 完成。
sklearn.manifold#
新增功能
manifold.Isomap现在通过radius参数支持基于半径的邻居。 #19794 由 刘哲昊贡献。改进
manifold.spectral_embedding和manifold.SpectralEmbedding支持np.float32数据类型,并将保留此数据类型。 #21534 由 Andrew Knyazev贡献。改进 为
manifold.Isomap和manifold.LocallyLinearEmbedding添加了 get_feature_names_out。 #22254 由 Thomas Fan贡献。改进 为
manifold.TSNE构造函数添加了metric_params参数,用于提供距离度量方法的附加参数。 #21805 由 Jeanne Dionisi贡献, #22685 由 Meekail Zain贡献。改进
manifold.trustworthiness在n_neighbours >= n_samples / 2时抛出错误,以确保函数的正确支持。 #18832 由 Hong Shao Yang贡献, #23033 由 Meekail Zain贡献。修复
manifold.spectral_embedding现在在特征向量求解器lobpcg和amg中使用高斯分布代替之前的[0, 1]均匀分布作为随机初始近似值,以提高数值稳定性。 #21565 由 Andrew Knyazev贡献。
sklearn.metrics#
新增功能
metrics.r2_score和metrics.explained_variance_score有一个新的force_finite参数。将此参数设置为False将在完美预测或常数y_true的情况下返回实际的非有限分数,而不是当前默认返回的有限近似值(分别为1.0和0.0)。 #17266 由 Sylvain Marié贡献。新增功能
metrics.d2_pinball_score和metrics.d2_absolute_error_score分别计算了Pinball损失和绝对误差的\(D^2\)回归分数。metrics.d2_absolute_error_score是metrics.d2_pinball_score在固定分位数参数alpha=0.5时的特例,方便使用和发现。\(D^2\)分数是r2_score的推广,可以解释为解释的偏差分数。 #22118 由 Ohad Michel贡献。改进
metrics.top_k_accuracy_score在y_true为二元且y_score为二维时,抛出了改进的错误消息。 #22284 由 Thomas Fan贡献。增强
metrics.roc_auc_score现在支持多分类情况下average=None(当multiclass='ovr'时),这将返回每个类别的得分。 #19158 由 Nicki Skafte 完成。增强 为
metrics.ConfusionMatrixDisplay.from_estimator、metrics.ConfusionMatrixDisplay.from_predictions和metrics.ConfusionMatrixDisplay.plot添加了im_kw参数。在绘制混淆矩阵时,im_kw参数将传递给matplotlib.pyplot.imshow调用。 #20753 由 Thomas Fan 完成。修复
metrics.silhouette_score现在支持使用整数作为预计算距离的输入。 #22108 由 Thomas Fan 完成。修复 修复了
metrics.normalized_mutual_info_score中的一个错误,该错误可能返回无界值。 #22635 由 Jérémie du Boisberranger 完成。修复 修复了当真实标签全部为负值时,
metrics.precision_recall_curve和metrics.average_precision_score的错误。 #19085 由 Varun Agrawal 完成。API变更
metrics.SCORERS现已弃用,并将在 1.3 版本中移除。请使用metrics.get_scorer_names获取所有可用评分器的名称。 #22866 由 Adrin Jalali 完成。API变更
metrics.mean_absolute_percentage_error的参数sample_weight和multioutput现在仅接受关键字参数,符合 SLEP009。已引入弃用周期。 #21576 由 Paul-Emile Dugnat 完成。API变更
metrics.DistanceMetric的"wminkowski"度量已弃用,并将在 1.3 版本中移除。现有的"minkowski"度量现在接受可选的w参数用于权重。此弃用旨在与 SciPy 1.8 的约定保持一致。 #21873 由 Yar Khine Phyo 完成。API变更
metrics.DistanceMetric已从sklearn.neighbors移动到sklearn.metrics。出于向后兼容性考虑,使用neighbors.DistanceMetric进行导入仍然有效,但此别名将在 1.3 版本中移除。 #21177 由 Julien Jerphanion 完成。
sklearn.mixture#
增强
mixture.GaussianMixture和mixture.BayesianGaussianMixture现在可以使用 k-means++ 和随机数据点进行初始化。 #20408 由 Gordon Walsh、Alberto Ceballos 和 Andres Rios 完成。修复 修复了一个错误,该错误在提供
precisions_init时,通过取其平方根来正确初始化mixture.GaussianMixture中的precisions_cholesky_。 #22058 由 Guillaume Lemaitre 完成。修复
mixture.GaussianMixture现在更安全地对weights_进行归一化,防止在使用n_components=1调用mixture.GaussianMixture.sample时出现舍入误差。 #23034 由 Meekail Zain 完成。
sklearn.model_selection#
增强现在可以在所有具有
scoring参数的模型选择工具中传递scoring="matthews_corrcoef"来使用马修斯相关系数 (MCC)。 #22203 由 Olivier Grisel 完成。增强当所有分割的拟合都失败时,在交叉验证期间引发错误。类似地,当所有模型和所有分割的拟合都失败时,在网格搜索期间引发错误。 #21026 由 Loïc Estève 完成。
修复
model_selection.GridSearchCV,model_selection.HalvingGridSearchCV现在在fit方法而不是__init__方法中验证输入参数。 #21880 由 Mrinal Tyagi 完成。修复
model_selection.learning_curve现在支持使用回归器的partial_fit。 #22982 由 Thomas Fan 完成。
sklearn.multiclass#
增强
multiclass.OneVsRestClassifier现在支持verbose参数,以便可以查看拟合进度。 #22508 由 Chris Combs 完成。修复 当内部分类器只有 predict_proba 时,
multiclass.OneVsOneClassifier.predict返回正确的预测结果。 #22604 由 Thomas Fan 完成。
sklearn.neighbors#
增强 向
neighbors.RadiusNeighborsTransformer、neighbors.KNeighborsTransformer和neighbors.NeighborhoodComponentsAnalysis添加了 get_feature_names_out。 #22212 由 Meekail Zain 完成。修复
neighbors.KernelDensity现在在fit方法而不是__init__方法中验证输入参数。 #21430 由 Desislava Vasileva 和 Lucy Jimenez 完成。修复 当首先使用传递给
weights参数的可调用对象构造KNeighborsRegressor时,neighbors.KNeighborsRegressor.predict现在可以正确处理类似数组的输入。 #22687 由 Meekail Zain 完成。
sklearn.neural_network#
增强 当优化器产生非有限参数权重时,
neural_network.MLPClassifier和neural_network.MLPRegressor会显示错误消息。 #22150 由 Christian Ritter 和 Norbert Preining 完成。增强 向
neural_network.BernoulliRBM添加了 get_feature_names_out。 #22248 由 Thomas Fan 完成。
sklearn.pipeline#
增强 为
pipeline.FeatureUnion添加了“直通” (passthrough) 支持。将转换器设置为“直通” 将直接传递特征,不做任何更改。 #20860 由 Shubhraneel Pal 完成。修复
pipeline.Pipeline现在不再在__init__中验证超参数,而是在.fit()中验证。 #21888 由 iofall 和 Arisa Y. 完成。修复
pipeline.FeatureUnion不再在__init__中验证超参数。验证现在在.fit()和.fit_transform()中处理。 #21954 由 iofall 和 Arisa Y. 完成。修复 在
pipeline.FeatureUnion中定义__sklearn_is_fitted__以使用utils.validation.check_is_fitted返回正确的结果。 #22953 由 randomgeek78 完成。
sklearn.preprocessing#
功能
preprocessing.OneHotEncoder现在支持将不频繁的类别分组到单个特征中。通过使用min_frequency或max_categories指定如何选择不频繁的类别来启用不频繁类别的分组。 #16018 由 Thomas Fan 完成。增强 为
preprocessing.KBinsDiscretizer添加了subsample参数。这允许指定在拟合模型时使用的最大样本数。只有当strategy设置为quantile时,此选项才可用。 #21445 由 Felipe Bidu 和 Amanda Dsouza 完成。增强 为
preprocessing.OrdinalEncoder添加了encoded_missing_value用于配置缺失数据的编码值。 #21988 由 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 由 Aurélien Geron 完成。增强 为
preprocessing.Normalizer,preprocessing.KernelCenterer,preprocessing.OrdinalEncoder和preprocessing.Binarizer添加了 get_feature_names_out。 #21079 由 Thomas Fan 完成。修复
preprocessing.PowerTransformer使用method='yeo-johnson'时,在搜索最佳 lambda 值时,能够更好地支持显著非高斯数据。 #20653 由 Thomas Fan 完成。修复
preprocessing.LabelBinarizer现在在fit方法而不是__init__方法中验证输入参数。 #21434 由 Krum Arnaudov 贡献。修复 当
check_inverse=True时,preprocessing.FunctionTransformer现在会在输入数据包含混合数据类型时提供更有信息量的错误消息。 #19916 由 刘哲昊 贡献。修复
preprocessing.KBinsDiscretizer现在更一致地处理箱边界。 #14975 由 Andreas Müller 和 #22526 由 Meekail Zain 贡献。修复 添加了
preprocessing.KBinsDiscretizer.get_feature_names_out对encode="ordinal"的支持。 #22735 由 Thomas Fan 贡献。
sklearn.random_projection#
增强 为
random_projection.GaussianRandomProjection和random_projection.SparseRandomProjection添加了inverse_transform方法和compute_inverse_transform参数。当该参数设置为 True 时,会在fit过程中计算组件的伪逆,并将其存储为inverse_components_。 #21701 由 Aurélien Geron 贡献。增强
random_projection.SparseRandomProjection和random_projection.GaussianRandomProjection保留numpy.float32的数据类型。 #22114 由 Takeshi Oura 贡献。增强 为
sklearn.random_projection模块中的所有转换器添加了 get_feature_names_out:random_projection.GaussianRandomProjection和random_projection.SparseRandomProjection。 #21330 由 Loïc Estève 贡献。
sklearn.svm#
增强
svm.OneClassSVM,svm.NuSVC,svm.NuSVR,svm.SVC和svm.SVR现在公开了n_iter_,表示 libsvm 优化例程的迭代次数。 #21408 由 Juan Martín Loyola 贡献。增强
svm.SVR,svm.SVC,svm.NuSVR,svm.OneClassSVM,svm.NuSVC现在会在对偶间隙估计产生非有限参数权重时引发错误。 #22149 由 Christian Ritter 和 Norbert Preining 贡献。修复
svm.NuSVC,svm.NuSVR,svm.SVC,svm.SVR,svm.OneClassSVM现在在fit方法而非__init__方法中验证输入参数。 #21436 由 Haidar Almubarak 贡献。
sklearn.tree#
增强
tree.DecisionTreeClassifier和tree.ExtraTreeClassifier新增了criterion="log_loss"参数,其效果等同于criterion="entropy"。 #23047 由 Christian Lorentzen 贡献。修复 修复了
tree.DecisionTreeRegressor中泊松分裂准则的一个错误。 #22191 由 Christian Lorentzen 贡献。API变更 将
tree.ExtraTreeRegressor的max_features默认值更改为 1.0,并将tree.ExtraTreeClassifier的默认值更改为"sqrt",这不会改变拟合结果。 原始默认值"auto"已弃用,将在 1.3 版本中移除。 对于tree.DecisionTreeClassifier和tree.DecisionTreeRegressor,将max_features设置为"auto"也已弃用。 #22476 由 Zhehao Liu 贡献。
sklearn.utils#
增强
utils.check_array和utils.multiclass.type_of_target现在接受input_name参数,以便在传递无效输入数据(例如包含 NaN 或无限值的数据)时提供更具信息量的错误消息。 #21219 由 Olivier Grisel 贡献。增强 当传递包含
pd.NA的Float32或Float64pandas 扩展数组时,utils.check_array现在返回一个包含np.nan的浮点数 ndarray。 #21278 由 Thomas Fan 贡献。增强 在不受信任的 Jupyter Notebook 中运行时,
utils.estimator_html_repr会显示更有效的错误消息。 #21316 由 Thomas Fan 贡献。增强
utils.estimator_html_repr在 HTML 表示的左上角显示一个箭头,以指示元素的可点击性。 #21298 由 Thomas Fan 贡献。增强 当输入为包含混合数据类型的pandas DataFrame时,
utils.check_array使用dtype=None将返回数值型数组。dtype="numeric"也将在DataFrame具有混合数据类型时更好地推断数据类型。 #22237 由 Thomas Fan 贡献。增强
utils.check_scalar现在在显示类型时具有更好的消息提示。 #22218 由 Thomas Fan 贡献。修复 当 y 为 None 时,更改了
utils.check_X_y抛出的ValidationError的错误消息,使其与check_requires_y_none估计器检查兼容。 #22578 由 Claudio Salvatore Arcidiacono 贡献。修复
utils.class_weight.compute_class_weight现在只需要y中的所有类别在class_weight中都有权重。如果y中存在一个类别,但在class_weight中不存在,则仍然会引发错误。 #22595 由 Thomas Fan 贡献。修复
utils.estimator_html_repr改善了嵌套元估计器的可视化效果。 #21310 由 Thomas Fan 贡献。修复 当
include_boundaries={"left", "right"}且边界未设置时,utils.check_scalar会引发错误。 #22027 由 Marie Lanternier 贡献。修复
utils.metaestimators.available_if正确返回一个可以被pickle化的绑定方法。 #23077 由 Thomas Fan 贡献。API变更
utils.estimator_checks.check_estimator的参数现在称为estimator(之前的名称是Estimator)。 #22188 由 Mathurin Massias 贡献。API变更
utils.metaestimators.if_delegate_has_method已弃用,将在 1.3 版本中移除。请使用utils.metaestimators.available_if代替。 #22830 由 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 Kommireddy,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)