Pytorch分布式训练

现在深度学习模型占用显存大,数据量也大,单张显卡上训练已经满足不了要求了,只有多GPU并行训练才能加快训练速度;并行训练又分为模型并行和数据并行两种。模型并行比较少用到,这里主要介绍数据并行,pytorch中数据并行有两种DataParallel和DistributedDataParallel,前者是pytorch训练早期采用的,由于其单线程和显存利用率低等缺点,现在大多使用后者。


文章目录


1、并行训练

并行训练分两种,模型并行和数据并行。

1)模型并行。模型并行通常是指要训练的模型非常大,大到一块卡根本放不下,因而需要把模型进行拆分放到不同的卡上。例如早期的AlexNet就是拆分模型利用两块GPU训练的。

2)数据并行。数据并行通常用于训练数据非常庞大的时候,比如有几百万张图像用于训练模型。此时,如果只用一张卡来进行训练,那么训练时间就会非常的长。或者模型比较大,由于单卡显存的限制,训练时的batch size不能设置过大。这时就需要多个GPU训练来提升batchsize大小。

相关推荐
LiFileHub1 分钟前
计算机视觉全栈宝典:从BEV感知到边缘部署(附15套实战方案)
人工智能·计算机视觉
石去皿1 分钟前
本地安装与使用 Ollama:运行大语言模型的完整指南
人工智能·语言模型·自然语言处理
却道天凉_好个秋4 分钟前
OpenCV(四十九):GrabCut
人工智能·opencv·计算机视觉·图像分割·grabcut
SmartBrain4 分钟前
MCP(Model Context Protocol)实战
人工智能·语言模型
dulu~dulu7 分钟前
机器学习---过拟合与正则化
人工智能·深度学习·机器学习·dropout·正则化·过拟合
清名8 分钟前
AI应用-基于LangChain4j实现AI对话
人工智能·后端
好奇龙猫24 分钟前
【人工智能学习-AI-MIT公开课-第6.博弈,极小化极大化,α-β】
人工智能·学习
GodGump28 分钟前
Stephen Wolfram 谈 AI 爆发的底层逻辑:计算不可约性与神经符号主义的未来
人工智能
nju_spy28 分钟前
NJU-SME 人工智能(四)深度学习(架构+初始化+过拟合+CNN)
人工智能·深度学习·神经网络·反向传播·xavier初始化·cnn卷积神经网络·pytorch实践
静听松涛13329 分钟前
在线协作跨职能泳道图制作工具 PC版
大数据·论文阅读·人工智能·信息可视化·架构