欢迎来到强化学习 (RL) 的世界

欢迎来到机器学习的第三大支柱——强化学习(Reinforcement Learning, RL)的世界。与我们熟知的监督学习(从“正确答案”中学习)和无监督学习(在数据中寻找结构)不同,强化学习是一种通过与环境互动、在试错中学习以达成目标的范式 。它不是直接被告知应该做什么,而是必须自己去发现哪些行为可以带来最大的回报。

这听起来可能有些抽象,但RL正是近年来一系列令人瞩目的AI成就背后的核心驱动力。当DeepMind的AlphaGo在围棋这个古老而复杂的策略游戏中击败世界冠军时,它使用的正是强化学习 。当AI在雅达利(Atari)游戏、星际争霸(StarCraft)等复杂电子游戏中展现出超越人类玩家的水平时,其背后也是RL在不知疲倦地探索与学习。

RL的应用已经从高度结构化的模拟环境扩展到了混乱的现实世界。2023年,RL算法在真实世界的无人机竞速比赛中击败了人类冠军,这标志着该领域在应对物理世界的噪声、延迟和不可预测动态方面取得了重大突破 。这一成就展示了RL正逐渐弥合模拟与现实之间的鸿沟(sim-to-real gap),这是机器人学领域的一个主要障碍。

更值得注意的是,RL在当今最前沿的AI技术——大型语言模型(LLM)中扮演着关键角色。像ChatGPT这样的模型,其强大的推理和对话能力,并不仅仅是通过预测下一个词来获得的。它们在基础训练后,会通过一种名为“基于人类反馈的强化学习”(RLHF)的技术进行微调。在这个阶段,模型不再是简单地模仿人类语言,而是学习一种策略,以生成能够最大化某种奖励信号(例如“有用性”或“无害性”)的回答。正如RL之父理查德·萨顿(Richard Sutton)所言,强化学习是关于“弄清楚该做什么”,而不仅仅是“模仿人类”。这种混合范式标志着AI发展的一个关键转变:从主要模仿人类的模型,转向能够学习实现目标的模型。

挑战与机遇:为什么强化学习既强大又困难?

尽管强化学习取得了辉煌的成就,但它也是出了名的难以驾驭。在深入其原理之前,理解其面临的挑战至关重要,这能帮助我们建立现实的期望。

  • 训练效率与稳定性问题:与监督学习相比,RL的训练效率通常较低且更不稳定。训练过程可能会出现震荡,甚至完全无法收敛 。即使是像ChatGPT-5这样的大型项目,其训练过程也可能中途失败,这凸显了一个事实:没有人能保证RL的训练一定会成功 。

  • 数据渴求:RL通过“试错”来学习,这意味着它需要探索一个巨大的策略空间,因此需要海量的交互数据。例如,训练一个能玩雅达利游戏的AI,可能需要数百万甚至数千万次的游戏画面作为输入。

  • 奖励函数设计 (Reward Engineering):如何设计奖励函数是RL中最关键也最棘手的任务之一。它通常被描述为一门“艺术”而非纯粹的科学 。一个精心设计的奖励函数可以引导智能体学会惊人的技能,但一个有缺陷的奖励函数则可能导致智能体学会利用规则漏洞,产生怪异甚至危险的行为。这表明RL并非完全“无监督”,它只是将人类的角色从数据标注者转变为“目标设计者”——一个更抽象、也往往更困难的任务。人类需要通过设计激励机制来间接监督智能体的学习过程。

  • 难以融合硬约束:RL算法很难强制执行严格的安全性或操作性约束。这与传统的基于模型的控制方法(如模型预测控制,MPC)形成鲜明对比,后者可以很自然地将约束条件纳入其优化问题中 。RL的这一弱点,也是导致大型语言模型产生“幻觉”(即生成不符合事实的内容)的原因之一,因为我们无法轻易地将“必须说真话”这样的硬性规则编码到神经网络中 。

这些挑战的根源在于一个根本性的权衡:“无模型”学习的灵活性与“基于模型”控制的安全性保证之间的矛盾。RL的强大之处在于其“无模型”的特性,它能纯粹从数据中学习控制那些动态未知或极其复杂的系统(如视频游戏或金融市场)。然而,也正是因为缺乏精确的模型,才导致了其训练不稳定和难以处理约束的问题。因此,选择何种方法并非优劣之分,而是取决于问题的性质:如果有一个精确的系统模型,传统的控制方法通常更安全、更高效;如果没有,RL便是强大的工具,但必须谨慎地管理其内在的挑战。

RL 的核心要素:智能体与环境的互动之舞

