创建强化学习训练任务
更新时间:2024-09-20
强化学习(Reinforcement Learning, RL),又称再励学习、评价学习或增强学习,是机器学习的范式和方法论之一,用于描述和解决智能代理(agent)在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标的问题。
强化学习主要是训练对象每一步如何进行决策,采用什么样的行动可以完成特定的目的或者使收益最大化。
登录到本平台,在左侧功能列偏好对齐RLHF训练中选择强化学习训练,进入强化学习训练主任务界面。
创建任务
您需要在强化学习训练任务界面,选择“创建训练任务”按钮。
基本信息
填写好作业名称后,再进行500字内的作业描述即可。
参数配置
-
选择大模型
- 预置大模型:ERNIE-Lite-8K-0308
百度自主研发的大语言模型,覆盖海量中文数据,具有更强的对话问答、内容创作生成等能力,单条数据支持8192 tokens。ERNIE Lite的最新版本,对效果和性能都进行了优化。
- 预置大模型:ERNIE-Lite-8K-0308
- 选择奖励模型:平台运行成功的奖励模型版本
在平台奖励模型的基础上,继续完成强化训练,训练出最大化靠近人类反馈的模型。 - 参数配置
超参数 | 描述 |
---|---|
迭代轮次 | 迭代轮次(Epoch),控制训练过程中的选代轮数。可以根据数据规模适当调整Epoch大小。 |
Critic学习率 | Critic学习率(LearningRate)是在梯度下降的过程中更新权重时的超参数,过高会导致模型难以收敛,过低则会导致模型收敛速度过慢,平台已给出默认推荐值,可根据经验调整。 |
Actor学习率 | Actor学习率(LearningRate)是在梯度下降的过程中更新权重时的超参数,过高会导致模型难以收敛,过低则会导致模型收敛速度过慢,平台已给出默认推荐值,可根据经验调整。 |
序列长度 | 单条数据所有轮prompt+response+的长度和,单位为token。建议在大于数据集中最长数据的前提下选择最短的序列长度配置,可以达到更优的训练效果。 |
max_prompt_len_4k | 数据中src的最长长度,超出长度会被截断。 |
max_length_4k | 生成样本时的最大生成长度,max_length调大会增加生成时间,并且增加显存占用。max_length+max_prompt_len应当小于max_seq_len。 |
clip_range_score | 对reward进行裁剪的值。 |
clip_range_value | PPO Value-Clip, critic model (value model)对当前sequence的新值与生成时计算出的旧值的差距超过该范围将进行裁剪。 |
clip_range_ratio | PPO-Clip,将当前sequence的新概率与生成时的旧概率比值(importance weight)裁剪到(1-clip_range_ratio,1+clip_range_ratio)范围。 |
保存日志间隔 | 日志保存间隔步数。 |
预热比例 | 学习率预热的步数占比。 |
正则化系数 | 正则化系数(Weight_decay),用于防止模型对训练数据过拟合。但系数过大,可能导致欠拟合。 |
top_p | 生成样本top-p-filtering值。 |
验证步数 | Validation Step,计算验证集Loss的间隔步数;为0时不开启验证,没有相关指标。 |
repetition_penalty | 生成样本时的长度惩罚系数。 |
temperature | 生成样本时的temperature。 |
kl_coeff | 对reward增加KL-Penalty的系数。 |
Checkpoint保存个数 | 训练过程最终要保存的Checkpoint个数,Checkpoint保存会增加训练时长。 |
Checkpoint保存间隔数 | 训练过程中保存Checkpoint的间隔Step数。 |
随机种子 | 随机种子。 |
学习率调整计划 | 学习率调整计划(schedulerType),用于调整训练中学习率的变动方式。 |
cosine 策略的波数 | 仅用于 cosine 策略,表示波数。 |
polynomial 策略的末端 LR | 仅用于 polynomial 策略,表示末端 LR(注意,该值若生效需要比学习率小)。 |
polynomial 策略的幂数 | 仅用于 polynomial 策略,表示幂数。 |
梯度累计步数 | 将多次计算得到的梯度值进行累加,然后一次性进行参数更新。0为不指定自动计算。 |
数据配置
选择奖励模型后,自动匹配训练数据集,您只需调整数据拆分比例即可。
建议数据集总条数在1000条以上,训练模型更加精准。
以上所有操作完成后,点击“确定”,则发起模型训练的任务。