当前位置:   article > 正文

pytorch指定用多张显卡训练_如何在多GPU上训练PyTorch模型

如何用双gpu深度学习股价pytorch

深度学习模型的最大问题之一是它们经常很大,往往无法在单个GPU中进行训练。PyTorch构建了两种在多个GPU中实施分布式训练的方法:nn.DataParalllel和nn.DistributedParalllel。它们是包装和更改代码以及增加在多个GPU中训练网络的功能的简单方法。

nn.DataParallel更容易使用,但只需要在一台机器上使用。nn.DataParalllel在每个批次中,仅使用一个过程来计算模型权重并将其分配给每个GPU。

在这篇文章中,我会详细介绍nn.DataParallel和nn.DistributedDataParalllel是如何工作的。还将介绍两者之间的主要区别以及如何在多个GPU中进行训练。首先来看神经网络训练的工作原理。

训练

首先,让我们复习一下训练神经网络通常是如何工作的。

训练神经网络时,每个循环有四个主要步骤:

forward pass,其中输入由神经网络处理通过将预测标签与真实标签进行比较来计算损失函数完成backward pass,根据损失计算每个参数的梯度(使用反向传播)使用梯度更新参数对于大于1的batch sizes,我们可能希望对训练进行批归一化。

DataParallel

DataParallel帮助将训练分散到一台计算机上的多个GPU中。让我们详细介绍一下DataParallel的工作原理。当使用数据并行训练神经网络时,会发生以下几个步骤:

mini-batch在GPU:0上拆分拆分mini-batch并将其移至所有不同的G

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/708114
推荐阅读
相关标签
  

闽ICP备14008679号