要理解强化学习,我们首先需要熟悉它的基本词汇。所有RL问题都可以被描述为一个智能体 (Agent) 与一个环境 (Environment) 持续互动的过程 。

  • 智能体 (Agent):我们设计的算法,是学习者和决策者。
  • 环境 (Environment):智能体所处的外部世界,是它试图理解和控制的对象。
  • 状态 (State, SSS):对环境在某一时刻的描述或快照。例如,棋盘的布局、机器人的传感器读数或游戏画面的像素 。
  • 动作 (Action, AAA):智能体在某个状态下可以做出的决策或操作。
  • 奖励 (Reward, RRR):一个标量反馈信号。当智能体在某个状态下执行一个动作后,环境会给出一个奖励,用以评价该动作的好坏 。

这个互动过程形成一个持续的反馈循环:在时间步 ttt,环境处于状态 StS_tSt。智能体观察到这个状态,并根据其策略 (Policy, π\piπ) 做出一个动作 AtA_tAt。环境接收到这个动作后,会转换到一个新的状态 St+1S_{t+1}St+1,并反馈给智能体一个奖励 Rt+1R_{t+1}Rt+1 。这个过程不断重复,智能体的目标是最大化它在长期内获得的累积奖励。

这种序列决策的特性是RL与静态问题(如图像分类)最根本的区别 。在图像分类中,每次预测都是独立的;而在RL中,当前的决策会影响未来的状态和奖励,产生深远的连锁反应。这就引出了RL的核心难题之一:时间信用分配(temporal credit assignment)。一个在游戏早期做出的关键决策,可能要到几十步之后才能体现其价值(带来胜利)。智能体如何将最终的奖励(或惩罚)正确地归因于早期那个关键的动作?正是为了解决这个问题,RL引入了“回报”和“价值函数”等概念,以便将未来的奖励信息有效地传递回当前。

有趣的是,RL的这套术语与经典的控制理论有着深刻的联系。这种对应关系有助于我们从另一个角度理解RL。

强化学习术语 控制理论对应术语
智能体 (Agent) 控制器 (Controller)
环境 (Environment) 系统 / 被控对象 (System / Plant)
动作 (Action) 控制输入 / 指令 (Control Input / Command)
奖励 (Reward) / 回报 (Return) 目标函数 / 成本函数 (Objective Function / Cost Function)
状态 (State) 状态 (State)

这个对比揭示了RL可以被看作是自适应控制的一个分支 。主要的区别在于,传统控制理论通常假设我们对“系统动态”有一个精确的数学模型,而强化学习则常常处理“环境”是一个黑箱的情况,需要通过交互来学习其规律。

探索与利用:一个永恒的权衡

在学习过程中,智能体面临一个经典的困境:探索 (Exploration) 与利用 (Exploitation) 的权衡 。

  • 利用 (Exploitation):根据已有的经验,选择当前看来最好的动作,以期获得已知的最高奖励。
  • 探索 (Exploration):放弃当前已知的最优选择,尝试一些新的、未知的动作,希望能发现更好的策略,获得更高的长期回报。

这是一个普遍存在于不确定性决策中的两难问题,而非RL独有的算法怪癖。想象一下你决定去哪里吃晚饭:你是去你最喜欢的那家餐厅(利用),还是去尝试一家新开的、评价未知但可能带来惊喜的餐厅(探索)?一家公司是应该继续投入资源到其成熟的产品线上(利用),还是投资于高风险的研发项目(探索)?

过度“利用”会导致智能体固步自封,满足于一个局部最优解,而错失了全局最优的可能性。反之,过度“探索”则会导致行为混乱,始终无法稳定地执行一个好的策略,最终难以收敛 。因此,一个成功的RL智能体必须在这两者之间找到精妙的平衡。通常,在学习的早期阶段,需要更多的探索来建立对环境的认知;随着经验的积累,则应逐渐增加利用的比例,以最大化最终的回报。

为世界建模:马尔可夫决策过程 (MDP)

为了用数学语言精确地描述智能体与环境的互动过程,强化学习引入了一个强大的形式化框架:马尔可夫决策过程 (Markov Decision Process, MDP) 。几乎所有的RL问题都可以被建模为一个MDP。

一个MDP由一个五元组 (S,A,P,R,γ)(S, A, P, R, \gamma)(S,A,P,R,γ) 定义:

  • SSS:所有可能的状态集合 (States)。
  • AAA:所有可能的动作集合 (Actions)。
  • PPP转移概率函数 (Transition Probability Function)P(s′,r∣s,a)=Pr⁡(St+1=s′,Rt+1=r∣St=s,At=a)P(s', r | s, a) = \Pr(S_{t+1}=s', R_{t+1}=r | S_t=s, A_t=a)P(s,rs,a)=Pr(St+1=s,Rt+1=rSt=s,At=a)它描述了在状态 sss 执行动作 aaa 后,转移到下一个状态 s′s's 并获得奖励 rrr 的概率。这是对环境动态的完整描述。
  • RRR奖励函数 (Reward Function)。它定义了在不同状态或状态-动作对下智能体能获得的奖励。
  • γ\gammaγ折扣因子 (Discount Factor)。一个介于0和1之间的数 (γ∈[0,1)\gamma \in [0, 1)γ[0,1))。它衡量了未来奖励相对于当前奖励的重要性。如果 γ=0\gamma=0γ=0,智能体将变得“短视”,只关心眼前的即时奖励;如果 γ\gammaγ 接近1,智能体则会变得“有远见”,更看重长期的累积回报 。从数学上讲,γ\gammaγ 的存在也保证了对于无限过程,累积回报的总和是一个有限值,使得问题有意义 。

