基于我读到的一些论文,分布式深度学习可以提供更快的训练时间。此外,它还提供了更好的准确性或较低的预测误差。原因是什么?
我使用Tensorflow运行分布式深度学习( DL ),并将其性能与非分布式DL进行比较。我使用dataset 1000个样本的数量和步骤大小10000。分布式DL使用2个工作人员和1个参数服务器。然后,在运行代码时考虑以下情况:
仿真结果表明,在所有情况下,分布式DL比非分布DL具有更低的RMSE .在这种情况下,分布式DL的RMSE为:情况2中的分布式DL <案例1中的分布式DL <情况3中的分布式DL <非分布式DL。
此外,对于非分布DL,我还增加了训练时间(即步骤数为2x10000),结果仍然不如分布式DL。
一个原因可以是小批量大小,然而,我想知道为什么分布式DL有更好的性能使用上述情况?
发布于 2018-11-05 16:20:47
关于精确性:采用最有力的原因;由于计算的分布,内存问题将减少。这将使您可以增加您的培训批次大小,这将减少梯度噪声由于小批大小。陡峭的梯度移动向最小方向移动,噪音较小。
你可以参考这段视频来加深理解:https://www.youtube.com/watch?v=-_4Zi8fCZO4&list=PLkDaE6sCZn6Hn0vK8co82zjQtt3T2Nkqc&index=16
关于速度:我认为更明显的是。您将梯度下降计算分发到多台计算机或CPU/GPU/TPU中,从而获得更快的培训速度。
https://datascience.stackexchange.com/questions/40738
复制相似问题