Scikit learn sklearn随机林不并行
我正在Ubuntu 12.04上使用sklearn 0.16并运行:Scikit learn sklearn随机林不并行,scikit-learn,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) 然而,它并没有耗尽我的内核,并且需要与n_j
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)
然而,它并没有耗尽我的内核,并且需要与n_jobs=1相同的时间。关于如何调试这里发生的事情有什么想法吗
此屏幕截图显示了一些其他正在运行的繁忙内容,但htop始终显示可用的CPU:
您需要更改
n\u jobs
参数
使用n\u jobs=-1
将使用所有可用的内核。尝试以下操作:
import affinity
import multiprocessing
affinity.set_process_affinity_mask(0, 2**multiprocessing.cpu_count()-1)
这不应该发生。你们有多少核?我的最佳选择是你在一个只有一个核心的虚拟机上。你的htop看起来像什么?@AndreasMueller我发布了一个屏幕截图,肯定有可用的内核…尝试设置
n_jobs=-1
。它现在使用你所有的核心吗?你在使用OpenBLAS吗?