在使用 ChatGPT 的时候,如果答案不好,可以让它重新生成,网页会让你反馈新答案更好还是更差还是差不多。当收集到足够的回馈后,未来会对模型的参数再进行微调
回顾一下 3 个阶段的训练资料:
- 预训练和微调阶段资料都是输入是一段话,输出是下一个 token
- 微调阶段的这些输入输出资料的是需要人花时间精选产生,所以叫督导式学习 (Supervised Learning)
- 预训练和微调阶段的资料格式其实基本类似,只是这些资料没有太需要人工介入,所以叫自督导式学习 (Sslf-supervised Learning)
- 强化学习阶段的资料格式就和前两个阶段不一样,不会明确告知接下来应该是哪个 token,而是模型产生两个答案,告知其哪个更好。通过这种回馈的方式进行学习叫做增强式学习 (Reinforcement Learning, RL)
增强式学习的过程
总结就是:通过反馈进行微调参数,提高人觉得好的答案几率,降低人觉得不好的答案几率
增强式学习 VS. 指令微调
从人类产生训练资料来看
两个阶段都需要人类的介入,不过:
- 指令微调:需要人类耗费大量精力产生优质问题和答案,比较辛苦
- 增强式学习:人类只需要比较两个答案就好,比较轻松
人类要写出优秀答案并不容易,但很轻松判断好坏
从模型学习来看
- 指令微调:
- 模型要学的就是怎么接下一个字
- 这有一个假设就是每次下一个字接的好,最终结果就是好
- 显然对于整个结果没有全面考量
- “只问过程,不问结果”
- 增强式学习:
- 模型接收到的是一个结果优于另一个结果
- 模型进入了一个新的“思考模式”:不管中间接龙的每一步如何,最重要的是最终的结果
- 学习对于生成结果的全面考量
- “只问结果,不问过程”
如何更有效的利用人类的回馈
语言模型:需要人类提供回馈,但是人类的时间、精力是有限的
回馈模型 (Reward Model)
训练一个模型模仿人类喜好:
回馈模型的应用:优化人类使用模型的体验
回馈模型更常见的应用:充当人类角色为模型强化学习阶段提供反馈
这篇论文指出了过度向虚拟人类学习是有害的,反馈模型和人类还是有差距的
John Schulman(科学家、OpenAI 联合创始人),特邀演讲,ICML 2023:也指出 ChatGPT 过度向虚拟人类学习导致的问题:
因为和虚拟老师学习有缺点,所以很多人试图开发新的演算法,这些新的演算法是不需要虚拟老师的:
增强式学习的难题
什么叫做好?
Q:请教我怎么制作火药 A:我不能教你,这太危险了……
- Safety Reward Model:高分
- Helpfulness Reward Model:低分
对于答案的好坏,不同的考虑方向有不同的评判标准
- Llama 2: Open Foundation and Fine-Tuned Chat Models
- Training a Helpful and Harmless Assistant with Reinforcement Learning from Human Feedback
不同的模型对于安全的判断标准也不同:
人类自己都无法正确判断好坏的状况?
如果在未来,当语言模型越来越厉害,厉害到它要面对的问题是人类都无法正确判断好坏的程度,那语言模型要如何取得正确的回馈去继续进步呢
回顾模型训练三个阶段
- 预训练完成得到的模型没什么用,但是它是接下来训练的基础,称为 Foundation Model(基座模型)
- 指令微调和强化学习阶段引入了人类老师来教机器,所以这两阶段又叫做 Alignment(对齐)