先mark一下实现方法(主要是数据并行的实现):
链接1:
https://keras.io/zh/getting-started/faq/#_1.
链接2:
http://cn.voidcc.com/question/p-bklndimw-uw.html.
链接3:
https://blog.csdn.net/Umi_you/article/details/81301002.
链接4:
https://www.jianshu.com/p/4203a6435ab5.
如图是我的Python和keras的版本,碰到了一个问题是无法从keras.utils导入multi_gpu_model。链接2给出了一些解决办法,但我通过pip install --upgrade keras==2.2.5,更新了一下版本后,keras.utils中就出现了multi_gpu_model模块了。
ps:链接4中的导入是keras.utils.training_utils.multi_gpu_model,我个人使用的是keras.utils.multi_gpu_model。在使用前者时提示了keras.utils中没有training_utils模块,可能时版本存在差异。
关于后面的checkpoint问题,因为笔者没有多GPU训练成功所以也就没有碰到。【网络的模型参数已经在单GPU过大了,复制模型的时候就没办法复制,就别提后面的数据分流了ORZ