第一部分:强化学习基础
在讲解深度Q网络(DQN)之前,我们需要先理解强化学习(RL)的基本概念,因为DQN是强化学习的一种具体算法。强化学习是一种机器学习范式,与监督学习和无监督学习不同,它关注于智能体(Agent)通过与环境(Environment)交互来学习最优行为。
1.1 强化学习的定义
强化学习的目标是让智能体在环境中通过试错(Trial-and-Error) 学习一个策略(Policy),以最大化长期的累积奖励(Cumulative Reward)。与监督学习不同,强化学习中没有明确的标签数据,智能体只能通过环境的反馈(奖励)来评估自己的行为。
强化学习的几个核心组件:
- 智能体(Agent):决策者,执行动作。
- 环境(Environment):智能体交互的对象,提供状态和奖励。
- 状态(State, s∈Ss \in \mathcal{S}s∈S):描述环境当前的情况。
- 动作(Action, a∈Aa \in \mathcal{A}a∈A):智能体在某一状态下可以采取的行为。
- 奖励(Reward, r∈Rr \in \mathbb{R}r∈R):环境对智能体动作的即时反馈,通常是一个标量。
- 策略(Policy, π\piπ):智能体的决策规则,定义了在给定状态下选择动作的概率分布,记为 π(a∣s)\pi(a|s)π(a∣s)。
- 回报(Return, GGG):从某一时刻开始的累积奖励,通常是折扣后的总和。
- 价值函数(Value Function):评估状态或状态-动作对的长期收益。
- 模型(Model):环境的动态模型(可选),描述状态转移概率 P(s′∣s,a)P(s'|s, a)P(s′∣s,a) 和奖励函数 R(s,a)R(s, a)R(s,a)。
1.2 强化学习的数学框架
强化学习通常被建模为马尔可夫决策过程(Markov Decision Process, MDP),MDP是一个五元组 (S,A,P,R,γ)(\mathcal{S}, \mathcal{A}, P, R, \gamma)(S,A,P,R,γ):
- S\mathcal{S}S:状态空间。
- A\mathcal{A}A:动作空间。
- P(s′∣s,a)P(s'|s, a)P(s′∣s,a):状态转移概率,表示在状态 sss 采取动作 aaa 后转移到状态 s′s's′ 的概率。
- R(s,a)R(s, a)R(s,a):奖励函数,表示在状态 sss 采取动作 aaa 后获得的即时奖励。
- γ∈[0,1]\gamma \in [0, 1]γ∈[0,1]:折扣因子,控制未来奖励的重要性(γ=0\gamma = 0γ=0 只考虑即时奖励,γ=1\gamma = 1γ=1 考虑所有未来奖励)。
智能体的目标是找到一个最优策略 π∗\pi^*π∗,使得期望累积回报最大化:
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
其中 GtG_tGt 是从时间步 ttt 开始的折扣回报。
1.3 价值函数与Q函数
强化学习中,价值函数是评估策略好坏的核心工具。以下是两种主要的价值函数:
-
状态价值函数(State-Value Function):
Vπ(s)=Eπ[Gt∣st=s]V^\pi(s) = \mathbb{E}_\pi [G_t | s_t = s]Vπ(s)=Eπ[Gt∣st=s]
表示在状态 sss 下,遵循策略 π\piπ 的期望回报。 -
动作价值函数(Action-Value Function, Q函数):
Qπ(s,a)=Eπ[Gt∣st=s,at=a]Q^\pi(s, a) = \mathbb{E}_\pi [G_t | s_t = s, a_t = a]Qπ(s,a)=Eπ[Gt∣st=s,at=a]
表示在状态 sss 下采取动作 aaa,然后遵循策略 π\piπ 的期望回报。
最优策略 π∗\pi^*π∗ 对应的最优价值函数满足贝尔曼最优方程(Bellman Optimality Equation):
V∗(s)=maxaE[rt+1+γV∗(st+1)∣st=s,at=a]V^*(s) = \max_a \mathbb{E} [r_{t+1} + \gamma V^*(s_{t+1}) | s_t = s, a_t = a]V∗(s)=maxaE[rt+1+γV∗(st+1)∣st=s,at=a]
Q∗(s,a)=E[rt+1+γmaxa′Q∗(st+1,a′)∣st=s,at=a]Q^*(s, a) = \mathbb{E} [r_{t+1} + \gamma \max_{a'} Q^*(s_{t+1}, a') | s_t = s, a_t = a]Q∗(s,a)=E[rt+1+γmaxa′Q∗(st+1,a′)∣st=s,at=a]
1.4 强化学习的求解方法
强化学习算法可以分为以下几类:
- 基于价值的算法(Value-Based Methods):直接学习价值函数(如Q函数),通过选择价值最大的动作来决策。DQN属于这一类。
- 基于策略的算法(Policy-Based Methods):直接优化策略函数 π(a∣s)\pi(a|s)π(a∣s),如策略梯度方法。
- 演员-评论家方法(Actor-Critic Methods):结合基于价值和基于策略的方法。
DQN是基于价值的算法,核心是学习最优Q函数 Q∗(s,a)Q^*(s, a)Q

最低0.47元/天 解锁文章
4859

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



