【发布时间】:2017-02-19 12:31:21
【问题描述】:
Sklearn 的 LogisticRegression 模型拒绝并行运行。我设置了 n_jobs=-1,也尝试了 n_jobs=4。不走运——只有一个核心在使用。我已经并行运行了其他 sklearn 模型,例如 RandomForestClassifier 和 XGBoostClassifier。
我在 Ubuntu 14.04 上运行 Python 2.7.12 和 sklearn 0.18。
其他人也问过同样的问题(例如,here),但到目前为止没有收到任何有希望的答复。我希望我的运气会更好。
【问题讨论】:
-
你想运行什么? AFAIK
LogisticRegression不支持并行性 -
可能的原因有很多。但幸运的是,这并不重要。在所有理智的机器学习任务中,您都将使用交叉验证,并且 sklearns LogisticRegressionCV 很容易并行。
-
@sascha 这是一个很大的调用,通常单个时间分离的拆分比 n 倍交叉验证更合适,在生产应用程序中,您可能只需要尽快训练模型。
-
@maxymoo 已接受关注!当然你是对的,总是有用例。但它们中的大多数在 SO 问题方面并不常见。
-
由于 LogisticRegression 不支持 n_jobs,因此可以使用 SGDClassifier 进行多核处理,如果您有一个大数据集可能更合适,但您应该找到最好的超参数。跨度>
标签: scikit-learn logistic-regression