奖励函数(Reward Function)

1. 强化学习与奖励函数的全面背景

1.1 强化学习的本质与核心问题

强化学习(Reinforcement Learning, RL)是机器学习的一个分支,旨在让代理(Agent)通过与环境的交互,学习如何采取行动以最大化长期累积奖励。与深度学习中的监督学习(给定输入-输出对)不同,强化学习没有明确的“正确答案”,而是通过试错(Trial-and-Error)探索环境,基于奖励信号优化策略。

强化学习的数学框架通常基于马尔可夫决策过程(MDP),定义为五元组 ( S , A , P , R , γ ) (S, A, P, R, \gamma) (S,A,P,R,γ)

  • S S S:状态空间,描述环境的可能状态。
  • A A A:动作空间,代理可以采取的动作集合。
  • P ( s ′ ∣ s , a ) P(s'|s, a) P(ss,a):状态转移概率,表示在状态 s s s 采取动作 a a a 后转移到状态 s ′ s' s 的概率。
  • R ( s , a , s ′ ) R(s, a, s') R(s,a,s):奖励函数,定义代理在状态 s s s 采取动作 a a a 并转移到状态 s ′ s' s 时获得的奖励。
  • γ ∈ [ 0 , 1 ] \gamma \in [0, 1] γ[0,1]:折扣因子,控制未来奖励的权重。

强化学习的目标是找到一个最优策略 π ∗ ( a ∣ s ) \pi^*(a|s) π(as),使期望累积回报最大化:
J ( π ) = E π [ ∑ t = 0 ∞ γ t R ( s t , a t , s t + 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)]
其中, a t ∼ π ( ⋅ ∣ s t ) a_t \sim \pi(\cdot|s_t) atπ(st) s t + 1 ∼ P ( ⋅ ∣ s t , a t ) s_{t+1} \sim P(\cdot|s_t, a_t) st+1P(st,at)

1.2 奖励函数的核心地位

奖励函数 R ( s , a , s ′ ) R(s, a, s') R(s,a,s) 是强化学习的“指南针”,它为代理提供了反馈信号,告诉代理哪些行为是“好”的,哪些是“坏”的。奖励函数的设计直接决定了:

  1. 学习目标:代理优化的方向。
  2. 学习难度:奖励函数的稀疏性或复杂性影响算法的收敛速度。
  3. 策略质量:不合理的奖励函数可能导致次优甚至错误的策略。

奖励函数的形式可以灵活多样,例如:

  • 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 → R R: S \times A \times S \to \mathbb{R} R:S×A×SR
输入是当前状态 s s s、动作 a a a 和下一状态 s ′ s' s,输出是一个标量奖励 r r r。在某些情况下,奖励函数可以简化为:

  • 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 ′ ) ∼ P R ( ⋅ ∣ 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),定义为:
G t = R t + 1 + γ R t + 2 + γ 2 R t + 3 + ⋯ = ∑ k = 0 ∞ γ k R t + k + 1 G_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
其中:

  • R t + 1 = R ( s t , a t , s t + 1 ) R_{t+1} = R(s_t, a_t, s_{t+1}) Rt+1=R(st,at,st+1) 是时间步 t t t 的即时奖励。
  • γ ∈ [ 0 , 1 ] \gamma \in [0, 1] γ[0,1] 是折扣因子,控制未来奖励的重要性:
    • γ = 0 \gamma = 0 γ=0:只考虑即时奖励(短视策略)。
    • γ → 1 \gamma \to 1 γ1:重视长期奖励(适合无限时域任务)。

有限时域(Episodic) 任务中,累积回报可以简化为:
G t = ∑ k = 0 T − t − 1 γ k R t + k + 1 G_t = \sum_{k=0}^{T-t-1} \gamma^k R_{t+k+1} Gt=k=0Tt1γkRt+k+1
其中 T T T 是任务的终止时间步。

2.3 奖励函数与价值函数的关系

奖励函数通过价值函数间接影响策略优化。价值函数评估状态或状态-动作对的长期回报期望:

  • 状态价值函数
    V π ( s ) = E π [
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱看烟花的码农

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值