【发布时间】:2020-01-29 21:41:10
【问题描述】:
我有一个 python 脚本,其中包含一些数据(大小适合内存),我想学习(在 X 个不同的本地节点中)X 个不同版本的这些 keras 模型(也可以是 tensorflow)相对不同这些数据的版本,然后组合结果(它有点像模型的集合)。我不需要进一步分发 keras 模型的训练,因为它们在多线程模式下运行就足够了。我认为这将是一个相对常见的设置,但我没有在网上找到任何工作示例。
有人知道最好的方法吗?
Dask 是解决此问题的正确工具吗?它看起来并不乐观:https://github.com/dask/distributed/issues/2333 tensorflow 也有同样的问题吗?据此,使用 tensorflow 进行这种简单的并行化应该是可以的: http://matthewrocklin.com/blog/work/2017/02/11/dask-tensorflow 所以我倾向于认为正确的路径是使用map dask操作而不是延迟。
当我不想进一步并行化 TensorFlow 模型的训练时,是否需要创建 TensorFlow 集群? https://ml.dask.org/tensorflow.html
有没有使用 Scikit-learn 包装器和 joblib 的解决方法?
任何有关正确方向的线索将不胜感激。
【问题讨论】:
-
创建
X相同的网络并一个接一个地训练它们有什么问题? -
嗯,我想在不同的节点上并行训练它们以加快整个过程。
标签: python tensorflow keras dask