Files
happy-llm/docs/chapter7/7.1 强化学习的目标.md
2024-12-09 17:43:53 +08:00

5.5 KiB
Raw Blame History

7.1 强化学习的目标

在我们进入强化学习的细节之前让我们先看看它的起源。强化学习Reinforcement Learning简称RL其实并不是什么新鲜事物。它的理论基础可以追溯到20世纪初的行为心理学尤其是Edward Thorndike和B.F. Skinner对于动物学习的研究。Thorndike提出了“效果律”即如果一个行为带来积极的结果那么这种行为重复发生的概率会增加。Skinner则进一步发展了这种思想提出操作性条件作用学说通过奖励和惩罚来塑造行为。

计算机科学领域的强化学习是从这些心理学原理生发出来的。在20世纪80年代随着计算能力的提升和数学理论的发展人们开始尝试将这些生物心理学的学习概念应用于机器和计算机程序从而发展出了现代意义上的强化学习。

7.1.1 强化学习的基本原理

现在,我们进入核心部分——强化学习的基本原理。

  • 状态State :这是一个系统在某一时刻的具体状况。比如在一个棋盘游戏中,状态可以表示棋盘上所有棋子的当前排列情况。对于一个自动驾驶汽车来说,状态可能包括汽车的速度、位置,以及周围障碍物的位置等。
  • 动作Action :动作是智能体在给定状态下可执行的操作。以自行车为例,动作可能包括前进、停止、转弯等。在一个复杂的系统中,动作集可以非常庞大。
  • 奖励Reward :这是智能体在执行某个动作后获得的反馈,通常是一个数值。奖励可以是立即的,也可以是延后的。一个好的动作可能会得到正奖励,而不好的动作可能会得到负奖励。
  • 策略Policy :策略是一套指导智能体如何选择动作的规则。简单来说,策略就是告诉智能体在每个状态下应该做什么。
  • 价值函数Value Function :这是一种对策略的评估工具,旨在预测从当前状态出发,长期来看能够获得的总奖励。值函数帮助智能体不仅考虑当前步骤的奖励,而且能更好地权衡短期和长期的收益。
  • 模型Model :在有些强化学习系统中,我们会建立一个环境模型,帮助智能体预见其动作的结果。这在很多复杂计算情况下非常有用。

Reinforcement Learning

这些元素共同作用,帮助智能体通过不断地在虚拟环境中试错来学习最佳的行动策略。在强化学习中,智能体是学习和决策的主体。它通过以下步骤与环境进行交互:

  1. 观察状态 智能体首先观察当前的状态State
  2. 选择动作 根据观察到的状态和预先确定的策略智能体选择一个动作Action
  3. 执行动作 :智能体执行所选的动作。
  4. 接收奖励和新状态 执行动作后智能体从环境中接收到相应的奖励Reward和更新后的新状态State
  5. 更新策略 :智能体使用获得的奖励信息来调整策略,以便在未来获得更好的结果。

将这个过程不断重复,智能体在反复的交互中不断优化其策略,目标是让它在给定的任务中表现得越来越好。

7.1.2 强化学习的目标

强化学习的目标十分明确:通过在给定环境中反复试探和学习,使得智能体能够选择一系列动作从而最大化其总累计奖励。 这听起来可能有些抽象,我们可以用玩游戏来比喻。在游戏中,玩家的目标是通过一系列操作(比如走路、跳跃、打怪)来赢得高分数或完成关卡。在强化学习中,这种高分或成功通过关卡的概念对应于“最大化奖励”。

在数学上,这个目标可以表示为训练一个策略 $\pi$,使得在所有状态 s 下,智能体选择的动作能够使得回报 R(\tau) 的期望值最大化。具体来说,我们希望最大化以下期望值:


E(R(\tau))_{\tau \sim P_{\theta}(\tau)} = \sum_{\tau} R(\tau) P_{\theta}(\tau)

其中:

  • $E(R(\tau)){\tau \sim P{\theta}(\tau)}$:表示在策略 P_{\theta}(\tau) 下轨迹 \tau 的回报 R(\tau) 的期望值。
  • $R(\tau)$:轨迹 \tau 的回报,即从起始状态到终止状态获得的所有奖励的总和。
  • $\tau$:表示一条轨迹,即智能体在环境中的状态和动作序列。
  • $P_{\theta}(\tau)$:在参数 \theta 下生成轨迹 \tau 的概率,通常由策略或策略网络确定。
  • $\theta$:策略的参数,控制着策略 P_{\theta} 的行为。

为了找到这个策略,我们使用梯度上升的方法,不断更新策略参数 $\theta$,使得 E(R(\tau))_{\tau \sim P_{\theta}(\tau)} 不断增大。

这种学习方式非常有效,因为它不依赖于大量的标注数据,而是通过对环境直接进行交互和反馈进行学习。这使得强化学习在许多需要适应和决策的复杂任务中,比如机器人控制、自动驾驶、金融交易乃至游戏中,都展现出了巨大的潜力。

而强化学习在大模型中的应用,比如 AlphaGo、AlphaZero 等,更是让人们看到了强化学习在复杂任务中的强大能力。这些模型通过强化学习的方法,不断优化策略,最终在围棋、象棋等游戏中击败了人类顶尖选手,展现出了强化学习在复杂任务中的巨大潜力。

强化学习也可以用于偏好对齐问题,比如可以让大模型学习模仿人类的交流方式,也会用于自动驾驶等领域。强化学习的应用领域非常广泛,未来也会有更多的应用场景。