我知道 TensorFlow 提供分布式训练 API,可以在多个设备上训练,例如多个 GPU、CPU、TPU 或多台计算机(工作人员)遵循此文档:https ://www.tensorflow.org/tutorials/distribute/multi_worker_with_keras
但我有一个问题,这是任何可能的方式来分割火车使用数据并行训练跨多台机器(包括移动设备和计算机设备)?
如果您有任何教程/说明,我将不胜感激。
我知道 TensorFlow 提供分布式训练 API,可以在多个设备上训练,例如多个 GPU、CPU、TPU 或多台计算机(工作人员)遵循此文档:https ://www.tensorflow.org/tutorials/distribute/multi_worker_with_keras
但我有一个问题,这是任何可能的方式来分割火车使用数据并行训练跨多台机器(包括移动设备和计算机设备)?
如果您有任何教程/说明,我将不胜感激。
据我所知,考虑到所有设备都应该在同一个网络中,Tensorflow 仅支持 CPU、TPU 和 GPU 进行分布式训练。
如您所述,对于连接多个设备,您可以遵循Multi-worker training。
tf.distribute.Strategy
集成到tf.keras
,因此 whenmodel.fit
与tf.distribute.Strategy
实例一起使用,然后strategy.scope()
用于您的模型允许创建分布式变量。这允许它在您的设备上平均划分您的输入数据。您可以按照本教程了解更多详细信息。分布式输入
也可以帮助你。