吴恩达RLHF课程笔记
2023-12-22 23:56:50
1.创建偏好数据集
一个prompt输入到LLM后可以有多个回答,对每个回答选择偏好
比如{prompt,answer1,answer2,prefer1}
2.根据这个数据集(偏好数据集),创建reward model,这个model也是一个LLM,并且它是回归模型,返回的是对每个answer的score,loss是最大化winning candidate和losing candidate的score。训练结束后我们输入一个prompt(使用prompt数据集,这个数据集和偏好数据集分布要一致)和对应的answer,会得到一个score,显示的是这个answer有多好(有多符合标记数据的人的偏好)
3.利用这个reward model和强化学习循环调整LLM(通过PPO),还会添加惩罚项
首次运行pipeline的时候使用一个比较小的数据集确定它能用就行
Kl_coeff 是正则项,防止LLM对某些词汇有较高的score从而使产生的answer充满那些词汇 kl loss反应模型有多么偏离最初(应该先升高然后趋于平稳,reward曲线也是,如果没有趋于平稳就说明欠拟合了,如果过早平稳,说明应该减少step或者epoch)
选择合适的指标
sidebyside 可以用pandas把prompt,na?ve completion, tuned completion进行可视化对比
RLAIF让AI生成偏好数据集,AutoSxS用AI进行sidebyside评估
文章来源:https://blog.csdn.net/weixin_72100405/article/details/135162581
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!