Pythorch分布式培训

pytorch-distbelief的Python项目详细描述


距离信度

执行谷歌的distfeedle文件。

安装/开发说明

您首先需要通过运行make setup来创建python3 virtualenv,然后应该运行make install

然后,您将可以通过导入dist信念来使用dist信念

fromdistbelief.optimimportDownpourSGDoptimizer=DownpourSGD(net.parameters(),lr=0.1,n_push=5,n_pull=5,model=net)

作为一个例子,您可以看到我们的实现通过使用example/main.py中提供的脚本来运行。

要在本地运行2-training节点设置,请打开三个终端窗口,获取venv源代码,然后运行make firstmake secondmake server。 这将开始使用所有默认参数在cifar10上本地培训alexnet。

基准

注意:我们用图表表示每个节点的列车/测试精度,因此是node1、node2、node3。更好的比较是评估参数服务器的params并使用该值。 但是,我们可以看到三个节点之间的准确性相当一致,添加求值器可能会给服务器带来太多压力。

我们将节点的学习率缩放为learning_rate/freq(.03)。

train

test

我们使用aws c4.xlarge实例来比较cpu运行情况,并使用gtx 1060来比较gpu运行情况。

喷灯的倾盆大雨

图表

这里23同时发生。

您可以阅读更多关于我们的实现here

参考文献

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
在Java中使用BufferedReader类读取文本文件的子字符串   java如何在JSP页面上包含来自另一台服务器的动态JSP   使用单表策略的java持久化Hibernate继承映射   java报告状态失败达600秒。谋杀!报告hadoop的进展   java将字符串解析为形状   使用JTable的java ClassCastException?   java在Spring引导中关闭数据库   java Android Studio调试错误(Ubuntu)   java如何区分apache beam中KV实例中的两个键?   java将RealmObjectChangeListener添加到异步下载的RealmObject   java匹配模式之前的所有内容,包括新行和/或回车   java使用JAXB在XML中动态更改元素序列   java如何在MACOS中找到动态库(.dylib文件)的版本   Android中的java Nanohttpd服务器   java libGDX:3d动画不工作