scikit-learn - 如何限制 sklearn 中岭回归模型使用的处理器数量?

标签 scikit-learn

我想对不同的机器学习模型进行公平的比较。但是,我发现岭回归模型会自动使用多个处理器,并且没有参数可以限制使用的处理器数量(例如n_jobs)。有什么办法可以解决这个问题吗?

一个最小的例子:

from sklearn.datasets import make_regression
from sklearn.linear_model import RidgeCV

features, target = make_regression(n_samples=10000, n_features=1000)
r = RidgeCV()
r.fit(features, target)
print(r.score(features, target))

最佳答案

如果将环境变量 OMP_NUM_THREADS 设置为 n,您将获得预期的行为。例如。在 Linux 上,在终端中执行 export OMP_NUM_THREADS=1 以将使用限制为 1 个 cpu。

根据你的系统,你也可以直接在python中设置。参见例如How to set environment variables in Python?

关于scikit-learn - 如何限制 sklearn 中岭回归模型使用的处理器数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65377950/

相关文章:

machine-learning - python 机器学习 弃用警告

python - 类型错误 : __init__() got multiple values for argument 'n_splits'

python - 高召回率的最佳 SVM 参数

python - 精度和召回率在模型中相同

machine-learning - scikit-learn GridSearchCV 无法与随机森林一起正常工作

python - DecisiontreeClassifier,为什么值的总和错误?

python - 橙色在Python脚本中保存模型

python - eli5 show_prediction 仅显示特征权重而不显示示例预测

python - 如何从 GridSearchCV 绘制 cv_results_ replacy grid_scores_ 图表?

python - Sklearn fit vs predict,列的顺序很重要吗?