sklearn随机森林不并行化

Yan*_*ang 6 scikit-learn

我在 Ubuntu 12.04 上使用 sklearn 0.16 并运行:

from sklearn.ensemble import RandomForestClassifier
import numpy as np
X=np.random.rand(5000,500)
y=(np.random.rand(5000).round())
RandomForestClassifier(n_jobs=10,n_estimators=1000).fit(X,y)
Run Code Online (Sandbox Code Playgroud)

然而,它并没有耗尽我的核心,并且花费的时间与 n_jobs=1 相同。关于如何调试这里发生的事情有什么想法吗?

此屏幕截图显示了其他一些正在运行的繁忙事物,但 htop 始终显示可用的 CPU:

在此输入图像描述

Hem*_*lli -1

您需要更改n_jobs参数。

使用n_jobs=-1将使其使用所有可用的核心。