我正在尝试使用scikit-learn的cross_val_score对模型进行交叉验证。
我尝试通过设置n_jobs = -1来使用多个内核,但结果是
OSError:[Errno 28]设备上没有剩余空间
下面给出的代码导致错误:
cross_val_score(mod1, train_feats1, target, cv=5, scoring=make_scorer(accuracy_score), n_jobs=-1)
而:
cross_val_score(mod1, train_feats1, target, cv=5, scoring=make_scorer(accuracy_score), n_jobs=1)
工作完美。
我做错什么了吗?
据我所知,Kaggle最多允许4个CPU进行并行计算。
这是链接:https://www.kaggle.com/product-feedback/39790
如何使用所有四个CPU并行执行交叉验证过程?
最佳答案
我通过使用Python笔记本中的以下代码设置JOBLIB_TEMP_FOLDER变量来克服了此问题。
%env JOBLIB_TEMP_FOLDER=/tmp
希望有帮助!
关于machine-learning - 错误:Kaggle笔记本中的设备上没有剩余空间,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47730811/