论文笔记之:Deep Attention Recurrent Q-Network

  

Deep Attention Recurrent Q-Network

5vision groups 

 

   摘要:本文将 DQN 引入了 Attention 机制,使得学习更具有方向性和指导性。(前段时间做一个工作打算就这么干,谁想到,这么快就被这几个孩子给实现了,自愧不如啊( ⊙ o ⊙ ))

    引言:我们知道 DQN 是将连续 4帧的视频信息输入到 CNN 当中,那么,这么做虽然取得了不错的效果,但是,仍然只是能记住这 4 帧的信息,之前的就会遗忘。所以就有研究者提出了 Deep Recurrent Q-Network (DRQN),一个结合 LSTM 和 DQN 的工作:

  1. the fully connected layer in the latter is replaced for a LSTM one , 

  2. only the last visual frame at each time step is used as DQN's input. 

  作者指出虽然只是使用了一帧的信息,但是 DRQN 仍然抓住了帧间的相关信息。尽管如此,仍然没有看到在 Atari game上有系统的提升。

 

   另一个缺点是:长时间的训练时间。据说,在单个 GPU 上训练时间达到 12-14天。于是,有人就提出了并行版本的算法来提升训练速度。作者认为并行计算并不是唯一的,最有效的方法来解决这个问题。 

  

   最近 visual attention models 在各个任务上都取得了惊人的效果。利用这个机制的优势在于:仅仅需要选择然后注意一个较小的图像区域,可以帮助降低参数的个数,从而帮助加速训练和测试。对比 DRQN,本文的 LSTM 机制存储的数据不仅用于下一个 actions 的选择,也用于 选择下一个 Attention 区域。此外,除了计算速度上的改进之外,Attention-based models 也可以增加 Deep Q-Learning 的可读性,提供给研究者一个机会去观察 agent 的集中区域在哪里以及是什么,(where and what)。

 

 



  

  Deep Attention Recurrent Q-Network:

 

 

    如上图所示,DARQN 结构主要由 三种类型的网络构成:convolutional (CNN), attention, and recurrent . 在每一个时间步骤 t,CNN 收到当前游戏状态 $s_t$ 的一个表示,根据这个状态产生一组 D feature maps,每一个的维度是 m * m。Attention network 将这些 maps 转换成一组向量 $v_t = \{ v_t^1, ... , v_t^L \}$,L = m*m,然后输出其线性组合 $z_t$,称为 a context vector. 这个 recurrent network,在我们这里是 LSTM,将 context vector 作为输入,以及 之前的 hidden state $h_{t-1}$,memory state $c_{t-1}$,产生 hidden state $h_t$ 用于:

  1. a linear layer for evaluating Q-value of each action $a_t$ that the agent can take being in state $s_t$ ; 

  2. the attention network for generating a context vector at the next time step t+1. 

 



 

  Soft attention 

  这一小节提到的 "soft" Attention mechanism 假设 the context vector $z_t$ 可以表示为 所有向量 $v_t^i$ 的加权和,每一个对应了从图像不同区域提取出来的 CNN 特征。权重 和 这个 vector 的重要程度成正比例,并且是通过 Attention network g 衡量的。g network 包含两个 fc layer 后面是一个 softmax layer。其输出可以表示为:

  其中,Z是一个normalizing constant。W 是权重矩阵,Linear(x) = Ax + b 是一个放射变换,权重矩阵是A,偏差是 b。我们一旦定义出了每一个位置向量的重要性,我们可以计算出 context vector 为:

  另一个网络在第三小节进行详细的介绍。整个 DARQN model 是通过最小化序列损失函数完成训练:

  其中,$Y_t$ 是一个近似的 target value,为了优化这个损失函数,我们利用标准的 Q-learning 更新规则:

  DARQN 中的 functions 都是可微分的,所以每一个参数都有梯度,整个模型可以 end-to-end 的进行训练。本文的算法也借鉴了 target network 和 experience replay 的技术。

 



 

  Hard Attention

  此处的 hard attention mechanism 采样的时候要求仅仅从图像中采样一个图像 patch。

  假设 $s_t$ 从环境中采样的时候,受到了 attention policy 的影响,attention network g 的softmax layer 给出了带参数的类别分布(categorical distribution)。然后,在策略梯度方法,策略参数的更新可以表示为:

  其中 $R_t$ 是将来的折扣的损失。为了估计这个值,另一个网络 $G_t = Linear(h_t)$ 才引入进来。这个网络通过朝向 期望值 $Y_t$ 进行网络训练。Attention network 参数最终的更新采用如下的方式进行:

    其中 $G_t - Y_t$ 是advantage function estimation。

  

  作者提供了源代码:https://github.com/5vision/DARQN  

  

  实验部分

  

 

 

 

 



 

  总结:   

 

 

  

 

 

 

 

 

 

