三、Distributed DataParallel分布式数据并行原理与应用

帮up宣传一下,优质up值得信赖!

B站UP:你可是处女座啊
在这里插入图片描述

文章目录

  • 原理
    • 一、 DDP
    • 二、基本概念
    • 三、分布式训练中的通信
  • 实战
    • 初始化进程组
    • 当前 进程 到底使用哪些数据?
    • 模型处理
    • 启动
    • 改造 loss 打印
    • 改造准确率
    • 改造数据划分
    • 训练前数据打乱
    • batch_size 是多少?
  • Trainer
  • DDP vs DP 效率对比
  • 总结

  • 简称 DDP

原理

image.png

一、 DDP

image.png

  • 补充一下 DP 原理


image.png


二、基本概念

在这里插入图片描述

  • 解释概念,Global 是全局信息,Local 是局部信息

image.png

三、分布式训练中的通信

image.png

  • t 代表数据

image.png
image.png

  • 注意,不局限于求和计算(可以其余计算,例如平均)

在这里插入图片描述


实战

image.png


初始化进程组

image.png


当前 进程 到底使用哪些数据?

Pytorch 自己实现了(借助采样器就可以实现不同的 GPU 选择不同数据)
image.png
image.png


模型处理

image.png


启动

torchrun --nproc_per_node=2 ddp.py
nproc_per_node 每个节点的进程数

image.png


改造 loss 打印

  • 自己写通信

image.png

  • loss 打印结果一致

image.png
继续优化:只在一个进程中打印,用 gloabl_rank 指定进程号
image.png
效果:只打印一次
image.png


改造准确率

  • dist.all_reduce() 默认就是 sum

image.png


改造数据划分

  • 每个进程都会进行一次随机数据划分,训练集和测试集必定存在重叠(需要保证划分一致)

image.png

  • 看数据打印是否一致即可

image.png


训练前数据打乱

image.png


batch_size 是多少?

设置的 batch_size * 2

  • 注意:如果验证集数量不够多个进程均分会导致准确率不准,accelerate 解决

Trainer

  • 不需要任何修改就可以跑 DDP

image.png

  • 准确率的坑:数据划分的随机性导致

image.png


DDP vs DP 效率对比

image.png
image.png


总结

image.png


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/511886.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

EmoLLM(心理健康大模型)——探索心灵的深海,用智能的语言照亮情感的迷雾。

文章目录 介绍:应用地址:模型地址:Github地址:视频介绍:效果图: 介绍: EmoLLM是一个基于 InternLM 等模型微调的心理健康大模型,它涵盖了认知、情感、行为、社会环境、生理健康、心…

揭秘货运之心:可视化技术重塑火车站未来

货运火车站作为物流的重要枢纽,每天都在处理着海量的货物和运输任务。然而,对于大多数人来说,货运火车站依旧是一个神秘而复杂的世界。今天让我们通过可视化技术,一起走进货运火车站,感受其中的魅力与奥秘。 一、数据的…

常用的17个运维监控系统(必备知识)

1. Zabbix Zabbix 作为企业级的网络监控工具,通过从服务器,虚拟机和网络设备收集的数据提供实时监控,自动发现,映射和可扩展等功能。 Zabbix的企业级监控软件为用户提供内置的Java应用服务器监控,硬件监控&#xff0c…

WebGIS开发0基础必看教程:地图瓦片在Canvas上的拼接显示

1.前言 在之前的五个章节中,我们在第一章节里介绍了WebGIS的基本框架和技术,第二章节里介绍了什么是瓦片行列号以及计算它的原因,第三章节里介绍了如何通过地理范围计算出这个范围内瓦片的行列号,第四和第五章节里介绍了在得到瓦…

LeetCode:1976. 到达目的地的方案数(spfa + 记忆化 Java)

目录 1976. 到达目的地的方案数 原题链接 题目描述: 实现代码与解析: spfa 记忆化 原理思路: 1976. 到达目的地的方案数 原题链接 1976. 到达目的地的方案数 题目描述: 你在一个城市里,城市由 n 个路口组成&a…

04. Nginx入门-Nginx WEB模块

测试环境 此处使用的yum安装的Nginx路径。 此处域名均在本地配置hosts。 主配置文件 路径:/etc/nginx/nginx.conf user nginx; worker_processes auto;error_log /var/log/nginx/error.log notice; pid /var/run/nginx.pid;events {worker_connection…

图书推荐|Word文稿之美

让你的文档从平凡到出众! 本书内容 《Word文稿之美》是一本全面介绍Word排版技巧和应用的实用指南。从初步认识数字排版到高效利用模板、图文配置和表格与图表的排版技巧,再到快速修正错误和保护文件,全面系统地讲解数字排版的技术和能力&…

使用git的小笔记

平时工作中使用git存储项目代码, 常用的命令 拉取仓库代码 git clone http://100.100.100.100:9080/my_test/test.git 拉取到以后, 先切换到自己的分支 git checkout my_name 一顿魔改代码 然后 add 新增的文件或者修改的文件 git add * 然后提交 并写…

(黑马出品_02)SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式

(黑马出品_02)SpringCloudRabbitMQDockerRedis搜索分布式 微服务技术栈治理 今日目标1.Nacos配置管理1.1.统一配置管理1.1.1.在nacos中添加配置文件1.1.2.从微服务拉取配置 1.2.配置热更新1.2.1.方式一1.2.2.方式二 1.3.配…

世界的本质是旋转(6)-在复平面上借助软件无线电SDR解调BPSK波形

在上一篇文章中&#xff0c;已经完成了BPSK波形的发射。 相对于BPSK波形的生成总共就4行代码&#xff0c;接收要略微复杂一些&#xff0c;算上各种同步、锁相环&#xff0c;约80行。完整版参考Git仓库&#xff0c;这里给出其C语言核心代码如下&#xff1a; vector<char>…

宏景eHR DisplayExcelCustomReport 任意文件读取漏洞

免责声明&#xff1a;文章来源互联网收集整理&#xff0c;请勿利用文章内的相关技术从事非法测试&#xff0c;由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失&#xff0c;均由使用者本人负责&#xff0c;所产生的一切不良后果与文章作者无关。该…

【书籍推广】这本书太好了!150页就能让你上手大模型应用开发

文章目录 蛇尾书特色蛇尾书思维导图作译者简介业内专家书评 如果问个问题&#xff1a;有哪些产品曾经创造了伟大的奇迹&#xff1f;ChatGPT 应该会当之无愧入选。仅仅发布 5 天&#xff0c;ChatGPT 就吸引了 100 万用户——当然&#xff0c;数据不是关键&#xff0c;关键是其背…