deep-reinforcement-learning
  • 介绍
  • 前言
    • 神经网络
    • 研究平台
      • 街机游戏
      • 竞速游戏
      • 第一人称射击游戏
      • 开放世界游戏
      • 即时战略游戏
      • 团队体育游戏
      • 文字冒险游戏
      • OpenAI Gym & Universe
  • 方法
    • 街机游戏
      • DQN
      • DRQN
      • Gorila
      • Double DQN
      • Prioritized Experience Replay
      • Dueling DQN
      • Bootstrapped DQN
      • Multiagent DQN
      • Progressive Neural Networks
      • A3C
      • Retrace(λ)
      • ACER
      • ACKTR
      • TRPO
      • PPO
      • UNREAL
      • IMPALA
      • Distributional DQN
      • Noisy-Net
      • Rainbow
      • ES
      • NS-ES
      • Deep GA
      • Playing Atari with Six Neurons
      • UCTtoClassification
      • Policy Distillation
      • Actor-Mimic
      • Action-Conditional Video Prediction
      • Self-Supervision
      • HRA
    • 蒙特祖玛的复仇
      • Hierarchical-DQN
      • DQN-CTS
      • Pixel Recurrent Neural Networks
      • DQN-PixelCNN
      • Ape-X
      • DQfD
      • Ape-X DQfD
      • Natural Language Guided Reinforcement Learning
    • 竞速游戏
      • Direct Perception
      • DDPG
      • TD3
    • 第一人称射击游戏
      • SLAM-Augmented DQN
      • Direct Future Prediction
      • For The Win
    • 开放世界游戏
      • H-DRLN
      • Feedback Recurrent Memory Q-Network
      • Teacher-Student Curriculum Learning
    • 即时战略游戏
      • Puppet Search
      • Combined Strategic and Tacticals
      • Zero Order
      • IQL
      • COMA
      • BiC-Net
      • Macro-action SL
      • Macro-action PPO
      • On Reinforcement Learning for Full-length Game of StarCraft
      • AlphaStar
    • 团队体育游戏
      • DDPG + Inverting Gradients
      • DDPG + Mixing policy targets
      • Object-centric prediction
    • 文字冒险游戏
      • LSTM-DQN
      • DRRN
      • Affordance Based Action Selection
      • Golovin
      • AE-DQN
    • 开放的挑战
      • 游戏通用性
      • 稀疏、延迟、欺骗性的回报
      • 多智能体
      • 终身适应
      • 像人类一样玩游戏
      • 可调节的性能等级
      • 处理巨大的状态空间
      • 工业界应用
      • 游戏开发的交互式工具
      • 创造新的游戏
      • 学习游戏的模型
      • 计算资源
  • 附录
    • Distributional RL
      • QR-DQN
    • Policy Gradient
      • Off-Policy Actor-Critic
      • Generalized Advantage Estimation
      • Soft Actor-Critic
      • PPO-Penalty
    • Model-Based RL
      • I2A
      • MBMF
      • MBVE
      • World Models
    • Imitation Learning and Inverse Reinforcement Learning
      • GAIL
    • Transfer and Multitask RL
      • HER
Powered by GitBook
On this page
  • 方法
  • Deep Q-Learning
  • SINGLE-GAME POLICY DISTILLATION
  • MULTI-TASK POLICY DISTILLATION
  • 实验

Was this helpful?

  1. 方法
  2. 街机游戏

Policy Distillation

PreviousUCTtoClassificationNextActor-Mimic

Last updated 5 years ago

Was this helpful?

通过深度强制学习,使用称为深度Q网络(DQN)的方法成功地学习了复杂视觉任务的策略,但是需要相对较大的(任务特定的)网络和广泛的培训来实现良好的性能。 在这项工作中,我们提出了一种称为Policy Distillation的新方法,该方法可用于提取强化学习代理的策略,并训练在专家级执行的新网络,同时显着缩小和提高效率。 此外,可以使用相同的方法将多个特定于任务的策略合并到单个策略中。我们使用Atari领域来演示这些声明,并表明多任务Distillation代理优于单一任务以及联合培训的DQN代理。

在本文中,我们介绍了将一个或多个动作策略从q网络转移到未训练网络的策略Distillation。该方法具有多种优点:网络大小可以被压缩多达15倍,而不会降低性能;多个专家策略可以组合成一个单一的多任务策略,其性能优于原始专家;最后,它可以作为一个实时的在线学习过程,通过不断提取最佳策略到目标网络,从而有效地跟踪不断发展的问题学习策略。这项工作的贡献是描述和讨论策略Distillation方法,并展示( a )单一游戏Distillation,( b )具有高度压缩模型的单游戏Distillation,( c )多游戏Distillation,和( d )在线Distillation的结果。

方法

Deep Q-Learning