时间: 2024-10-13 16:48:57

论文笔记之:Deep Attention Recurrent Q-Network的相关文章

论文笔记之:RATM: RECURRENT ATTENTIVE TRACKING MODEL

  RATM: RECURRENT ATTENTIVE TRACKING MODEL ICLR 2016     本文主要内容是 结合 RNN 和 attention model 用来做目标跟踪. 其中模型的组成主要是: 1. an attention model 主要用来从输入图像中提取 patch: 2. RNN 用来预测 attention 参数,即:下一帧应该 look 的问题.     Paper: http://xueshu.baidu.com/s?wd=RATM%3A+RECURR

论文笔记之:Attention For Fine-Grained Categorization

  Attention For Fine-Grained Categorization Google ICLR 2015 本文说是将Ba et al. 的基于RNN 的attention model 拓展为受限更少,或者说是非受限的视觉场景.这个工作和前者很大程度上的不同在于,用一个更加有效的视觉网络,并且在attention RNN之外进行视觉网络的预训练. 前人的工作在学习 visual attention model 时已经解决了一些计算机视觉问题,并且表明加上不同的attention m

论文笔记: Dual Deep Network for Visual Tracking

论文笔记: Dual Deep Network for Visual Tracking  2017-10-17 21:57:08  先来看文章的流程吧 ... 可以看到,作者所总结的三个点在于: 1. 文章将 边界和形状信息结合到深度网络中.底层 feature 和 高层 feature 结合起来,得到 coarse prior map,然后用 ICA-R model 得到更加显著的物体轮廓,以得到更好的似然性模型:  2. Dual network 分别处理两路不同的网络,使得前景和背景更加具

论文笔记之: Recurrent Models of Visual Attention

Recurrent Models of Visual Attention Google DeepMind   模拟人类看东西的方式,我们并非将目光放在整张图像上,尽管有时候会从总体上对目标进行把握,但是也是将目光按照某种次序(例如,从上倒下,从左到右等等)在图像上进行扫描,然后从一个区域转移到另一个区域.这么一个一个的区域,就是定义的part,或者说是 glimpse.然后将这些区域的信息结合起来用于整体的判断和感受. 站在某个底层的角度,物体的显著性已经将这个物体研究的足够透彻.本文就是从这些

Video Frame Synthesis using Deep Voxel Flow 论文笔记

  Video Frame Synthesis using Deep Voxel Flow 论文笔记 arXiv    摘要:本文解决了模拟新的视频帧的问题,要么是现有视频帧之间的插值,要么是紧跟着他们的探索.这个问题是非常具有挑战性的,因为,视频的外观和运动是非常复杂的.传统 optical-flow-based solutions 当 flow estimation 失败的时候,就变得非常困难:而最新的基于神经网络的方法直接预测像素值,经常产生模糊的结果. 于是,在此motivation的基

论文笔记之:Action-Decision Networks for Visual Tracking with Deep Reinforcement Learning

论文笔记之:Action-Decision Networks for Visual Tracking with Deep Reinforcement Learning  2017-06-06  21:43:53    这篇文章的 Motivation 来自于 MDNet:    本文所提出的 framework 为:                             

Face Aging with Conditional Generative Adversarial Network 论文笔记

Face Aging with Conditional Generative Adversarial Network 论文笔记 2017.02.28    Motivation: 本文是要根据最新的条件产生式对抗玩网络(CGANs)来完成,人类老年照片的估计. 主要是做了一下两个事情: 1. 根据年龄阶段,进行照片的老年估计,用 acGAN 网络来完成: 2. 提出一种 隐层变量优化算法(latent vector optimization approach),允许 acGAN 可以重构输入人脸

(zhuan) Recurrent Neural Network

  Recurrent Neural Network  2016年07月01日  Deep learning  Deep learning 字数:24235   this blog from: http://jxgu.cc/blog/recent-advances-in-RNN.html    References Robert Dionne Neural Network Paper Notes Baisc Improvements 20170326 Learning Simpler Langu

大牛的《深度学习》笔记,Deep Learning速成教程

雷锋网(公众号:雷锋网)按:本文由Zouxy责编,全面介绍了深度学习的发展历史及其在各个领域的应用,并解释了深度学习的基本思想,深度与浅度学习的区别和深度学习与神经网络之间的关系. 深度学习,即Deep Learning,是一种学习算法(Learning algorithm),亦是人工智能领域的一个重要分支.从快速发展到实际应用,短短几年时间里,深度学习颠覆了语音识别.图像分类.文本理解等众多领域的算法设计思路,渐渐形成了一种从训练数据出发,经过一个端到端(end-to-end)的模型,然后直接