我一直在使用Keras框架和4个NVIDIA GPU训练NN模型。 (数据行数:〜160,000,列数:5)。现在,我想使用GridSearchCV优化其参数。
但是,每当我尝试将n_jobs更改为除一个以外的其他值时,都会遇到几个不同的错误。错误,例如
CUDA OUT OF MEMORY
Can not get device properties error code : 3
然后我阅读了此网页, “#如果您未使用GPU,则可以将n_jobs设置为1以外的值” http://queirozf.com/entries/scikit-learn-pipeline-examples
因此无法将多个GPU与GridSearchCV一起使用吗?
[环境] Ubuntu 16.04 的Python 3.6.0 Keras / Scikit-Learn
谢谢!
答案 0 :(得分:3)
根据scikit Learn中的常见问题解答-不支持GPU。 Link
您可以使用n_jobs
来使用CPU内核。如果要以最快的速度运行,则可能要使用几乎所有内核:
import multiprocessing
n_jobs = multiprocessing.cpu_count()-1