随笔分类 - 006_深度学习
深度学习
摘要:前几篇文章我们介绍了 PyTorch 流水线并行的基本知识,自动平衡机制和切分数据,本文我们结合论文内容来看看如何保证前向计算执行顺序。
阅读全文
摘要:前几篇文章我们介绍了 PyTorch 流水线并行的基本知识和自动平衡机制,本文我们介绍如何切分数据和运行时系统。
阅读全文
摘要:上一篇文章我们介绍了 PyTorch 流水线并行的基本知识,本文我们介绍其自动平衡机制和模型分割。
阅读全文
摘要:本系列开始介绍PyTorch的流水线并行实现。实质上,PyTorch就是 GPipe 的PyTorch版本。
阅读全文
摘要:本文以 PyTorch on Horovod 为切入点,分析一下 Horovod 弹性训练的恢复流程,具体涉及知识点有:ElasticSampler与PyTorch 原生DistributedSampler 的区别,Horovod 弹性训练如何恢复等。
阅读全文
摘要:在前文中,我们介绍了PipeDream的总体架构,Profile阶段,计算分区阶段,模型转换阶段,运行时引擎和通信模块,本文是 PipeDream 系列最后一篇,介绍 1F1B 策略,这是 PipeDream 最大的贡献。
阅读全文
摘要:在前文中,我们介绍了PipeDream的总体架构,Profile阶段,计算分区阶段,模型转换阶段和运行时引擎,本文我们介绍PipeDream 的通信模块,通信模块是引擎的基础,同时也是PyTorch DDP,P2P 如何使用的一个万花筒和完美示例。
阅读全文
摘要:在前文中,我们介绍了PipeDream的总体架构,Profile阶段,计算分区阶段和模型转换阶段,本文我们介绍运行时执行引擎,这是一个统一基础设施层。
阅读全文
摘要:在前文中,我们介绍了PipeDream的总体架构,Profile阶段和计算分区阶段。本文我们介绍模型转换阶段。
阅读全文
摘要:在前文中,我们介绍了PipeDream的总体架构和Profile阶段,本文我们继续介绍计算分区阶段。
阅读全文
摘要:继 GPipe 之后,我们开一个流水线并行训练新系列,介绍微软的PipeDream。本文介绍其总体思路,架构和Profile阶段。
阅读全文
摘要:GPipe是一个基于 Google Brain 开发的,支持超大规模模型的神经网络训练并行库,本文介绍其重计算功能,同时可以和其他实现一起印证。
阅读全文
摘要:梯度累积是一种增大训练时 batch size的技术,在本地使用 micro-batch 多次进行正向和反向传播积累梯度后,再进行梯度规约和优化器更新,这是用来均摊通信成本的一种常用策略。本文通过几个框架/库的实现对比,让大家对这个技术有进一步的了解。
阅读全文
摘要:GPipe 是一个基于 Lingvo (Lingvo 是 Google 基于 TensorFlow 二次开发的重点针对序列模型的框架)开发的,支持超大规模模型的神经网络训练并行库,本文介绍其基本功能和流水线机制。
阅读全文
摘要:Paracel是豆瓣开发的一个分布式计算框架,它基于参数服务器范式,用于解决机器学习的问题。前文介绍了PyTorch 的数据处理部分,本文接着介绍Paracel的数据处理部分,正好可以与PyTorch做一下印证。
阅读全文
摘要:为了更好的介绍参数服务器Paracel的数据加载,我们临时插入两篇PyTorch的数据加载,主要是从分布式的角度进行切入。本文介绍 DataLoader。
阅读全文
摘要:本文是参数服务器的第四篇,介绍KVWorker, KVServer。
阅读全文
摘要:本文是参数服务器第三篇,介绍ps-lite的Customer模块。
阅读全文
摘要:本文是参数服务器系列第二篇,介绍ps-lite的通信模块 Van。
阅读全文
摘要:参数服务器是机器学习训练一种范式,是为了解决分布式机器学习问题的一个编程框架。本文是参数服务器系列第一篇,介绍ps-lite的总体设计和基础模块 Postoffice。
阅读全文