采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
老师,我之前看过一门课,讲的是使用交叉验证网格搜索的时候,那边的njob的参数代表使用电脑的几个核,如果是-1代表的是全部启用CPU的所有核。 经过测试,在启用1个核和2个核的速度的确能提高,理论上是有2倍的效率,实际上只有1点几倍的效率。 详细的如图 上图是采用n-jobs=-1也就是启用cpu所有核使用的时间是2.6分钟 上图是使用n_jobs=1使用一个CPU核使用的时间是将近4分钟
是的,你说的没错。不过普通的scikit模型把n_jobs设为大于1的值可以成功,但对于tensorflow的模型来说,把n_jobs设为大于1的数的时候会遇到一个job不能被序列化的问题。我还没有找到解决方案,怀疑是tensorflow的bug。后面如果解决的话会更新视频。
n_jobs设为大于1的话至少得多卡或者多机吧?否则的话会有显卡占用问题。另外这里job不能序列化应该是模型序列化的问题,https://shimo.im/docs/jyTdieZIXr0MGzEW/ 这是我之前备份的一份关于keras模型序列化的方法,老师可以看一下
登录后可查看更多问答,登录/注册
Tensorflow2.0实战—以实战促理论的方式学习深度学习
2.9k 1
1.4k 3
1.2k 19
1.4k 13
2.1k 7