MDP框架的核心是马尔可夫性质 (Markov Property)未来只与现在有关,而与过去无关 。换句话说,下一个状态 St+1S_{t+1}St+1 的概率分布只取决于当前的状态 StS_tSt 和动作 AtA_tAt,而与之前的状态历史 (S0,S1,...,St−1)(S_0, S_1,..., S_{t-1})(S0,S1,...,St1) 无关。这是一个强大的简化假设,它使得我们可以仅根据当前状态来做出最优决策和评估其价值,而无需追溯整个历史,从而让问题在数学上变得可解。

让我们通过一个简单的赛车游戏例子来理解MDP的各个组成部分 :

  • 状态 SSS:{凉爽 (cool), 温暖 (warm), 过热 (overheated)},共3个状态。
  • 动作 AAA:{慢行 (slow), 快行 (fast)},共2个动作。
  • 奖励 RRR慢行奖励+1,快行奖励+2(鼓励速度),进入过热状态惩罚-10。
  • 转移概率 PPP:图中用带小数的箭头表示。例如,当处于温暖状态并选择慢行时,有50%的概率降温至凉爽状态,50%的概率保持温暖状态。
  • 折扣因子 γ\gammaγ:假设为0.9。

有了这个MDP模型,我们的目标就变成了:找到一个最优策略 π∗\pi^*π,使得无论从哪个状态出发,按照这个策略行动,都能获得最大的长期累积回报。

衡量“好坏”:策略与价值函数

我们如何量化一个策略的好坏呢?这需要引入回报 (Return)价值函数 (Value Function) 的概念。

回报 (Return, GtG_tGt) 是从时间步 ttt 开始,智能体未来获得的所有奖励的折扣总和。它是我们真正想要最大化的目标 。
Gt=Rt+1+γRt+2+γ2Rt+3+⋯=∑k=0∞γkRt+k+1G_t = R_{t+1} + \gamma R_{t+2} + \gamma^2 R_{t+3} + \dots = \sum_{k=0}^{\infty} \gamma^k R_{t+k+1}Gt=Rt+1+γRt+2+γ2Rt+3+=k=0γkRt+k+1

策略 (Policy, π\piπ) 是智能体的行为准则,它定义了在给定状态下如何选择动作。策略可以是确定性的(在状态 sss 总是选择动作 aaa),也可以是随机的(π(a∣s)\pi(a|s)π(as) 表示在状态 sss 选择动作 aaa 的概率)。

有了回报和策略,我们就可以定义两个核心的价值函数:

  1. 状态价值函数 (State-Value Function, Vπ(s)V^\pi(s)Vπ(s))
    它回答的问题是:“在遵循策略 π\piπ 的情况下,处于状态 sss 有多好?”。其数学定义为,从状态 sss 出发,遵循策略 π\piπ 所能获得的期望回报 。
    Vπ(s)=EπV^\pi(s) = \mathbb{E}_\piVπ(s)=Eπ
    这里的期望 Eπ[⋅]\mathbb{E}_\pi[\cdot]Eπ[] 是对所有可能发生的随机性(动作的选择和环境的转移)求平均。

  2. 动作价值函数 (Action-Value Function, Qπ(s,a)Q^\pi(s, a)Qπ(s,a))
    它回答的问题是:“在状态 sss 下,执行动作 aaa,然后遵循策略 π\piπ 有多好?”。其数学定义为,在状态 sss 执行动作 aaa 后,再遵循策略 π\piπ 所能获得的期望回报。
    Qπ(s,a)=EπQ^\pi(s, a) = \mathbb{E}_\piQπ(s,a)=Eπ

价值函数为我们提供了一种评估和比较策略的手段。如果对于所有状态 sss,策略 π\piπ 的价值函数 Vπ(s)V^\pi(s)Vπ(s) 都大于或等于策略 π′\pi'π 的价值函数 Vπ′(s)V^{\pi'}(s)Vπ(s),那么我们就可以说策略 π\piππ′\pi'π 更好 。

