Pytorch分布式训练

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


文章目录


1、并行训练

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

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

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

相关推荐
vibag17 小时前
使用底层API构建图
人工智能·语言模型·langchain·大模型·langgraph
权泽谦17 小时前
医疗预测项目:CNN + XGBoost 实战全流程
人工智能·神经网络·cnn
汗流浃背了吧,老弟!17 小时前
Transformer-初识
人工智能·深度学习·transformer
Lkygo17 小时前
Embedding 和 Reranker 模型
人工智能·embedding·vllm·sglang
竹君子17 小时前
英伟达的AI芯片架构演进的三个阶段
人工智能
Chris_121917 小时前
Halcon学习笔记-Day5
人工智能·笔记·python·学习·机器学习·halcon
蓝程序17 小时前
Spring AI学习 程序接入大模型
java·人工智能·spring
西柚小萌新17 小时前
【论文阅读】--PEACE:基于多模态大语言模型的地质图全息理解赋能框架
人工智能·语言模型·自然语言处理
Ai野生菌18 小时前
论文解读 | 当“提示词”学会绕路:用拓扑学方法一次击穿多智能体安全防线
人工智能·深度学习·安全·语言模型·拓扑学
狮子座明仔18 小时前
MegaBeam-Mistral-7B:扩展上下文而非参数的高效长文本处理
人工智能·深度学习·自然语言处理·知识图谱