深度强化学习:从Q学习到策略梯度方法
1. Q学习基础
Q学习是最早且最流行的无模型学习算法,它将探索和利用相结合。其基本思想不是学习奖励函数 $R$ 和转移函数 $T$,而是直接学习 $Q$ 表和 $V$ 表。
Q学习的更新方程如下:
- $Q(s, a) = (1 - \alpha)Q(s, a) + \alpha(R(s, a, n) + \gamma V(n))$
- $V(s) = \max_{a’} Q(s, a’)$
其中,$s$ 是当前状态,$a$ 是采取的动作,$a’$ 是新状态。$\alpha$ 类似于学习率,通常取值较小。这是因为在Q学习中,我们只能根据最后一次行动的结果来更新,而不像值迭代算法那样可以考虑所有可能的结果。例如,在某个状态下,有一个极小概率的行动会带来极大的负面奖励,如果过于看重单次行动,可能会使算法的表现变差。
2. 基础深度Q学习
在掌握了表格Q学习之后,我们可以进一步理解深度Q学习。与表格Q学习类似,深度Q学习也从特定的模式开始,但不同的是,它使用神经网络(NN)模型来表示 $Q$ 函数,而不是使用表格。
机器学习可以看作是一个函数逼近问题,即找到一个函数来近似目标函数。在深度Q学习中,我们通过在马尔可夫决策过程中探索,使用神经网络来逼近未知的 $Q$ 函数。
从表格模型转向深度学习模型,并不是因为像“冰冻湖”这样适合表格Q学习的例子,而是当状态数量过多,无法用表格表示时,深度Q学习就显得尤为必要。例如,DeepMind创建的一个神经网络模型可以将深度Q学习应用于许多Atari游戏。这些游戏的每个像素组合都可以看作一个状态,即使图像尺