RL 学习笔记 #1 基本概念

本文最后更新于:2024年12月13日 晚上

该笔记是观看西湖大学赵世钰老师的 强化学习的数学原理 网课所做的笔记,过程中参考了 ReayRL 书籍。部分笔记内容由 ChatGPT 辅助生成。

强化学习 vs. 监督学习

强化学习(Reinforcement Learning,RL)的核心在于「学习该如何去做」,其终极目标就在于「求解最优策略」。具体来说,RL 旨在让智能体(Agent)从某个状态(State)映射到某个行为(Action),以最大化某个奖励信号(Reward Signal)。这种学习方式与监督学习(Supervised Learning)有显著区别,监督学习假设:

  1. 输入数据是独立的:监督学习假设样本之间没有关联性,否则难以有效学习。
  2. 提供正确标签:每个样本都有明确的正确答案,学习器依赖这些标签来优化预测。

然而,在强化学习中,这两条假设均不成立。强化学习有以下几个关键特性:

  1. 序列相关性:强化学习中的输入是序列数据,样本之间具有强关联性,当前的动作会影响未来的状态和奖励。
  2. 缺乏直接监督:没有明确的「正确动作」,智能体需要通过尝试和反馈自己发现最优策略(Policy)。
  3. 延迟奖励:某一时刻的动作可能对未来的奖励有深远影响,智能体需要在较长的时间范围内评估某个动作的效果。

因此,智能体需要通过试错搜索(Trial-and-Error Search)的方式逐步提升表现,具体而言,通过对环境的交互、观察反馈(奖励或惩罚)来优化策略。

其面临的核心问题之一是如何平衡探索(exploration)和利用(exploitation):

  • 利用(Exploit):基于已有知识选择奖励最大的动作。
  • 探索(Explore):尝试未知的动作,可能发现更优的策略。

有效的策略通常在探索与利用之间找到平衡。过度利用可能导致智能体停留在次优解,而过度探索则可能浪费资源。

序列决策 | Sequential Decision Making

序列决策(Sequential Decision Making)是强化学习的核心思想之一。智能体通过与环境的连续交互,基于状态、动作及奖励的反馈,逐步优化决策策略,以最大化累计奖励。

核心要素

  1. 状态 \(s\)(State):智能体从环境中感知到的状态信息,用于决策。

  2. 动作 \(a\)(Action):智能体基于当前状态选择的输出,直接影响后续状态转移(State Transition)。

  3. 策略 \(\pi\)(Policy):将状态映射到动作的规则,定义了智能体在每个状态下的动作。

    • 确定性策略(Deterministic Policy):\(\pi(s)\) 直接输出在状态 \(s\) 下的最优动作。
    • 随机性策略(Stochastic Policy):\(\pi(a|s)\) 表示在状态 \(s\) 下采取动作 \(a\) 的概率。
  4. 奖励 \(r\)(Reward):一个标量反馈信号(scalar feedback signal),代表某一步动作的好坏。

    • 奖励值直接依赖于当前的状态和采取的动作 \(r(s_i,a_i)\),而非下一个状态 \(s_{i+1}\)
  5. 轨迹 \(\tau\)(Trajectory):智能体与环境交互所经历的状态、动作和奖励序列: \[ \tau=\left(s_0, a_0, r_0, s_1, a_1, r_1, \ldots\right) \]

    • 回合(Episode)/ 尝试(Trail):从初始状态到终止状态(terminal state)的一次完整交互。
    • 预演(Rollout):模拟智能体在策略 \(\pi\) 下与环境交互,生成轨迹以评估策略效果。
  6. 回报 \(G\)(Return):从当前状态到终止状态的累计奖励。

    • 折扣回报(Discounted Return):考虑折扣因子 \(\gamma\) 的回报,越遥远的奖励越少,避免回报发散

    • 强化学习的目标是最大化期望累计奖励(Expected Cumulative Reward): \[ G_t = \sum_{k=0}^\infty \gamma^k r_{t+k} \]

关于终止状态 / 目标状态有两种定义:

  1. 认为目标状态是一种吸收态(absorbing state),一旦 Agent 到达该状态将会永远停留,并且之后的奖励 \(r=0\)
  2. 认为目标状态是一个普通的状态,并且具有策略,Agent 可以选择停留在该状态并持续获取 \(r>0\),从而不再离开。该定义更加一般化,但在学习策略的过程中需要更多的搜索。

