综述五:强化学习及其分类
强化学习的变种
强化学习(Reinforcement Learning,简称RL)是一种机器学习方法,其中代理(Agent)通过与环境的交互来学习做出决策。代理的目标是通过采取适当的行动,最大化长期累积的奖励。强化学习是一个广泛的领域,许多不同的变种和算法已被开发出来,以解决学习、探索和决策等不同方面的问题。
以下是强化学习的主要变种及其子类别:
1. 无模型 vs 有模型强化学习
- 无模型强化学习(Model-Free RL):代理不构建或使用环境的动态模型,而是直接通过与环境的交互来学习。
- 示例:
- Q学习(Q-Learning,包括表格化和深度Q学习)
- 策略梯度方法(例如,REINFORCE)
- Actor-Critic方法(例如A3C,PPO)
- 示例:
- 有模型强化学习(Model-Based RL):代理试图学习环境的转移动态和奖励函数,并利用这些模型来做出更有信息量的决策。
- 示例:
- Dyna-Q(Q学习与规划结合)
- World Models
- 蒙特卡洛树搜索(MCTS)
- 示例:
2. 基于价值的方法
-
这些方法专注于学习状态或状态-动作对的价值,目标是通过改进价值函数间接地估计最优策略。
-
Q学习(Off-Policy):
- 关键思想:学习状态-动作值函数(Q函数),它告诉我们在某一状态下采取某一动作的期望奖励。
- 变种:
- 深度Q网络(DQN):使用深度学习来近似Q函数,使得强化学习可以应用于高维度的环境(如图像)。
- 双Q学习(Double Q-Learning):通过维持两个Q值估计来减少Q学习中的过度估计偏差。
- Dueling DQN:将值函数和优势函数分开,有助于提高Q函数的稳定性。
- 优先经验回放(Prioritized Experience Replay):优先选择那些时间差误差(TD Error)较大的经验进行回放。
-
SARSA(State-Action-Reward-State-Action)(On-Policy):
- 关键思想:与Q学习相似,但更新Q值时基于实际采取的动作(On-Policy)。
- 变种:
- 期望SARSA:使用所有可能动作的期望值而不是某个特定的动作来更新Q值。
3. 基于策略的方法
-
这些方法直接优化策略,而不是学习价值函数。代理学习的是状态到动作的映射,而不显式地学习价值函数。
-
REINFORCE(蒙特卡洛策略梯度):
- 关键思想:直接优化策略,使用梯度上升法基于总奖励进行更新。
-
Actor-Critic方法:
- 关键思想:结合了基于价值和基于策略的方法。"Actor"选择动作,"Critic"使用价值函数来评估这些动作。
- 变种:
- A3C(异步优势Actor-Critic):使用多个并行代理来加速训练,并稳定学习过程。
- PPO(Proximal Policy Optimization):一种比其他策略梯度方法更稳定且样本效率更高的算法。
- TRPO(Trust Region Policy Optimization):一种通过强制实施信任区域约束,确保策略更新不会导致性能大幅下降的方法。
- ACKTR(使用Kronecker-Factored Trust Region的Actor-Critic):在A3C基础上,使用二阶优化方法来提高稳定性。
4. 逆向强化学习(IRL)
- 关键思想:代理通过观察专家的行为来学习奖励函数。IRL假设专家是在优化与代理相同的奖励函数。
- 变种:
- 最大熵逆向强化学习(MaxEnt IRL):基于最大熵原则的方法,避免过拟合专家行为。
- 深度逆向强化学习(Deep-IRL):一种基于深度学习的逆向强化学习方法。
5. Off-Policy与On-Policy方法
- On-Policy RL:代理使用当前策略生成的数据来更新策略。
- 示例:SARSA、A3C、REINFORCE。
- Off-Policy RL:代理可以使用任何策略生成的数据来学习,而不需要依赖当前策略。
- 示例:Q学习、DQN、深度确定性策略梯度(DDPG)。
6. 探索与利用
-
强化学习需要平衡探索(尝试新动作)与利用(选择已知最佳动作)。许多方法不同程度地处理了这种平衡。
-
探索为主的方法:
- Epsilon-Greedy:一种简单的策略,其中代理以概率(\epsilon)选择随机动作,以概率(1-\epsilon)选择最佳动作。
- Boltzmann探索:一种基于动作值的概率选择方法(Softmax)。
-
汤普森采样(Thompson Sampling):一种通过采样来平衡探索和利用的概率方法,常用于多臂老虎机问题。
7. 深度强化学习(DRL)
-
这些方法将深度学习与强化学习结合起来,用于处理高维输入空间(如图像),并且在复杂问题(如视频游戏和机器人控制)中表现出色。
-
深度Q网络(DQN):
- 关键思想:使用神经网络来近似Q函数,使强化学习能够扩展到包含高维输入的环境(例如游戏中的原始像素)。
- 变种:
- 双DQN(Double DQN):减少Q值过度估计的偏差。
- Dueling DQN:将值函数和优势函数分开,提高Q函数的近似精度。
-
深度确定性策略梯度(DDPG):
- 关键思想:一种无模型的、Off-Policy算法,适用于连续动作空间,将DQN扩展到连续动作领域。
- 变种:
- TD3(Twin Delayed DDPG):一种改进的DDPG,减少Q值的过度估计,并稳定训练过程。
-
软策略梯度(SAC):
- 关键思想:一种通过最大化期望回报和熵的折中,促进探索并提高稳定性的算法。
-
PPO(Proximal Policy Optimization):
- 关键思想:一种策略梯度方法,通过约束策略更新的大小来避免不稳定,提供了一种稳定的学习方式。
-
TRPO(Trust Region Policy Optimization):
- 关键思想:保证策略更新不会偏离当前策略太远,稳定训练过程。
8. 层次化强化学习(HRL)
- 关键思想:将任务分解为子任务,并分别解决每个子任务,使得处理复杂的环境时能够提高效率。
- 变种:
- Option-Critics:通过学习一组"选项"(子策略)来解决子任务。
- MAXQ:将任务分解为子任务,并通过分配层次化的价值函数来解决这些子任务。
9. 多智能体强化学习(MARL)
- 关键思想:多个智能体互相与环境交互。MARL可以是合作式或竞争式,取决于具体场景。
- 变种:
- 合作式MARL:所有代理共同合作,最大化共享的奖励(例如,多机器人协调)。
- 竞争式MARL:代理有相互冲突的目标,通常是零和博弈(例如,象棋或扑克)。
- 独立Q学习:每个代理独立学习Q函数,但可能需要考虑其他代理的行为。
- 集中训练,分散执行:在训练时代理共享信息来改进策略,但部署时每个代理独立执行(例如,多智能体的交通控制系统)。
10. 进化强化学习
- 关键思想:从进化算法的灵感中得到启发,这些方法通过在时间上进化策略或神经网络来实现学习。
- 变种:
- NEAT(神经进化的增强拓扑):一种进化算法,通过改变神经网络的结构和权重来实现进化。
- PPO与进化策略:将进化策略与Proximal Policy Optimization(PPO)结合,提升探索与利用的平衡。
11. 强化学习中的迁移学习
- 关键思想:迁移学习使得智能体能够将从一个任务中获得的知识转移到不同但相关的任务中,帮助其加速学习。
- 变种:
- 微调(Fine-Tuning):将一个在源任务上训练的模型迁移到目标任务,并对其进行微调以适应新的环境。
- 预训练(Pretraining):在一个相关任务上进行预训练,并将学到的知识作为目标任务的起始阶段。
- 多任务强化学习(Multi-Task RL):智能体同时学习多个任务,通过共享知识提升在所有任务中的表现。
12. 自监督强化学习
- 关键思想:自监督强化学习结合了自监督学习和强化学习的思想。智能体通过生成伪标签或自生成奖励来进行学习,而无需显式的监督或标签数据。
- 变种:
- 对比强化学习(Contrastive RL):智能体通过区分“好”状态和“坏”状态或动作来学习,使用对比损失来进行优化。
- 基于探索的自监督RL:智能体通过自身的探索来生成奖励并进行学习,依赖于环境交互而不是外部反馈。
13. 终身学习 / 持续学习中的强化学习
- 关键思想:智能体可以不断学习,不会遗忘先前学习的知识,解决了强化学习中的灾难性遗忘问题。
- 变种:
- 渐进式神经网络(Progressive Neural Networks):当智能体学习新任务时,添加新的神经网络组件,同时保持原有任务的知识。
- 弹性权重固化(EWC):一种正则化技术,通过惩罚重要的权重变动来防止灾难性遗忘。
- 元强化学习(Meta-RL):智能体学习如何学习,通过在多个任务上学习,提升其适应新任务的能力。
14. 层次化深度强化学习
- 关键思想:与层次化强化学习类似,但采用深度学习模型来学习高层次的策略或动作,以便在更复杂和高效的环境中进行学习。
- 变种:
- 层次化DQN(h-DQN):扩展DQN,通过学习不同层次的抽象,智能体先学习高层次目标,然后将这些目标分解成子目标。
- 深度选项-评论家(Deep Option-Critic):在选项-评论家架构的基础上,使用深度强化学习方法来学习子任务。
15. 模仿学习
- 关键思想:智能体通过模仿专家的行为来进行学习,通常用于智能体无法有效探索或环境奖励收集困难的情况。
- 变种:
- 行为克隆(Behavior Cloning):一种监督学习方法,智能体通过直接模仿专家的行为来学习策略,通常基于状态-动作对。
- 生成对抗模仿学习(GAIL):基于生成对抗网络(GAN)的方法,智能体通过与一个判别器对抗来学习专家的行为。
16. 部分可观测马尔可夫决策过程(POMDPs)
- 关键思想:强化学习中的环境具有部分可观测性,智能体无法完全感知当前的环境状态,因此面临决策的挑战。
- 变种:
- 深度递归Q网络(DRQN):使用递归神经网络(RNN)来处理部分可观测的状态,从而适应这种不完全信息的环境。
- 部分可观测Q学习(POQL):在POMDP中,智能体使用信念状态(状态的可能分布)来进行决策。
17. 连续控制
- 关键思想:这些方法专门针对具有连续动作空间的环境(如机器人控制和物理系统),这类环境中的决策和动作选择通常需要更细致的控制。
- 变种:
- 深度确定性策略梯度(DDPG):一种无模型的Off-Policy算法,适用于连续动作空间,扩展了DQN的应用。
- 双延迟DDPG(TD3):对DDPG的改进,减少Q值过度估计,增加了训练的稳定性。
- 软演员-评论家(SAC):通过最大化预期回报和策略熵来促进探索和稳定的学习过程。
- PPO(Proximal Policy Optimization):PPO也可以应用于连续动作空间,是一种非常稳定的强化学习算法。
18. 贝叶斯强化学习
- 关键思想:智能体通过保持模型或策略的概率分布来处理不确定性,进行更稳健的探索和决策。
- 变种:
- 贝叶斯Q学习:一种基于贝叶斯推断的方法,通过建模Q值的不确定性来更新Q值。
- 汤普森采样强化学习:通过采样不同的模型或策略分布来进行决策,从而平衡探索与利用。
强化学习变种总结:
- 无模型 vs 有模型强化学习
- 基于价值的方法:Q学习、DQN、SARSA
- 基于策略的方法:REINFORCE、Actor-Critic、A3C、PPO
- 逆向强化学习:从专家演示中学习奖励函数
- 探索与利用:Epsilon-Greedy、汤普森采样
- 深度强化学习:DQN、DDPG、SAC、PPO
- 层次化强化学习:MAXQ、Option-Critics
- 多智能体强化学习:合作式、竞争式、独立Q学习
- 进化强化学习:NEAT、PPO与进化策略
- 迁移学习:微调、多任务学习
- 自监督强化学习:对比RL、基于探索的自监督方法
- 终身学习:渐进式神经网络、元强化学习
- 模仿学习:行为克隆、GAIL
- POMDPs:DRQN、POQL
- 连续控制:DDPG、TD3、SAC、PPO
- 贝叶斯强化学习:贝叶斯Q学习、汤普森采样
强化学习是一个活跃的研究领域,随着新技术的出现,方法和变种持续发展,不断使得强化学习能够处理更加复杂和现实的问题,如机器人、游戏、自动驾驶和金融等多个领域。
Overcoming the Curse of Dimensionality in Reinforcement Learning Through Approximate Factorization (24/10)
论文地址
核心思想:众所周知,强化学习(RL)算法存在维数灾难,这是指大规模问题往往导致样本复杂度呈指数级增长。常用解决方案是使用深度神经网络进行函数近似。然而,这种方式通常缺少理论保障。为了理论性地解决维数诅咒,我们观察到,许多真实世界问题显示出特定任务的结构,当适当利用时,可以改进RL的样本效率。基于这种见解,提出通过将原始马尔可夫决策过程(MDP)近似分解到较小的、独立演化的MDPs来解决维数诅咒。这种因子分解使得在基于模型和无模型的环境中开发样本高效的RL算法成为可能,后者涉及方差减少的Q学习变体。我们为这两种提出的算法提供了改进的样本复杂度保证。值得注意的是,通过MDP的近似因式分解利用模型结构,样本复杂性对状态动作空间大小的依赖性可以呈指数级降低。