博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
论文笔记之: Recurrent Models of Visual Attention
阅读量:5786 次
发布时间:2019-06-18

本文共 2541 字,大约阅读时间需要 8 分钟。

  

Recurrent Models of Visual Attention

Google DeepMind

 

  模拟人类看东西的方式,我们并非将目光放在整张图像上,尽管有时候会从总体上对目标进行把握,但是也是将目光按照某种次序(例如,从上倒下,从左到右等等)在图像上进行扫描,然后从一个区域转移到另一个区域。这么一个一个的区域,就是定义的part,或者说是 glimpse。然后将这些区域的信息结合起来用于整体的判断和感受。

  站在某个底层的角度,物体的显著性已经将这个物体研究的足够透彻。本文就是从这些东西上获得了启发,提出了一种新的框架,即:应用神经网络,基于 attention 任务驱动的视觉处理系统。本文模型考虑到一个视觉场景基于attention的处理看做是一个控制问题(a control problem),并且可以应用到动态图像,视频,或者处理动态视觉环境,像机器人,或者能够打游戏的agents。

  这个模型是一个 recurrent neural network(RNN),按照时间顺序处理输入,一次在一张图像中处理不同的位置,逐渐的将这些部分的信息结合起来,来建立一个该场景或者环境的动态间隔表示。并非马上处理整张图像甚至bbox,在每一个步骤中,模型基于过去的信息和任务的需要选择下一个位置进行处理。这样就可以控制模型的参数和计算量,使之摆脱输入图像的大小的约束。这里和CNN有明显的不同。我们就是要描述这么一个端到端的优化序列,能够直接训练模型,最大化一个性能衡量,依赖于该模型在整个任务上所做的决策。利用反向传播来训练神经网络的成分和策略梯度来解决 the non-differentiabilities due to the control problem。

 

 


 

  RAM:The Recurrent Attention Model

  本文将 attention problem 看做是目标引导的序列决策过程,能够和视觉环境交互。在每一个时间点,agent 只能根据有带宽限制的感知器来观察全局,即: it never senses the environment in full. 他只能在一个局部区域或者狭窄的频域范围进行信息的提取。The agent 可以自主的控制如何布置感知器的资源,即:选择感知的位置区域。该agent也可以通过执行 actions 来影响环境的真实状态。由于该环境只是部分可观察,所以他需要额外的信息来辅助其进行决定如何行动和如何最有效的布置感知器。每一步,agent 都会收到奖励或者惩罚,agent 的目标就是将奖励最大化。

 

  1. Model

  

  Sensor:

  在每一个步骤t,该agent 接收部分观察,没有处理全幅图像的权限,但是可以通过感知器 ρ 来提取从xt 得到的信息。假设从 Lt-1 提取的类似视网膜表示 ρ(xt, lt-1) ,该表示比原始图像 x 维度较低,我们称之为 glimpse。有一个叫 glimpse network  fg 的网络结构包含 glimpse sensor 来产生 glimpse feature vector gt,像上图B所示。

 

  Internal state:

  The agent 保持一个间隔状态,用来总结从过去观察得到的历史信息。The internal state 由RNN的隐单元 ht 构成,随着时间利用 core network进行更新,该网络的额外输入是: the glimpse feature vector gt.

 

  Actions

  每一步,agent 执行两个步骤:

    1. 通过感知控制 lt 来决定如何布置感知器;

    2. 一个可能会影响环境状态的环境动作 at 。

 

  Reward:

  在执行一个动作之后,agent会收到一个环境中得到的新的视觉观察 xt+1 和 一个奖励信号 rt+1。在目标识别场景中,如果分类正确,就奖励1分,否则奖励就设置为0.

  

  以上就是Partially Observable Markov Decision Process (POMDP) 的一种特殊示例。

 

 


  2. Training

  总结下,可以看出整个pipeline 有三个小网络,即: the glimpse network, the core network, and the action network。我们的训练目标就是学习到一种策略使得总的奖励达到最大。

  最大化 J 实际上是不容易的,因为这涉及到高维联系序列的期望,将这个问题看做是 POMDP, 然而,允许我们从RL的技术角度来解决该问题,即:一个样本近似的方法来逼近梯度:

  

  整体结构,引用下这个博客上的一个插图链接http://www.cosmosshadow.com/ml/%E7%A5%9E%E7%BB%8F%E7%BD%91%E7%BB%9C/2016/03/08/Attention.html#_label2_3

  

  基于 Torch 的实现代码:

  https://github.com/Element-Research/rnn/blob/master/examples/recurrent-visual-attention.lua

   


 

    总结

  我觉得作为将强化学习和深度学习结合的先锋者,google deepmind 在这方面做的还算不错,论文的motivation 很自然,具体深度学习流程的设计也是比较合理的,其实我就有一个问题:

  ------------------------------

  更新一个网络架构的示意图:

  

  那么,可以看出,attention model 的输入是一个图像,那么根据任务的需要,可以输出一系列的图像 patch,即 attention region,仅仅对这些图像patch 进行处理,一方面可以减少非必要信息的干扰,降低噪声的影响,然后还可以减少计算量,可谓一举两得,一箭双雕,一石二鸟。。。。(一你妹,^_^)

 

  

 

 

 

 

  

转载地址:http://zetyx.baihongyu.com/

你可能感兴趣的文章
Effective Java提升Code Coverage代码涵盖率 - 就是爱Java
查看>>
jsp中对话框的实现
查看>>
【HDOJ】1903 Exchange Rates
查看>>
【HDOJ】3311 Dig The Wells
查看>>
linux笔记:链接命令,软链接和硬链接
查看>>
Spark中Task,Partition,RDD、节点数、Executor数、core数目的关系和Application,Driver,Job,Task,Stage理解...
查看>>
Linux笔记
查看>>
Percona XtraDB Cluster集群5.7 开启SSL认证
查看>>
所思所想 虚构应用场景--和一个小弟的聊天记录
查看>>
安装httpd服务
查看>>
Java基础-位运算符Bitwise Operators
查看>>
Qt Quick中开发中遇到的问题
查看>>
spoj1182Sorted bit squence
查看>>
谁在使用带宽, 他们在做什么?
查看>>
<转>实现方法 C# button快捷键
查看>>
能力发展曲线
查看>>
SQL Server 多种分页查询效率
查看>>
Oracle 获取用户表的字段定义
查看>>
SQL2008无法启动,报错"17051
查看>>
iOS调试-LLDB学习总结
查看>>