马尔可夫决策过程 | MDP

马尔可夫决策过程(Markov Decision Process, MDP)提供了数学框架,用于描述强化学习中的环境动态。一个 MDP 通常由以下五元组定义:

  1. \(S\)(State Space):包含所有可能的状态集合(仅在完全可观测的环境下)。

  2. \(A\)(Action Space):包含所有可能的动作集合,依赖于状态空间 \(A(s)\)

    • 离散动作空间(Discrete Action Space):有限数量的动作集合,例如上下左右移动。
    • 连续动作空间(Continuous Action Space):动作为实值向量,例如机器人关节角度。
  3. \(T\)(Transition Function):状态转移概率 \(p(s' \mid s, a)\),表示在状态 \(s\) 执行动作 \(a\) 后转移到状态 \(s'\) 的概率。

    • 如果概率均为 \(1\),即确定性策略,对应的状态转移过程可用表格法(Tabular Method)表示。
    • 马尔可夫性质(Markov Property):Memoryless 历史无关,即下一状态 \(s'\) 只与当前状态 \(s\) 和动作 \(a\) 有关。
  4. \(R\)(Reward Function):即时奖励 \(R(s, a)\),表示在状态 \(s\) 下执行动作 \(a\) 所获得的奖励。

  5. \(\gamma\)(Discount Factor):折扣因子 \(\gamma \in [0, 1]\),用于平衡当前奖励和未来奖励的重要性。

    • \(\gamma\) 越接近 1,智能体越关注长期收益;\(\gamma\) 较小,则更关注短期奖励。

奖励函数(Reward Function)vs. 价值函数(Value Function):奖励函数是即时反馈,而价值函数衡量长期反馈。

价值函数用于评估「某状态的长期价值」,即从该状态开始,智能体期望获得的累计奖励: \[ V_\pi(s) = \mathbb{E}_\pi\left[G_t \mid S_t = s\right] \] 更进一步,价值函数还分为状态价值函数 \(V(s)\) 和动作价值函数 \(Q(s, a)\),后者表示「某状态下执行某动作的长期价值」。

部分可观测马尔可夫决策过程 | POMDP

当环境是部分可观测的(智能体无法直接感知完整状态),则使用部分可观测马尔可夫决策过程(Partially Observable Markov Decision Process,POMDP)建模。POMDP 可以用七元组表示:

  1. \(S\)(State Space):隐变量集合,真实状态不可直接观测。
  2. \(A\)(Action Space):动作集合。
  3. \(T\)(Transition Function):状态转移概率 \(p(s' \mid s, a)\)
  4. \(R\)(Reward Function):即时奖励函数。
  5. \(\Omega\)(Observation Space):观测空间,智能体可以感知到的有限信息。
  6. \(O\)(Observation Function):观测概率 \(O(o \mid s, a)\),表示执行动作 \(a\) 后在状态 \(s\) 下得到观测 \(o\) 的概率。
  7. \(\gamma\)(Discount Factor):折扣因子。

POMDP 的关键在于智能体需要维护一个信念状态(belief state),即关于真实状态的概率分布,用来进行决策。

经典问题

强化学习的研究中,有一些经典问题常被讨论。这里简单提及,之后的章节中也会详细介绍。

Value-based 和 Policy-based 方法

在强化学习中,智能体的目标是选择最优动作以获得最大累计奖励。实现这一目标有两种主要途径:基于价值的方法(Value-based)和基于策略的方法(Policy-based)。

基于价值的方法侧重于学习价值函数,例如状态价值函数 \(V(s)\) 或动作价值函数 \(Q(s, a)\)。智能体的策略由价值函数隐式推导出,例如通过选择当前 \(Q(s, a)\) 最大的动作来决策。这类方法的典型代表是 Q-learning 和 SARSA,它们通过更新 \(Q\) 值来逼近最优策略。然而,基于价值的方法通常更适合离散动作空间,对连续动作空间的适应性较差。

相比之下,基于策略的方法直接优化策略 \(\pi(a|s)\),即从状态到动作的映射。策略可以是随机性的,也可以是确定性的。这种方法不依赖价值函数,能够更自然地处理复杂环境中的连续动作空间。例如,策略梯度法(Policy Gradient) 是一种直接优化策略参数的算法,通过采样轨迹并使用梯度上升法来最大化累计奖励。

两种方法各有优势,基于价值的方法训练过程通常更稳定,而基于策略的方法适合高维、连续动作空间。将两者结合的 Actor-Critic 方法通过同时学习策略和价值函数实现了取长补短:Actor 更新策略,Critic 用价值函数评估策略优劣,为策略改进提供指导。

Model-based 和 Model-free 方法

另一个重要的问题是智能体是否需要显式地建模环境的状态转移关系。若智能体对环境的状态转移 \(P(s'|s, a)\) 有较好的建模能力,则称为有模型(model-based)方法。这种方法通过学习一个状态转移模型来模拟环境,从而支持规划(planning)或预演(rollout)。例如,在值迭代和策略迭代算法中,已知环境模型时可以直接求解最优策略。

相反,免模型(model-free)方法不依赖状态转移模型,而是直接与环境交互来学习。此类方法使用采样经验来更新价值函数(如 Q-learning)或直接优化策略(如 Policy Gradient)。虽然免模型方法更加通用,但通常需要更多的交互样本,并且学习效率低于有模型方法。

两者的选择取决于问题特点。有模型方法对环境建模依赖较高,但能在数据稀缺时高效决策;免模型方法则适合复杂、未知的环境,但需要大量样本支持。

Online 和 Offline 算法

根据与环境交互的方式,强化学习算法可以进一步分为在线算法(Online Algorithm)离线算法(Offline Algorithm)

Online 强调实时学习,智能体在与环境交互的过程中持续更新策略或价值函数。其核心特点是每次与环境的交互都会对学习过程产生直接影响。例如,Q-learning 和 Actor-Critic 方法均为典型的在线算法。在某些环境条件可能随时间变化的场景中,在线算法能够实时调整策略以保持最优性能。根据行为策略和目标策略是否相同,Online 算法又分为 On-Policy 算法和 Off-Policy 算法:

  • On-policy RL 算法包括:MC Learning、SARSA、REINFORCE、A3C、PPO 等;
  • Off-policy RL 算法包括:Q-learning、DQN、DDPG、SAC 等。

Offline 也被称为批量强化学习(Batch Reinforcement Learning)。它通过从预先收集的交互数据(通常称为「经验池」)中学习策略,而无需与环境直接交互。在训练阶段,离线算法不会主动探索新数据,所有的优化都基于已有数据集。离线算法的一个核心挑战是分布不匹配问题(distributional mismatch),即数据分布和真实环境分布可能不同,从而导致策略的泛化性能下降。其与模仿学习(Imitation Learning)的区别在于,IL 数据中不包括奖励,并且需要假设其专家数据近似最优策略数据。

Online 和 Offline 算法并不是完全独立的,很多强化学习算法可以结合两者的优点。例如,经验回放(Experience Replay)是一种常用的机制,它在在线学习的过程中收集数据并存储到经验池中,随后通过离线回放这些数据来提高学习效率。

Exploit 和 Explore 的平衡

探索与利用的平衡是强化学习的核心难题之一。探索(Exploration)指智能体尝试未知的动作,以期发现更优的策略;利用(Exploitation)则指智能体基于现有知识选择最优动作,从而最大化即时奖励。二者看似对立,但必须平衡,才能在有限的尝试次数内获得最大的累计奖励。

我们可以通过 K 臂老虎机问题(K-armed Bandit) 直观理解:在这个理论模型中,智能体面临 \(K\) 个选择,每个选择的奖励分布未知,目标是通过策略最大化奖励。

  • 如果智能体完全依赖 Exploration(如随机选择每个动作),它可能很好地估计各动作的期望奖励,但无法充分利用最优动作。
  • 如果智能体完全依赖 Exploitation(如总是选择当前奖励最大的动作),它可能快速陷入次优解。

为解决这一问题,常用方法例如 \(\varepsilon\)-贪婪策略(\(\epsilon\)-greedy),以一定概率 \(\epsilon\) 随机探索,而以 \(1-\epsilon\) 的概率选择当前最优动作。


RL 学习笔记 #1 基本概念
https://hwcoder.top/RL-Note-1
作者
Wei He
发布于
2024年11月28日
许可协议