首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
分布式机器学习
罗西的思考
创建于2021-09-07
订阅专栏
分布式机器学习
等 28 人订阅
共117篇文章
创建于2021-09-07
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
[源码解析] PyTorch分布式优化器(2)----数据并行优化器
本系列介绍分布式优化器,三篇文章分别是基石篇,DP/DDP/Horovod 之中数据并行的优化器,PyTorch 分布式优化器,按照深度递进。本文介绍数据并行DP/DDP/Horovod之中的优化器。
[源码解析] PyTorch分布式优化器(1)----基石篇
本文是分布式优化器之基石篇,通过本文,大家可以了解到模型的构造,优化器的基本原理,两者之间的交互,如何优化更新模型等等,这为后面的逐级分析打下了一个基础。
[源码解析] PyTorch 分布式 Autograd (6) ---- 引擎(下)
上文我们介绍了反向传播引擎如何获得后向计算图的依赖,本文我们就接着看看引擎如何依据这些依赖进行后向传播。
[源码解析] PyTorch 分布式 Autograd (5) ---- 引擎(上)
上文已经分析了如何启动/接受反向传播,如何进入分布式autograd 引擎,本文和下文就看看如何分布式引擎如何运作。
[源码解析] PyTorch 分布式 Autograd (4) ---- 如何切入引擎
目前我们知道了分布式autograd如何基于RPC进行传递,如何在节点之间交互,节点如何区分维护这些Session。本文继续分析,主要目的是看看反向传播如何切入到引擎之中。
[源码解析] PyTorch 分布式 Autograd (3) ---- 上下文相关
我们已经知道 dist.autograd 如何发送和接受消息,本文再来看看如何其他支撑部分,就是如何把发送接受两个动作协调起来,如何确定每个发送/接受节点,如何确定每一个消息交互Session。
[源码解析] PyTorch 分布式 Autograd (2) ---- RPC基础
前文我们给出了分布式autograd的设计思路,本文开始,我们进行具体源码分析。因为无论是前向传播还是反向传播,都需要依赖 RPC 来完成,所以我们先看看封装于 RPC 之上的一些基本功能。
[源码解析] PyTorch 分布式 Autograd (1) ---- 设计
本文以几篇PyTorch官方文档为基础来了解分布式 autograd 的设计和内部结构,在翻译时并没有逐字翻译,其中加入了自己的部分理解。分布式 autograd 后续文章的分析也会基于本文进行。
[源码解析] PyTorch 分布式(13) ----- DistributedDataParallel 之 反向传播
上文对Reduer的前向传播进行了分析,本文来看看如何进行反向传播。这就是一个autograd 引擎如何与DDP交互,如何一边做反向计算,一边利用DDP归并梯度的完整过程。
[源码解析] PyTorch 分布式(12) ----- DistributedDataParallel 之 前向传播
前文已经对Reducer如何构建和几个重要场景做了介绍,本文就来分析 Reducer 如何实现前向传播。
[源码解析] PyTorch 分布式(11) ----- DistributedDataParallel 之 构建Reducer和Join操作
因为前文已经围绕Reducer相关的各种成员变量做了相关分析,所以本文开始做动态逻辑分析,目的是:把前面几篇文章串联起来,为后面分析前向传播和反向传播设定基础。
[源码解析] PyTorch 分布式(10)------DistributedDataParallel之Reducer静态架构
通过上文分析,我们已经知道了 DDP 的基本架构和如何初始化,本文就看看其核心 Reducer 的静态架构。Reducer 提供了反向传播中梯度同步的核心实现。
[源码解析] PyTorch 分布式(9) ----- DistributedDataParallel 之初始化
前文我们对DDP的一些支撑模块已经做了介绍,这为本文做了必要的铺垫,本文就开始介绍Python世界代码和C++世界的初始化部分。下文介绍C++世界的核心代码。
[源码解析] PyTorch 分布式(8) -------- DistributedDataParallel之论文篇
本文是PyTorch分布式训练第8篇,工欲善其事,必先利其器,为了更好的分析代码,我们先来学习一下相关论文。
[源码解析] PyTorch 分布式(7) ----- DistributedDataParallel 之进程组
本文是 PyTorch 分布式系列的第七篇, 介绍 DistributedDataParallel 所依赖的进程组概念。
[源码解析] PyTorch分布式(6) ---DistributedDataParallel -- 初始化&store
本文是 PyTorch 分布式系列的第六篇, 介绍 DistributedDataParallel 所依赖的初始化方法和Store这两个概念。
[源码解析] PyTorch 分布式(5) ------ DistributedDataParallel 总述&如何使用
本文是 PyTorch 分布式系列的第五篇,以几篇官方文档的翻译为基础,加入了自己的一些思考,带领大家进入DistributedDataParallel,在后续会用5~6篇左右做深入分析。
[源码解析] PyTorch 分布式(4)------分布式应用基础概念
本文以 PyTorch 官方文档 dist_tuto.html 为基础,对如何编写分布式进行了介绍,并且加上了自己的理解。
[源码解析] PyTorch 分布式(3) ----- DataParallel(下)
本文是 PyTorch 分布式的第三篇,继续上文,介绍 DataPrallel 的并行操作和反向传播。
[源码解析] PyTorch 分布式(2) ----- DataParallel(上)
从本文开始,我们介绍 PyTorch 的数据并行,本文是第一篇,介绍 DataPrallel,因为字数太多(1万两千多字,因此拆分成两篇文章发布)。
下一页