1. 强化学习与奖励函数的全面背景
1.1 强化学习的本质与核心问题
强化学习(Reinforcement Learning, RL)是机器学习的一个分支,旨在让代理(Agent)通过与环境的交互,学习如何采取行动以最大化长期累积奖励。与深度学习中的监督学习(给定输入-输出对)不同,强化学习没有明确的“正确答案”,而是通过试错(Trial-and-Error)探索环境,基于奖励信号优化策略。
强化学习的数学框架通常基于马尔可夫决策过程(MDP),定义为五元组 (S,A,P,R,γ)(S, A, P, R, \gamma)(S,A,P,R,γ):
- SSS:状态空间,描述环境的可能状态。
- AAA:动作空间,代理可以采取的动作集合。
- P(s′∣s,a)P(s'|s, a)P(s′∣s,a):状态转移概率,表示在状态 sss 采取动作 aaa 后转移到状态 s′s's′ 的概率。
- R(s,a,s′)R(s, a, s')R(s,a,s′):奖励函数,定义代理在状态 sss 采取动作 aaa 并转移到状态 s′s's′ 时获得的奖励。
- γ∈[0,1]\gamma \in [0, 1]γ∈[0,1]:折扣因子,控制未来奖励的权重。
强化学习的目标是找到一个最优策略 π∗(a∣s)\pi^*(a|s)π∗(a∣s),使期望累积回报最大化:
J(π)=Eπ[∑t=0∞γtR(st,at,st+1)]J(\pi) = \mathbb{E}_{\pi} \left[ \sum_{t=0}^\infty \gamma^t R(s_t, a_t, s_{t+1}) \right]J(π)=Eπ[∑t=0∞γtR(st,at,st+1)],
其中,at∼π(⋅∣st)a_t \sim \pi(\cdot|s_t)at∼π(⋅∣st),st+1∼P(⋅∣st,at)s_{t+1} \sim P(\cdot|s_t, a_t)st+1∼P(⋅∣st,at)。
1.2 奖励函数的核心地位
奖励函数 R(s,a,s′)R(s, a, s')R(s,a,s′) 是强化学习的“指南针”,它为代理提供了反馈信号,告诉代理哪些行为是“好”的,哪些是“坏”的。奖励函数的设计直接决定了:
- 学习目标:代理优化的方向。
- 学习难度:奖励函数的稀疏性或复杂性影响算法的收敛速度。
- 策略质量:不合理的奖励函数可能导致次优甚至错误的策略。
奖励函数的形式可以灵活多样,例如:
- R(s,a,s′)R(s, a, s')R(s,a,s′):依赖于状态、动作和下一状态。
- R(s,a)R(s, a)R(s,a):仅依赖于状态和动作。
- R(s)R(s)R(s):仅依赖于状态。
- R(s′)R(s')R(s′):仅依赖于下一状态。
1.3 奖励函数与深度学习的对比
你可能习惯于损失函数(如均方误差或交叉熵)直接定义模型的优化目标。在强化学习中,奖励函数类似于损失函数,但有以下区别:
- 动态性:奖励函数依赖于环境的动态反馈,而非固定的标签。
- 长期性:强化学习优化的是长期累积奖励,而非单次预测误差。
- 探索性:奖励函数需要引导代理在未知环境中探索,而深度学习通常假设数据分布已知。
2. 奖励函数的数学定义与形式
为了更深入理解奖励函数,我们从数学角度详细探讨其定义、形式和性质。
2.1 奖励函数的数学表达
奖励函数通常定义为:
R:S×A×S→RR: S \times A \times S \to \mathbb{R}R:S×A×S→R,
输入是当前状态 sss、动作 aaa 和下一状态 s′s's′,输出是一个标量奖励 rrr。在某些情况下,奖励函数可以简化为:
- R(s,a)R(s, a)R(s,a):奖励只依赖于状态和动作。
- R(s)R(s)R(s):奖励只依赖于当前状态。
- R(s′)R(s')R(s′):奖励只依赖于下一状态。
在实际实现中,奖励函数可以是:
- 确定性函数:给定 (s,a,s′)(s, a, s')(s,a,s′),奖励是固定的。
- 随机函数:奖励可能有噪声,服从某个分布 R(s,a,s′)∼PR(⋅∣s,a,s′)R(s, a, s') \sim P_R(\cdot|s, a, s')R(s,a,s′)∼PR(⋅∣s,a,s′)。
2.2 累积回报的定义
强化学习的目标是最大化累积回报(Return),定义为:
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,
其中:
- Rt+1=R(st,at,st+1)R_{t+1} = R(s_t, a_t, s_{t+1})Rt+1=R(st,at,st+1) 是时间步 ttt 的即时奖励。
- γ∈[0,1]\gamma \in [0, 1]γ∈[0,1] 是折扣因子,控制未来奖励的重要性:
- γ=0\gamma = 0γ=0:只考虑即时奖励(短视策略)。
- γ→1\gamma \to 1γ→1:重视长期奖励(适合无限时域任务)。
在 有限时域(Episodic) 任务中,累积回报可以简化为:
Gt=∑k=0T−t−1γkRt+k+1G_t = \sum_{k=0}^{T-t-1} \gamma^k R_{t+k+1}Gt=∑k=0T−t−1γkRt+k+1,
其中 TTT 是任务的终止时间步。
2.3 奖励函数与价值函数的关系
奖励函数通过价值函数间接影响策略优化。价值函数评估状态或状态-动作对的长期回报期望:
- 状态价值函数:
Vπ(s)=Eπ[Gt∣st=s]=Eπ[∑k=0∞γkRt+k+1∣st=s]V^\pi(s) = \mathbb{E}_\pi \left[ G_t \mid s_t = s \right] = \mathbb{E}_\pi \left[ \sum_{k=0}^\infty \gamma^k R_{t+k+1} \mid s_t = s \right]V

最低0.47元/天 解锁文章
1610

被折叠的 条评论
为什么被折叠?



