创建DPO任务
DPO模型训练,直接偏好学习,您可以通过偏好数据直接优化模型。DPO方法能够简单、高效的训练得到符合您偏好的模型。
登录到千帆大模型操作台,在左侧功能列选择DPO,进入DPO主任务界面。
创建任务
您需要在DPO任务界面,选择“创建训练任务”按钮,如果您在任务列表已经有创建好的模型任务,可以直接点击“新建运行”创作模型的迭代版本,如果已有运行中的的版本,再次创建的运行任务不可切换基础模型类型。
基本信息
填写好任务名称后,选择任务类型,再进行500字内的业务描述即可。
关于基础模型和版本的配置详情,可查看训练配置。
训练配置
训练配置大模型参数,调整好基本配置。
- 在DPO训练任务中,可以选择开启增量训练开关。
注意:基础模型继承基准模型(全量更新所得)版本,所以当您选定基准模型后,基础模型及版本不可变更。
- 若基准模型有保存Checkpoint的最新的Step,则显示 【名称+版本+Step】。
- 您也可以选择直接不使用增量训练,这样直接在基础模型上进行DPO。
·ERNIE Speed
百度自主研发的文心产业级知识增强大语言模型(高性能版),相较ERNIE Lite实现了基础模型的全面升级,在理解、生成、逻辑和记忆能力上有显著提升。
ERNIE-Speed-8K
ERNIE-Speed-8K 单条数据支持8192 tokens。模型基于海量高质量数据训练,具有更强的文本理解、内容创作、对话问答等能力。
- 参数配置
超参数 | 简单描述 |
---|---|
迭代轮次 | 迭代轮次(epoch),控制训练过程中的迭代轮数。 |
学习率 | 学习率(learning_rate)是在梯度下降的过程中更新权重时的超参数,过高会导致模型难以收敛,过低则会导致模型收敛速度过慢,平台已给出默认推荐值,可根据经验调整。 |
序列长度 | 单条数据的长度,单位为token。如果数据集中每条数据的长度(输入)都在4096 tokens 以内,建议选择4096,针对短序列可以达到更优的训练效果。 |
保存日志间隔 | 日志保存间隔步数。 |
预热比例 | 学习率预热步数占比,指训练初始阶段,在学习率较低的情况下逐渐增加学习率的比例或速率,能够帮助模型更好地适应数据,提高训练的稳定性和性能。 |
正则化系数 | 正则化系数(Weight_decay),用于防止模型对训练数据过拟合。但系数过大,可能导致欠拟合。 |
beta | DPO loss 温度超参beta。 |
随机种子 | 随机种子 |
学习率调整计划 | 学习率调整计划(schedulerType),用于调整训练中学习率的变动方式。 |
cosine 策略的波数 | 仅用于 cosine 策略,表示波数。 |
polynomial 策略的末端 LR | 仅用于 polynomial 策略,表示末端 LR(注意,该值若生效需要比学习率小)。 |
polynomial 策略的幂数 | 仅用于 polynomial 策略,表示幂数。 |
·ERNIE Lite
百度自行研发的大语言模型,覆盖海量中文数据,具有更强的对话问答、内容创作生成等能力。
ERNIE-Lite-8K-0308
单条数据支持8192 tokens。ERNIE Lite的最新版本,对效果和性能都进行了优化。
- 参数配置
超参数 | 简单描述 |
---|---|
迭代轮次 | 迭代轮次(epoch),控制训练过程中的迭代轮数。 |
学习率 | 学习率(learning_rate)是在梯度下降的过程中更新权重时的超参数,过高会导致模型难以收敛,过低则会导致模型收敛速度过慢,平台已给出默认推荐值,可根据经验调整。 |
序列长度 | 单条数据的长度,单位为token。如果数据集中每条数据的长度(输入)都在4096 tokens 以内,建议选择4096,针对短序列可以达到更优的训练效果。 |
保存日志间隔 | 日志保存间隔步数。 |
预热比例 | 学习率预热步数占比,指训练初始阶段,在学习率较低的情况下逐渐增加学习率的比例或速率,能够帮助模型更好地适应数据,提高训练的稳定性和性能。 |
正则化系数 | 正则化系数(Weight_decay),用于防止模型对训练数据过拟合。但系数过大,可能导致欠拟合。 |
beta | DPO loss 温度超参beta。 |
随机种子 | 随机种子 |
学习率调整计划 | 学习率调整计划(schedulerType),用于调整训练中学习率的变动方式。 |
cosine 策略的波数 | 仅用于 cosine 策略,表示波数。 |
polynomial 策略的末端 LR | 仅用于 polynomial 策略,表示末端 LR(注意,该值若生效需要比学习率小)。 |
polynomial 策略的幂数 | 仅用于 polynomial 策略,表示幂数。 |
ERNIE Tiny
百度自研的超高性能大语言模型,精调成本在文心系列模型中最低。
ERNIE-Tiny-8K
单条数据支持8192 tokens。
- 参数配置
超参数 | 简单描述 |
---|---|
迭代轮次 | 迭代轮次(epoch),控制训练过程中的迭代轮数。 |
学习率 | 学习率(learning_rate)是在梯度下降的过程中更新权重时的超参数,过高会导致模型难以收敛,过低则会导致模型收敛速度过慢,平台已给出默认推荐值,可根据经验调整。 |
序列长度 | 单条数据的长度,单位为token。如果数据集中每条数据的长度(输入)都在4096 tokens 以内,建议选择4096,针对短序列可以达到更优的训练效果。 |
保存日志间隔 | 日志保存间隔步数。 |
预热比例 | 学习率预热步数占比,指训练初始阶段,在学习率较低的情况下逐渐增加学习率的比例或速率,能够帮助模型更好地适应数据,提高训练的稳定性和性能。 |
正则化系数 | 正则化系数(Weight_decay),用于防止模型对训练数据过拟合。但系数过大,可能导致欠拟合。 |
beta | DPO loss 温度超参beta。 |
随机种子 | 随机种子 |
学习率调整计划 | 学习率调整计划(schedulerType),用于调整训练中学习率的变动方式。 |
cosine 策略的波数 | 仅用于 cosine 策略,表示波数。 |
polynomial 策略的末端 LR | 仅用于 polynomial 策略,表示末端 LR(注意,该值若生效需要比学习率小)。 |
polynomial 策略的幂数 | 仅用于 polynomial 策略,表示幂数。 |
数据配置
训练任务的选择数据及相关配置,大模型调优任务需要匹配Prompt+Chosen+Rejected类型的数据集。至少需要100条数据才可发起训练。
数据集来源可以为千帆平台已发布的数据集版本,如果选择两个及以上的数据集,支持数据配比,数据占比总和等于100%。
您可以通过提高采样率,来提升数据集的占比。
采样率:对数据集进⾏随机采样,取值范围为[0.01-10]。当数据集过⼤或质量不⾼,可以利⽤⽋采样(采样率⼩于1)来缩减训练数据的⼤⼩;当数据集过⼩或质量较⾼,可以利⽤过采样(采样率⼤于1)来增加训练数据的⼤⼩,数值越⼤训练时对该部分数据的关注度越⾼,但训练时⻓及费⽤越⾼,推荐过采样率范围为[1-5]。
数据拆分比例:您可以选择对上面已选择的数据集进行拆分作为测试集,或者指定数据作为测试集。
- 数据拆分比例:比如设置20,则表示选定数据集版本总数的80%作为训练集,20%作为验证集。
- 平台数据集:需要选择Prompt+Chosen+Rejected类的数据集。最多支持1000条数据用于测试。如果数据集大于1000条,将取前1000条数据做测试集。
若数据集保存在BOS中,请勿在提交任务后修改BOS数据。修改后可能会导致任务失败!
- DPO支持选择Prompt+Chosen+Rejected数据,Prompt中支持单轮对话和多轮对话。
关于训练费用可查看价格文档。
以上所有操作完成后,点击“确定”,则发起模型训练的任务。