在深度Q学习中,神经网络被训练以预测的每个可能动作的平均折扣未来奖励。 具有最高预测奖励的动作由即应选择的动作。定义状态动作序列 st=x1,a1,x2,a2,…,at−1,xts_{t}=x_{1}, a_{1}, x_{2}, a_{2}, \dots, a_{t-1}, x_{t}st​=x1​,a1​,x2​,a2​,…,at−1​,xt​ ,折扣回报 γ:Rt=∑t′=tTγt′−trt\gamma : R_{t}=\sum_{t^{\prime}=t}^{T} \gamma^{t^{\prime}-t} r_{t}γ:Rt​=∑t′=tT​γt′−trt​以及Q函数:

Q∗(s,a)=max⁡πE[Rt∣st=s,at=a,π]Q^{*}(s, a)=\max _{\pi} \mathbb{E}\left[R_{t} | s_{t}=s, a_{t}=a, \pi\right]Q∗(s,a)=πmax​E[Rt​∣st​=s,at​=a,π]

DQN通过最小化以下损失函数进行训练:

Li(θi)=E(s,a,r,s′)∼U(D)[(r+γmax⁡a′Q(s′,a′;θi−)−Q(s,a;θi))2]L_{i}\left(\theta_{i}\right)=\mathbb{E}_{\left(s, a, r, s^{\prime}\right) \sim U(D)}\left[\left(r+\gamma \max _{a^{\prime}} Q\left(s^{\prime}, a^{\prime} ; \theta_{i}^{-}\right)-Q\left(s, a ; \theta_{i}\right)\right)^{2}\right]Li​(θi​)=E(s,a,r,s′)∼U(D)​[(r+γa′max​Q(s′,a′;θi−​)−Q(s,a;θi​))2]

SINGLE-GAME POLICY DISTILLATION

DISTILLATION(蒸馏)是一种将知识从指导模型转移到学生模型的方法。

1)选择最大Q值作为正类,利用负的对数似然损失,

2)利用Q值得MSE损失

MULTI-TASK POLICY DISTILLATION

我们使用N个DQN单游戏专家,每个都经过单独训练。 这些代理产生输入和目标,只需单游戏蒸馏,数据存储在单独的内存缓冲区中。 蒸馏器然后从数据存储顺序学习,每一集切换到不同的一个。由于不同的任务通常具有不同的动作集,因此为每个任务训练单独的输出层(称为控制器层)并且任务的id用于切换 在训练和评估期间得到正确的输出。 我们还尝试了KL和NLL蒸馏损失功能,用于多任务学习。

即使有了单独的控制器,多游戏DQN学习对Atari游戏来说也是极具挑战性的,DQN通常无法在游戏中达到完整的单游戏性能。我们认为这是由于不同政策之间的干扰、不同的奖励尺度以及学习价值函数固有的不稳定性。

策略提炼可以提供一种方法,将多个策略组合到一个网络中,而不会带来破坏性的干扰和扩展问题。由于策略在提炼过程中被压缩和提炼,我们推测它们也可以更有效地组合成单个网络。此外,策略固有的方差低于价值函数,这将有助于性能和稳定性。

实验

用 TTT (指导网络)生成的样本训练 SSS (学生网络),可分类三种方式:

LNLL(DT,θS)=−∑i=1∣D∣log⁡P(ai=ai,best∣xi,θS)L_{\mathrm{NLL}}\left(\mathcal{D}^{T}, \theta_{S}\right)=-\sum_{i=1}^{|D|} \log P\left(a_{i}=a_{i, b e s t} | x_{i}, \theta_{S}\right)LNLL​(DT,θS​)=−i=1∑∣D∣​logP(ai​=ai,best​∣xi​,θS​)
LMSE(DT,θS)=∑i=1∣D∣∥qiT−qiS∥22L_{M S E}\left(\mathcal{D}^{T}, \theta_{S}\right)=\sum_{i=1}^{|D|}\left\|\mathbf{q}_{i}^{T}-\mathbf{q}_{i}^{S}\right\|_{2}^{2}LMSE​(DT,θS​)=i=1∑∣D∣​​qiT​−qiS​​22​

3)将 QQQ 值转换成离散概率,然后用KL散度作为损失

LKL(DT,θS)=∑i=1∣D∣softmax⁡(qiTτ)ln⁡softmax⁡(qiTτ)softmax⁡(qiS)L_{K L}\left(\mathcal{D}^{T}, \theta_{S}\right)=\sum_{i=1}^{|D|} \operatorname{softmax}\left(\frac{\mathbf{q}_{i}^{T}}{\tau}\right) \ln \frac{\operatorname{softmax}\left(\frac{\mathbf{q}_{i}^{T}}{\tau}\right)}{\operatorname{softmax}\left(\mathbf{q}_{i}^{S}\right)}LKL​(DT,θS​)=i=1∑∣D∣​softmax(τqiT​​)lnsoftmax(qiS​)softmax(τqiT​​)​

在传统的分类设置中, qT\mathbf{q}^{T}qT 的输出分布非常尖锐,因此通过提高 softmaxsoftmaxsoftmax 的温度参数来软化分布,以允许更多的次要知识转移到学生。

POLICY DISTILLATION