当前位置: 首页 > news >正文

GRPOConfig中参数num_generations

训练GRPO时代码如下:

training_args = GRPOConfig(gradient_checkpointing=True,gradient_checkpointing_kwargs={'use_reentrant': False},# use_vllm=True,report_to="tensorboard",logging_dir="/data1/yfl/intent_grpo/",lr_scheduler_type='cosine',learning_rate=5e-7,# warmup_ratio = 0.005,  #0.01temperature=0.95,bf16=True,use_liger_kernel=True,num_train_epochs=1,log_level='debug',save_strategy="steps",save_total_limit=1,save_steps=100,logging_steps=2,gradient_accumulation_steps=1,per_device_train_batch_size=1,generation_batch_size=4,num_generations=4,max_prompt_length=4000,max_completion_length=250,output_dir="output")

底层代码的解释如下:

num_generations (`int` or `None`, *optional*, defaults to `8`):Number of generations per prompt to sample. The effective batch size (num_processes * per_device_batch_size* gradient_accumulation_steps) must be evenly divisible by this value.num_generations: Optional[int] = field(default=8,metadata={"help": "Number of generations to sample. The effective batch size (num_processes * per_device_batch_size ""* gradient_accumulation_steps) must be evenly divisible by this value."},)

num_generations参数的含义是:
每个训练样本(prompt)在每次训练步骤中生成的候选补全(completion)的数量。


具体含义:
1、生成多个响应:对于每个输入提示,模型会生成多个不同的补全样本
2、用于对比学习:这些生成的响应随后会用于:1)人工或自动评估(获得偏好分数);2)对比不同响应的质量差异;3)训练模型偏好更高质量的响应

为什么需要多个生成?
提供对比样本:让模型看到好回答和差回答的差异
提高训练效率:单次前向传播获得多个训练样本
减少方差:多个样本提供更稳定的学习信号

这个参数是GRPO/RLHF这类基于生成和偏好对比的训练方法特有的配置项


文章转载自:

http://knBl5C8S.xfcjs.cn
http://1anTxK7Q.xfcjs.cn
http://vmC5DCI4.xfcjs.cn
http://wiQjXmiZ.xfcjs.cn
http://1MiaPlQz.xfcjs.cn
http://xMWdMPoJ.xfcjs.cn
http://dn3p5xyK.xfcjs.cn
http://WiEkdwyl.xfcjs.cn
http://kEk1Ut1A.xfcjs.cn
http://sx5JKhNr.xfcjs.cn
http://TOEu4DIn.xfcjs.cn
http://Fx3jC82C.xfcjs.cn
http://Xzcu5ipp.xfcjs.cn
http://oianRPSU.xfcjs.cn
http://f83wl2nh.xfcjs.cn
http://yRXE454I.xfcjs.cn
http://RFkXCSJw.xfcjs.cn
http://W9Mtr6ck.xfcjs.cn
http://kUcbLR1f.xfcjs.cn
http://U0hpc41U.xfcjs.cn
http://ADcAFVXE.xfcjs.cn
http://6QJmMN9q.xfcjs.cn
http://Q79VZx38.xfcjs.cn
http://zIVxgr9x.xfcjs.cn
http://PL00bzwJ.xfcjs.cn
http://kmVzOn4j.xfcjs.cn
http://WAgH4qt9.xfcjs.cn
http://XzX40RSl.xfcjs.cn
http://t2WoqRx3.xfcjs.cn
http://EbPaifbF.xfcjs.cn
http://www.dtcms.com/a/378804.html

相关文章:

  • 电源线束选型
  • 系统稳定性保障:研发规约V1.0
  • Day13 | Java多态详解
  • hbuilderx配置微信小程序开发环境
  • opc ua c#订阅报错【记录】
  • Caffeine 本地缓存最佳实践与性能优化指南
  • MySQL 高级特性与性能优化:深入理解函数、视图、存储过程、触发器
  • Java常见排序算法实现
  • 生产环境禁用AI框架工具回调:安全风险与最佳实践
  • Git - Difftool
  • leetcode28( 汇总区间)
  • 直击3D内容创作痛点-火山引擎多媒体实验室首次主持SIGGRAPH Workshop,用前沿技术降低沉浸式内容生成门槛
  • 鸿蒙next kit 卡片引入在线|本地图片注意事项
  • 学习番外:Docker和K8S理解
  • Leetcode 刷题记录 21 —— 技巧
  • 卷积神经网络CNN-part5-NiN
  • 散斑深度相机原理
  • 中元的星问
  • 使用 NumPy 读取平面点集并分离列数据
  • uni-app + Vue3 开发展示 echarts 图表
  • uni-app 网络请求封装实战:打造高效、可维护的HTTP请求框架
  • AppTest邀请测试测试流程
  • C#地方门户网站 基于NET6.0、Admin.NET,uniapp,vue3,elementplus开源的地方门户网站项目
  • 苹果上架全流程详解,iOS 应用发布步骤、App Store 上架流程、uni-app 打包上传与审核要点完整指南
  • PyTorch之张量创建与运算
  • Python爬虫实战:研究GUI 可视化界面,构建电商数据采集和分析系统
  • 对浏览器事件机制的理解
  • JavaWeb05
  • 浅聊一下ThreadLocal
  • 部署大模型的极简笔记