强化学习曾小健
"强化学习曾小健2、强化学习曾小健3、我是机器人曾小健具身"都是该号副号。CSDN全站80强博客、总近480w+浏览。AI生成式技术,计算机博士;llama3、Baichuan2、Qwen、GLM-4等等项目贡献人(ArtificialZeng)。这个博客的主题主要是强化学习技术、AI生成式技术、大模型多模态技术、机器人具身智能控制技术、机器/深度学习论文或科研前沿、GNN图神经网络、神经网络,包括人工神经网络和生物神经网络,及其大脑演化,智能和认知的产生,通用人工智能;
展开
-
32卡176%训练加速,开源大模型训练框架Megatron-LLaMA来了
特别的,相比于 ZeRO 的实现,Megatron-LLaMA 在并行的前提下,通过巧妙的优化优化器分区策略,使用了更具有具有扩展性的集合通信方式来提升扩展性。因此,为了回馈整个 LLaMA 开源社区、促进中文预训练大模型开源社区的发展,让开发者们能够更方便地提升大语言模型的训练性能,降低训练成本,淘天集团联合爱橙科技将部分内部优化技术开源,发布 Megatron-LLaMA,期望与每一位合作伙伴共建 Megatron 及 LLaMA 生态。共同开源并提供后续维护支持的训练框架,在内部已有广泛的应用。原创 2024-08-29 11:17:39 · 903 阅读 · 0 评论 -
OpenAI 训练大型神经网络的技术
2022 年 6 月 9 日训练大型神经网络的技术大型神经网络是人工智能许多最新进展的核心,但训练它们是一项艰巨的工程和研究挑战,需要协调一组 GPU 来执行单个同步计算。大型神经网络是人工智能许多最新进展的核心,但训练它们是一项艰巨的工程和研究挑战,需要协调 GPU 集群来执行单个同步计算。随着集群和模型规模的增长,机器学习从业者开发了越来越多的技术来并行化多个 GPU 上的模型训练。乍一看,理解这些并行技术似乎令人生畏,但只要对计算结构。原创 2024-07-09 15:18:06 · 883 阅读 · 0 评论 -
一次讲清模型并行、数据并行、张量并行、流水线并行区别nn.DataParallel[分布式]
通过这种行切分的方式,张量并行能够有效地将大型矩阵分散到多个GPU上,既解决了单GPU内存不足的问题,又保持了计算的数学等价性。总的来说,张量并行的核心思想是利用分块矩阵的计算原理,将大矩阵切分到不同设备上,通过通信操作保证数学等价性。当然,张量并行中的行并行(Row Parallelism)是一种特定的切分策略,它主要用于。假设我们有一个线性层,其权重矩阵大小为 [ℎ�����_���,ℎ�����_���],输入张量大小为 [����ℎ_����,ℎ�����_���]原创 2024-07-07 16:25:33 · 4036 阅读 · 0 评论 -
[Nature AI ]扩展深度学习以促进材料发现Scaling deep learning for materials discovery
自然 体积 624、 页面80–85 ( 2023 )引用这篇文章175k访问量34 次引用第763章指标细节新型功能材料能够实现从清洁能源到信息处理等技术应用的根本性突破1,2,3,4,5,6,7,8,9,10,11 。从微芯片到电池和光伏发电,无机晶体的发现一直受到昂贵的试错方法的瓶颈。与此同时,随着数据和计算的增加,语言、视觉和生物学的深度学习模型展示了新兴的预测能力12 , 13 , 14。在这里,我们展示了大规模训练的图网络可以达到前所未有的泛化水平,从而将材料发现的效率提高一个数量级。以原创 2024-03-23 21:25:04 · 1331 阅读 · 0 评论 -
从 ColossalChat 到 DeepSpeedChat, RLHF的应用及优化
收录于合集#LLMs8个作者:紫气东来项目地址:https://zhuanlan.zhihu.com/p/621391363。原创 2023-06-14 15:43:13 · 717 阅读 · 0 评论 -
一键式 RLHF 训练 DeepSpeed Chat(二):实践篇
本文使用单机多卡基于OPT模型给大家分享了使用DeepSpeed Chat进行RLHF训练,希望能够给大家带来收获。参考文档DeepSpeed Chat: 一键式RLHF训练,让你的类ChatGPT千亿大模型提速省钱15倍第一阶段: 有监督的微调 (SFT)第二阶段: 奖励模型微调第三阶段: 人工反馈强化学习 (RLHF)DeepSpeed Chat 训练详细说明。原创 2023-06-15 08:25:07 · 1669 阅读 · 0 评论 -
DeepSpeed超大规模模型训练工具
DeepSpeed超大规模模型训练工具2021年 2 月份。这是一个开源深度学习训练优化库,包含的一个新的显存优化技术—— ZeRO(零冗余优化器),通过扩大规模,提升速度,控制成本,提升可用性,极大地推进了大模型训练能力。DeepSpeed 已经帮助研究人员,开发了图灵自然语言生成模型(Turing-NLG),在发表时,为世界上最大的语言模型(拥有170 亿参数),有着最佳的精度。在2021年 5 月份。原创 2023-05-18 06:23:55 · 799 阅读 · 0 评论 -
大模型多机多卡脚本实例 - 增量预训练 -accelerate和deepspeed命令多机多卡训练有什么不同
总的来说,Accelerate更适合快速上手和一般规模的模型训练,而DeepSpeed则更适合大规模模型和需要高度优化的场景。选择哪个框架取决于具体的项目需求、模型规模和可用的硬件资源。根据具体的硬件资源和模型规模,可以选择合适的优化策略或组合使用。管线并行(Pipeline Parallelism)单GPU或少量GPU上能提供高效的训练吞吐量。CUDA核函数,可以实现更快的推理速度。减少模型状态(参数、梯度、优化器。数据并行进程间分割模型状态。ZeRO和Offload。ZeRO和Offload。原创 2024-07-05 17:14:27 · 2295 阅读 · 0 评论 -
Accelerate 两个后端的故事:FSDP 与 DeepSpeed
我们提供了新的概念指南以帮助用户在两个框架之间迁移。该指南可以帮助用户厘清以下问题:如何实现等效的分片策略?如何进行高效的模型加载?FSDP 和 DeepSpeed 中如何管理权重预取?与 DeepSpeed 对等的 FSDP 封装是什么?我们在 🤗 Accelerate 中考虑了配置这些框架的各种方式:使用从命令行配置。原创 2024-06-28 19:24:57 · 659 阅读 · 0 评论 -
DeepSpeed Chat: 一键式RLHF训练,让你的类ChatGPT千亿大模型提速省钱15倍
DeepSpeed-Chat 允许用户使用我们灵活的 API(如下所示)构建自己的 RLHF 训练流程,用户可以使用这些 API 重建自己的 RLHF 训练策略。我们希望这些功能可以为研究探索中创建各种 RLHF 算法提供通用接口和后端。args=args)为了实现无缝的训练体验,我们遵循 InstructGPT 论文的方法,并在 DeepSpeed-Chat 中整合了一个端到端的训练流程,如图 1 所示。转存失败重新上传取消。原创 2023-07-25 20:02:27 · 130 阅读 · 0 评论 -
DeepSpeed中ZeRO-2和ZeRO-3的主要区别
需要更多关于这两种优化策略的详细信息吗?我可以进一步解释它们的工作原理或优缺点。选择使用哪个版本取决于具体的模型大小、可用硬件资源和训练效率需求。总的来说,ZeRO-3提供了更极致的内存优化,但代价是增加了。deepspeed中zero2和zero3的区别。更多的通信开销,ZeRO-3的训练速度。Zero3的实现更为复杂,需要更多的。消除了Zero2中的一些计算冗余。,可能在某些情况下提高计算效率。前向和反向传播时需要更多的通信。进一步减少模型状态的内存占用。ZeRO-2更大的模型。原创 2024-07-06 16:52:02 · 2505 阅读 · 0 评论 -
DeepSpeed github官网介绍
DeepSpeed 提供了系统创新的融合,使大规模深度学习训练变得有效、高效,大大提高了易用性,并在可能的规模方面重新定义了深度学习训练格局。为了进一步提高推理效率,DeepSpeed 为研究人员和从业人员提供易于使用且组合灵活的压缩技术来压缩他们的模型,同时提供更快的速度、更小的模型大小并显着降低的压缩成本。DeepSpeed 汇集了张量、管道、专家和零并行等并行技术的创新,并将它们与高性能定制推理内核、通信优化和异构内存技术相结合,以前所未有的规模实现推理,同时实现无与伦比的延迟、吞吐量和性能。原创 2023-07-27 17:06:34 · 2826 阅读 · 0 评论 -
DeepSpeed之ZeRO系列:将显存优化进行到底
目前训练超大规模语言模型主要有两条技术路线:TPU + XLA + TensorFlow/JAX 和 GPU +。前者由Google主导,由于TPU和自家云平台GCP深度绑定,对于非Googler来说, 只可远观而不可把玩,后者背后则有NVIDIA、Meta、MS大厂加持,社区氛围活跃,也更受到群众欢迎。上面提到的DeepSpeed的核心是ZeRO(Zero Redundancy Optimizer),简单来说,它是一种显存优化的数据并行(data parallelism, DP)方案。原创 2024-02-15 14:40:07 · 2240 阅读 · 0 评论 -
deepspeed源码解析DeepSpeedExamples/applications/DeepSpeed-Chat/training/step2_reward_model_finetuning/m
Python 脚本的逐行解释,该脚本定义了一个名为。函数,配置训练相关的 DeepSpeed 参。设置为 PyTorch 设备(例如 CPU。不等于 -1,表示程序在分布式环境下运行。显示帮助消息时显示(例如,当脚本以。数据分割的格式和如何计算百分比。默认值设置为包含单个路径。程序不在分布式环境下运行。实例,用于解析命令行。全局秩,并将其存储在。值应该被解释为字符串。原创 2024-05-22 23:49:23 · 561 阅读 · 0 评论 -
[deepspeed源码解析]site-packages>deepspeed >launcher >runner.py 多机多卡 + deepspeed配置
如果未检测到或传入主机文件,则 DeepSpeed 将查询本地计算机上的 GPU 数量以发现可用的插槽数量。一旦 DeepSpeed 引擎初始化完毕,就可以使用三个简单的 API 来训练模型,即前向传播(可调用对象)、后向传播(另外,DeepSpeed 允许您将模型的分布式训练限制在可用节点和 GPU 的子集上。:在 FP16/混合精度训练中,DeepSpeed 引擎会自动处理损失缩放,以避免梯度中的精度损失。然后,DeepSpeed 将确保在其训练作业的每个节点上启动每个进程时设置这些环境变量。原创 2024-07-05 20:59:59 · 1365 阅读 · 0 评论 -
大模型国产化适配7-华为昇腾LLM落地可选解决方案(MindFormers、ModelLink、MindIE)
本文的所有信息都是截止2024年4月最新的一些信息,如有不准确的地方欢迎讨论。总的来说,昇腾最近一年多经过海量大模型需求的洗礼,正在快速变得成熟和完善。希望国产AI芯片、AI软硬件生态越来越好。原创 2024-04-18 15:23:10 · 3225 阅读 · 0 评论 -
大模型部署综述
早期LLM的部署系统(如英伟达Triton上的FasterTransformer)只支持request- level scheduling,然后Orca考虑到可变的输出序列长度, 开始采用first-come-first-serve (FCFS)的顺序按迭代粒度计划engine的执行,同时配合批处理来提高硬件利用率,后来vLLM和RayLLM延续了这种做法使用continuous batching,以及TensorRT-LLM使用的Inflight batching。原创 2024-04-17 09:56:11 · 1118 阅读 · 0 评论 -
大模型训练加速之FlashAttention系列:爆款工作背后的产品观
FA把优化目标是单个Head的Attention计算内,N是seqence length长度、d是hidden dimension大小。输入是。原创 2024-04-15 12:30:02 · 1403 阅读 · 0 评论 -
GPT-5出世,需5万张H100!全球H100总需求43万张, 英伟达GPU陷短缺风暴
是的,情况似乎是这样。从租赁到自建云服务的顺序大概是:按需租云服务(纯租赁云服务)、预定云服务、托管云服务(购买服务器,与提供商合作托管和管理服务器)、自托管(自己购买和托管服务器))。包括OpenAI、Anthropic、DeepMind、谷歌,以及X.ai在内的所有大型实验室都在进行大型语言模型的训练,而英伟达的H100是无可替代的。就像前边英伟达的高管提到的,H100的GPU所提供的算力,最终要通过各个云计算提供商整合到产业链中去,所以H100的短缺,一方面是GPU生成造成的。主要的问题是 HBM。原创 2023-08-06 15:53:17 · 282 阅读 · 0 评论 -
fastllm 大模型推理加速 c++库
🚀 纯c++实现,便于跨平台移植,可以在安卓上直接编译🚀 ARM平台支持NEON指令集加速,X86平台支持AVX指令集加速,NVIDIA平台支持CUDA加速,各个平台速度都很快就是了🚀 支持浮点模型(FP32), 半精度模型(FP16), 量化模型(INT8, INT4) 加速🚀 支持多卡部署,支持GPU + CPU混合部署🚀 支持Batch速度优化🚀 支持并发计算时动态拼Batch🚀 支持流式输出,很方便实现打字机效果🚀 支持python调用。原创 2023-07-28 16:45:44 · 2012 阅读 · 2 评论 -
英伟达NCCLNVIDIA 集体通信库 (NCCL) 实现了针对 NVIDIA GPU 和网络进行优化的多 GPU 和多节点通信原语。NCCL 提供全收集、全归约、广播、归约、归约分散以及点对点发送
NCCL 几乎兼容任何多 GPU 并行化模型,例如:单线程、多线程(每个 GPU 使用一个线程)和多进程(MPI 与 GPU 上的多线程操作相结合)。NCCL 在节点内和跨节点的多个 GPU 上提供快速集合。NCCL 提供全收集、全归约、广播、归约、归约分散以及点对点发送和接收等例程,这些例程经过优化,可在。NVIDIA 集体通信库 (NCCL) 实现了针对 NVIDIA GPU 和网络进行优化的多 GPU 和。等领先的深度学习框架都集成了 NCCL,以加速多 GPU 多节点系统上的深度学习训练。原创 2023-07-27 21:04:11 · 913 阅读 · 0 评论 -
accelerate launch/torchrun
采用[:](例如node1.example.com:29400)的形式,指定C10d集合点后端应实例化和托管的节点和端口。要在同一主机上运行单节点、多工作线程的多个实例(单独的作业),我们需要确保每个实例(作业)都设置在不同的端口上,以避免端口冲突(或更糟糕的是,两个作业被合并为一项工作)。节点离开(缩小规模):代理收到离开通知,所有现有的工作人员都停止,形成新的工作人员,并且所有工作人员都以新的和。多节点多工作线程:在参与训练的所有节点上使用相同的参数启动启动器。原创 2023-07-04 14:29:31 · 2068 阅读 · 0 评论 -
accelerate launch参数
这个参数字典是用来配置ChatGLM模型的,下面是每个参数的详细解释:"_name_or_path": 表示模型或模型配置的名称或路径,这里是"THUDM/chatglm2-6b"。"model_type": 指的是使用的模型类型,这里是"chatglm"。"architectures": 指的是模型架构类型,这里是"ChatGLMModel"。"auto_map": 是自动映射的设置,将一些通用类映射到ChatGLM特定的类。原创 2023-07-04 03:27:41 · 851 阅读 · 0 评论 -
Accelerate launch pytorch分布式训练
在实践中,这意味着:你必须特别注意让你的输入中的所有张量具有相同的形状(所以没有动态填充),并且不应该使用具有。在单个进程上执行的语句:有些语句只需要在特定的进程上执行而无需在所有进程上执行,如数据下载、记录日志、以及打印进度条。上同时部署你的脚本会带来一个复杂的问题:虽然每个进程都是按顺序执行所有指令,但有些可能比其他的快。的模块不应该在不同的设备上分割。这可能会导致明显的减速,因为所有的进程都需要与它们进行更多次的通信。首先,你应该等待所有的进程到达脚本中的 “延迟执行” 所描述的那个点。原创 2023-07-04 03:02:10 · 5862 阅读 · 0 评论 -
Ubuntu Linux AI大模型开发常用命令 - 更新中 包括NVIDIA状态,和安装相关常用软件包,没事就背背 - 背诵创造美好生活
Ubuntu AI大模型开发常用命令 - 更新中 包括NVIDIA状态,NVIDIA状态,实时更新:和安装相关常用软件包没事就背背,增加开发效率。原创 2023-06-21 11:28:05 · 589 阅读 · 0 评论 -
[细读经典]Megatron论文和代码详细分析(1)
作为一款支持multi-nodemulti-GPU的可以直接用来训练GPT3等世界上超大规模的自然语言模型的开源代码,Megatron值得被深入分析。Xianchao-Wu/Megatron-LMgithub.com/Xianchao-Wu/Megatron-LM正在上传…重新上传取消除了上面的代码部分,我主要参照的是:ondemandrgt=yes正在上传…重新上传取消第一部分:意义何在?想玩转GPT3这样的超大规模模型。原创 2023-06-15 12:17:37 · 3414 阅读 · 2 评论 -
Megatron-LM GPT2
例如,与在通过 40 Gbps Infiniband 互连连接的四节点集群上使用模型并行相比,使用 ZeRO 驱动的数据并行可以训练 GPT-2 模型快近 4 倍,其中每个节点有四个 NVIDIA 16GB V100 GPU 与 PCI-E 连接. 因此,随着这种性能提升,大型模型训练不再局限于具有超快速互连的 GPU 集群,也可以在带宽有限的适度集群上进行。:ZeRO-2 使模型科学家能够有效地训练多达 130 亿个参数的模型,而无需任何通常需要模型重构的模型并行性(图 2,右下角)。原创 2023-06-15 11:44:30 · 1011 阅读 · 0 评论 -
DeepSpeed零冗余优化器Zero Redundancy Optimizer
DeepSpeed 首先包括 ZeRO-Offload 的卸载功能,ZeRO-Offload 是一种用于将优化器和梯度状态卸载到 ZeRO-2 中的 CPU 内存的系统。ZeRO 通过在分布式训练硬件中的可用设备(GPU 和 CPU)之间划分各种模型训练状态(权重、梯度和优化器状态)来减少每个 GPU 的内存消耗。ZeRO-3 是 ZeRO 的第三个阶段,它对整个模型状态(即权重、梯度和优化器状态)进行分区,以根据数据并行度线性扩展内存节省。注意,在构建层时指定相应的基类,可以将模型并行和平铺结合起来。原创 2023-06-15 10:44:50 · 3773 阅读 · 0 评论 -
DeepSpeed Chat: 一键式RLHF训练,让你的类ChatGPT千亿大模型提速省钱15倍
近日来,ChatGPT及类似模型引发了人工智能(AI)领域的一场风潮。这场风潮对数字世界产生了革命性影响。ChatGPT类模型具有惊人的泛用性,能够执行归纳、编程、翻译等任务,其结果与人类专家相当甚至更优。为了使ChatGPT等模型的训练和部署更轻松,AI 开源社区进行了各种尝试(例如、Vicuna、等)。然而,尽管开源社区付出了巨大的努力,目前仍缺乏一个支持端到端的基于人工反馈机制的强化学习(RLHF)的规模化系统,这使得训练强大的类ChatGPT模型十分困难。例如,使用现有的开源系统训练一个具有。原创 2023-06-15 10:31:24 · 74 阅读 · 0 评论