![](/img/trans.png)
[英]Discrepancy between reported n_jobs=1 and CPU-usage in jupyter
[英]OneVsRestClassifier with n_jobs > 1 stuck with zero percent cpu usage for all jobs
我正在嘗試使用SVC擬合相當大的數據集(約1000萬個樣本,15個功能)。 當我將其作為單個作業運行時,它似乎運行良好,但幾個小時后仍未完成。 我與具有40個邏輯核心和125 Gig內存的工作站建立了遠程連接,因此將代碼和數據傳輸到該計算機並使用BaggingClassifier
或OneVsRestClassifier
然后設置n_jobs=-1
或n_jobs=10
。 但是,當我這樣做時,會創建許多新的python處理,每個處理具有相同的內存使用率,但所有這些處理都被限制在cpu使用率為零的情況下。 知道發生了什么嗎?
這是我的代碼。 data
的形狀為(10046977, 15)
。
import numpy as np
from sklearn import svm
from sklearn.ensemble import BaggingClassifier
from sklearn.multiclass import OneVsRestClassifier
data = np.loadtxt('training.csv', header=None, dtype=float, usecols=range(2,17))
types = np.loadtxt('training.csv', header=None, dtype=str, usecols=(17,))
clf = OneVsRestClassifier(svm.SVC(gamma=0.001, C=100), n_jobs=-1)
clf.fit(data[:], types[:])
我正在針對此特定問題使用Ubuntu 16.04。
我遇到了類似的問題,並設法使用以下方法解決了該問題:
import numpy as np
from sklearn import svm
from sklearn.ensemble import BaggingClassifier
from sklearn.multiclass import OneVsRestClassifier
if __name__ =='main':
data = np.loadtxt('training.csv', header=None, dtype=float, usecols=range(2,17))
types = np.loadtxt('training.csv', header=None, dtype=str, usecols=(17,))
clf = OneVsRestClassifier(svm.SVC(gamma=0.001, C=100), n_jobs=-1)
clf.fit(data[:], types[:])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.