特别地,动作价值函数 Qπ(s,a)Q^\pi(s, a)Qπ(s,a) 对于改进策略至关重要Vπ(s)V^\pi(s)Vπ(s) 告诉我们一个状态的平均价值,但没有直接告诉我们如何选择动作。而 Qπ(s,a)Q^\pi(s, a)Qπ(s,a) 为当前状态下的每一个可选动作都给出了一个明确的价值评估。因此,智能体可以通过简单地在每个状态 sss 选择那个能最大化 Qπ(s,a)Q^\pi(s, a)Qπ(s,a) 的动作 aaa 来贪心地改进其当前策略。这一思想是许多强大RL算法(如著名的Q-learning)的核心。

RL 的基石:贝尔曼方程

我们已经定义了价值函数,但如何计算它呢?直接根据定义去计算一个可能无限长的序列的期望回报是不现实的。幸运的是,价值函数满足一个优美的递归关系,这就是贝尔曼方程 (Bellman Equation),它是现代强化学习和动态规划的基石 。

贝尔曼方程的核心思想非常直观:一个状态的价值,等于你离开这个状态时能立即获得的期望奖励,加上你将进入的下一个状态的折扣期望价值

对于状态价值函数 Vπ(s)V^\pi(s)Vπ(s),其贝尔曼方程形式如下:
Vπ(s)=∑aπ(a∣s)∑s′,rP(s′,r∣s,a)[r+γVπ(s′)]V^\pi(s) = \sum_{a} \pi(a|s) \sum_{s', r} P(s', r | s, a) [r + \gamma V^\pi(s')] Vπ(s)=aπ(as)s,rP(s,rs,a)[r+γVπ(s)]

让我们来逐步理解这个方程的推导过程 [1]:

  1. Vπ(s)V^\pi(s)Vπ(s) 的定义出发:Vπ(s)=EπV^\pi(s) = \mathbb{E}_\piVπ(s)=Eπ
  2. 将回报 GtG_tGt 展开为即时奖励和未来的折扣回报:Gt=Rt+1+γGt+1G_t = R_{t+1} + \gamma G_{t+1}Gt=Rt+1+γGt+1
  3. 代入并利用期望的线性性质:Vπ(s)=Eπ+γEπV^\pi(s) = \mathbb{E}_\pi + \gamma \mathbb{E}_\piVπ(s)=Eπ+γEπ
  4. 最关键的一步是利用全期望公式马尔可夫性质。对第二项 Eπ\mathbb{E}_\piEπ,我们可以先对下一个状态 St+1S_{t+1}St+1 求条件期望,然后再对 St+1S_{t+1}St+1 的所有可能性求期望。由于马尔可夫性质,给定 St+1S_{t+1}St+1 后,Gt+1G_{t+1}Gt+1 的期望就等于 Vπ(St+1)V^\pi(S_{t+1})Vπ(St+1)
  5. 将所有部分组合起来,对所有可能的动作 aaa 和所有可能的后继状态 s′s's 与奖励 rrr 进行加权平均,就得到了最终的贝尔曼方程。

贝尔曼方程的革命性意义在于,它将价值函数的计算从一个求解无限序列和的问题,转化为了一个求解一组自洽的线性方程组的问题(对于有限状态的MDP)。更重要的是,它揭示了价值函数之间的“自举”(bootstrapping)关系:我们可以用后续状态的价值估计来更新当前状态的价值估计。这意味着智能体不必等到一整个序列结束后才能学习,而是可以在每一步都根据其后续状态的价值来更新自己的认知。这一思想是许多高效RL算法(如时间差分学习,TD-learning)的理论基础。

总结与展望

本次教学博客带领我们走过了强化学习的基础之旅。我们从RL在人工智能领域的地位和震撼人心的应用出发,理解了它作为一种通过互动和试错来学习的范式。我们探讨了RL的核心要素(智能体、环境、状态、动作、奖励)、它面临的根本困境(探索与利用),并深入学习了其背后的数学语言——马尔可夫决策过程(MDP)。最后,我们定义了衡量策略好坏的标尺(价值函数),并揭示了连接现在与未来的桥梁——贝尔曼方程。

掌握了这些基础知识,你就已经推开了通往更高级强化学习算法的大门。接下来的学习路径通常会围绕两个核心循环展开:策略评估(即给定一个策略,使用贝尔曼方程计算其价值函数)和策略改进(根据计算出的价值函数来优化策略)。

这个循环引出了两大类算法:

  • 基于模型的算法 (Model-Based):这类算法尝试先学习环境的模型(即转移概率 PPP),然后利用这个模型通过动态规划等方法求解贝尔曼方程,找到最优策略。例如策略迭代(Policy Iteration)和价值迭代(Value Iteration)。
  • 无模型的算法 (Model-Free):这类算法不尝试学习环境的完整模型,而是直接从与环境的交互经验中学习价值函数和策略。它们是驱动AlphaGo、游戏AI等诸多成功应用的核心引擎,例如Q-Learning和Actor-Critic方法 。
Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