RTX 3080 移动版训练大模型指南:GRPO在资源有限情况下的应用与优化

进不了网站?换个网络试试!

可以在RTX 3080移动版本中培训哪种大型型号?本文为在GPU资源有限时使用GRPO培训的开发人员提供了宝贵的指导。

自从-R1发布以来,小组相对政策优化(GRPO)由于其有效性和训练便利性而成为强化大型语言模型的热门话题。 R1论文显示了如何使用GRPO从LLM(-V3)之后的基本指令转换为推理模型(-R1)。

GRPO是一种在线学习算法(),通过使用培训模型本身在培训过程中生成的数据来进行迭代的改进。 GRPO的目的是在确保模型保持在参考策略()附近的同时,以最大化生成完成()的优势函数()。

RTX 3080 移动版训练大模型指南:GRPO在资源有限情况下的应用与优化插图

本文的目的是为您节省一些时间,并让您根据硬件预算选择正确的型号大小。当您开始微调时,您必须做出的重要决定是选择型号大小,以及您是否执行完整的微调或参数有效的微调(PEFT)。

该文章的作者来自AI Oxen.ai的首席执行官Greg。

RTX 3080 移动版训练大模型指南:GRPO在资源有限情况下的应用与优化插图1

原始链接:

作者说,他发现TRL库中有一个易于使用的GRPO实现,并立即使用带有16GB视频内存的RTX 3080的小笔记本电脑开始培训。您可能会遇到的,作者发现示例代码中的参数设置导致(OOM,失误)导致巨大的内存。

总共。他 。 d但是避免////docs//notes/cuda.html#-)

实际用法

作者说,他们进行了一系列实验,以确定训练各种尺寸模型所需的视频记忆(VRAM)要求。参数的数量从5亿至140亿,它们比较了重量的完整微调与有效的参数微调(使用LORA),并且所有训练运行均在 H100上进行,因此OOM在这里表示> 80GB> 80GB Vram。

RTX 3080 移动版训练大模型指南:GRPO在资源有限情况下的应用与优化插图2

在表中,您可以在GSM8K数据集的培训的前100个步骤中找到峰值内存使用量。用于实验的模型是:

RTX 3080 移动版训练大模型指南:GRPO在资源有限情况下的应用与优化插图3

所有实验均使用GPU市场完成,因此每个实验的成本仅为几美元H100。

实验结果表明,内存需求随不同的模型大小和训练方法而差异很大。例如,全参数微调需要比PEFT更多的内存。

为什么GRPO的内存需求很高

这始于GRPO的原理,GRPO是其流程图。

RTX 3080 移动版训练大模型指南:GRPO在资源有限情况下的应用与优化插图4

GRPO具有高内存需求的原因是,它在内部涉及多个模型,并且每个查询都会在训练数据中产生多个输出。上图中的策略模型,参考模型和奖励模型都是需要推理的LLM。 (尽管从技术上讲,奖励模型可能不需要参数化,并且可能只是功能或正则表达式,但不会影响GRPO的高内存需求。)

为什么8位优化和梯度检查点有助于减少内存足迹?

一般而言,训练大型语言模型需要在内存中存储三种主要信息:模型参数,模型学习所需的梯度以及跟踪优化器的数据。

我们可以理解上述内容:如果模型的参数占X的空间,则梯度也将占据相同的空间。然后,像Adamw这样的优化器需要更多的空间,因为它们就像录音机一样,跟踪最近的更新历史记录,以便更好地确定未来的优化。

为了减轻这种记忆负担,通常使用两种技术:

将这些技术结合起来,即使对于GPU资源有限的人,也可以培训较大的模型。

代码示例

像TRL这样的图书馆已经开始支持GRPO,对LLM进行了微调,使其变得非常容易。代码也非常简洁,只需用教练替换并定义一些奖励即可。 GRPO的最小代码量仅为99行,如果使用Meta-llama /Llama-3.2-1B-和 /GSM8K(例如 /gsm8k)之类的小型型号,则可以很快启动。

TRL项目地址:

spond in the :"####"####""train"set'/gsm8k''main'da'''role''''''''},'role''user'''' '],'''“”“ float”“如果有一个。

“”“”^ n n $“ n。*? n n。*? 0”。 “”“从XML标签和它到。

2-1b - “”“” cuda“”“” --...''。

_func],“”主

num的用途是什么

NUM是一个超参数,可以确定我们将在培训数据中为每个查询进行采样多少完成。但是,这可以大大增加VRAM消耗量。

RTX 3080 移动版训练大模型指南:GRPO在资源有限情况下的应用与优化插图5

当前有一个空旷的问题可以帮助解决内存瓶颈问题。您可以参考以下链接

地址:

对于= 8,16,64(本文中使用的64个),作者指出,1B参数模型并没有再次计算上述所有值,而是用于测试以显示内存增长。但是,作者仍然建议您在修复内存瓶颈之前使用= 4,这也可以实现良好的性能。

RTX 3080 移动版训练大模型指南:GRPO在资源有限情况下的应用与优化插图6

某些影响VRAM的因素

需要大量实验来对影响视频记忆(VRAM)使用的所有因素进行全面的超参数验证。为简单起见,这里只有需要注意的设置以及实验中使用的特定值。

对VRAM使用的粗略估计

如果您正在使用FP16精度进行培训,这里有一些简单的估计方法,可以帮助您了解主要使用内存的位置:

最后,这是关于准确性的。作者完成了10亿参数Llama 3.2型号的完整培训。在应用GRPO之前,该模型在保留测试集中的准确性约为19%,而模型的准确性在一个训练周期后飙升至约40.5%。尽管这远非SOTA水平,但它表明了GRPO的强大潜力。

本站候鸟号已成立3年,主要围绕财经资讯类,分享日常的保险、基金、期货、理财、股票等资讯,帮助您成为一个优秀的财经爱好者。本站温馨提示:股市有风险,入市需谨慎。

相关推荐

暂无评论

发表评论