模型训练基础:什么是强化学习?
强化学习基本概念
强化学习是一种机器学习方法,旨在让智能体(Agent,即人工智能模型)通过与环境的交互来学习如何做出最优决策(Policy)。在强化学习中,智能体根据所处的环境(Environment)中的状态(State),通过执行动作(Action)来影响环境,并从环境中获得奖励(Reward)或惩罚。智能体的目标是通过学习最大化长期奖励来制定最佳策略。
强化学习要素
状态(State) 动作(Action) 策略(Policy)
反馈、奖励(Reward)
一条强化学习路径
价值函数
状态价值函数
状态价值函数(State Value Function):该函数是针对一个策略 ππ 而言的,它是指从状态 ss 出发,遵循策略 ππ 能够获得的期望回报。
动作价值函数
强化学习与 NLP 相结合的困难点
因为自然语言本质上是一种描述世界的渠道。整个现实世界的事物都可以通过自然语言来表示,形成抽象概念和抽象关系。因此,NLP 所依赖的环境是整个现实世界,
ChatGPT 与强化学习
ChatGPT 的强化学习概念映射
我们先来回顾一下 ChatGPT 的工作流程:
而 ChatGPT 模型建模上并没有时间这个概念,因此,ChatGPT 以强化学习形式进行建模,对应的强化学习要素有如下变化:
- 智能体:即 ChatGPT 模型本身;
- 环境:整个现实世界,被自然语言所描述和抽象,ChatGPT 实际是和人交互,因此,对于 ChatGPT 而言,人类用户就是它的环境;
- 状态:在 ChatGPT 当中,根据 ChatGPT 输入输出流程图可知,状态就是 prompt。此时,状态不再依赖时间存在(像马里奥游戏那样),时间被省略掉了,建模形式是无时间状态的;ChatGPT 实际上只关注输入和输出,也就是,我们只关心这一次的反馈就好,不需要像马里奥游戏一样再关心下次动作和反馈;
- 策略、动作:我们知道,强化学习中策略(Policy)实际上就是一个对环境响应的概率分布,而 ChatGPT 本身就是一个大语言模型概率分布(第 3 节中介绍)。因此,ChatGPT 模型对给定的输入,反馈一条输出文本,就是按照当前模型策略,进行了一次动作;
- 反馈 reward:人对于 ChatGPT 输出结果的评价,好或者差;注意,在上一节中,我们提到了,人工标注数据的代价非常大。这也是 reward 难以制做之处。
制作 reward model
ChatGPT 应用强化学习的主要困难,就是模型给出的输出反馈,没有什么方便的程序或者机制给出恰当的评价,就只能靠人工一个个的反馈。
总结
- 强化学习是让智能体(Agent,即人工智能模型)通过与环境的交互来学习如何做出最优决策(Policy)。
- NLP 与强化学习结合的难点在于环境复杂(现实世界事物无限多),reward 函数难设计(只能靠人工评价模型输出的好坏)。