再谈注意力机制 | 运用强化学习实现目标特征提取

简介: 再谈注意力机制 | 运用强化学习实现目标特征提取

02ef639f7af265f45273359b4e6c7e0f.png

研究目标


研究如何减少图像相关任务的计算量, 提出通过使用attention based RNN 模型建立序列模型(recurrent attention model, RAM), 每次基于上下文和任务来适应性的选择输入的的image patch, 而不是整张图片, 从而使得计算量独立于图片大小, 从而缓解CNN模型中计算量与输入图片的像素数成正比的缺点. 该文通过强化学习的方式来学习任务明确的策略, 从而解决模型是不可微的问题.

RAM 模型在几个图像分类任务上,在处理杂乱图像(cluttered images)时, 它明显优于基于CNN的模型,并且在动态视觉控制问题上,无需明确的训练信号, 它就能学习跟踪一个简单的对象。

Introduction


该文将注意力问题视为与视觉环境交互时以目标为导向的序列决策过程。

人类感知的一个重要特性是人们不会倾向于一次完整地处理整个场景。相反,人们将注意力有选择地集中在视觉空间的某些部分,以便在需要的时间和地点获取信息,并随着时间的推移组合来自不同固定位置(fixation)的信息,以建立场景的内部表示,指导下一步眼睛看下哪里以及决策。将计算资源聚焦在场景的各部分上节省了“带宽”,因为需要处理的“像素”更少。但它也大大降低了任务复杂性,因为感兴趣的对象可以置于固定位置(fixation)的中心,并且固定区域外的视觉环境(“混乱”)的不相关特征自然被忽略。

模型架构


attention注意力机制网络架构如下图所示:

a99d5e0a6095f219a29d7ee1b65462c3.png

该模型架构主要由Glimpse NetworkLocation NetworkCoreNetwork三部分网络组成。其中Glimpse Network主要由由Glimpse Sensor组成。

如上图所示,agent围绕一个递归神经网络构建。在每个时间步骤中,它处理传感器数据,随着时间的推移集成信息,并在下一次时间步骤中选择如何操作和如何部署传感器。过程主要是通过强化学习实现的,下面介绍主要部件:

  • Sensor:在每个步骤t中,agent接受到一个输入图像Xt的环境,agent没有完全访问这个图像,而是通过信息带宽有限的传感器ρ提取信息。如通过传感器在某些地区或感兴趣的频段。
  • Internal state:agent保持一种内部状态,该状态汇总从过去的观察历史中提取的信息,它对代理的环境进行编码,并有助于决定如何操作和在何处部署传感器。该内部状态由递归神经网络的隐藏单元ht组成,通过下面要介绍的它对代理的环境知识进行编码,并有助于决定如何操作和在何处部署传感器CoreNetwork进行更新。网络的外部输入是Glimpse sensor输出向量gt

image.png

训练


image.png

loss采用混合监督损失。

Experiments


我们评估了我们的方法在几个图像分类任务以及一个简单的游戏。我们首先描述了我们所有实验中常见的设计选择:

image.png

mnist手写字母图像识别结果


ab989a352af1d405d17ba08796697d2c.png

来自MNIST测试集的输入图像,其中Glimpse路径以绿色(正确分类)或红色(错误分类)覆盖。

第2-7栏:网络选择的6个亮点。每个图像的中心显示全分辨率的一瞥,外部低分辨率区域是通过将低分辨率的一瞥放大到全图像的尺寸来获得的。瞥见路径清楚地表明,学习策略避免了在输入空间的空或噪声部分进行计算,并直接探索了感兴趣对象周围的区域。

结论


介绍了一种新颖的视觉注意力模型。制定作为一个以一睹窗口为递归神经网络输入和使用网络的内部状态来选择下一个位置关注以及生成控制信号在动态环境中。虽然模型是不可微的,但是所提出的统一架构是使用策略梯度方法从像素输入到操作端到端进行训练的。这个模型有几个吸引人的特性。首先,参数的数量和RAM执行的计算量都可以独立于输入图像的大小进行控制。其次,该模型能够忽略图像中存在的杂波,将视网膜集中在相关区域。

我们的实验表明,在一个混乱的对象分类任务中,RAM的性能显著优于具有相同数量参数的卷积架构。此外,我们的方法的灵活性允许许多有趣的扩展。例如,可以使用另一个操作来扩展网络,该操作允许网络在任何时间点终止并做出最终的分类决策。我们的初步实验表明,一旦有了足够的信息来进行可靠的分类,网络就可以学会停止Glimpse。该网络还可以控制视网膜采样图像的尺度,使其能够在固定大小的视网膜中适应不同大小的对象。在这两种情况下,可以使用前面描述的策略梯度过程将额外的操作简单地添加到操作网络fa中并对其进行训练。鉴于RAM取得的令人鼓舞的结果,将该模型应用于大规模对象识别和视频分类是未来工作的一个自然方向。

开源代码


https://github.com/kevinzakka/recurrent-visual-attention

目录
打赏
0
0
0
0
6
分享
相关文章
知识蒸馏的基本思路
知识蒸馏(Knowledge Distillation)是一种模型压缩方法,在人工智能领域有广泛应用。目前深度学习模型在训练过程中对硬件资源要求较高,例如采用GPU、TPU等硬件进行训练加速。但在模型部署阶段,对于复杂的深度学习模型,要想达到较快的推理速度,部署的硬件成本很高,在边缘终端上特别明显。而知识蒸馏利用较复杂的预训练教师模型,指导轻量级的学生模型训练,将教师模型的知识传递给学生网络,实现模型压缩,减少对部署平台的硬件要求,可提高模型的推理速度。
669 0
迟到的 HRViT | Facebook提出多尺度高分辨率ViT,这才是原汁原味的HRNet思想(二)
迟到的 HRViT | Facebook提出多尺度高分辨率ViT,这才是原汁原味的HRNet思想(二)
298 0
基于结构化状态空间对偶性的贝叶斯注意力机制设计与实现
本文介绍了一种贝叶斯风格的注意力机制,用于处理长序列文本预测。传统注意力机制在处理长文本时计算复杂度高,而贝叶斯方法通过引入不确定性建模和领域知识,特别适用于小数据集或需要融入领域知识的场景。
57 3
基于结构化状态空间对偶性的贝叶斯注意力机制设计与实现
《C++ 中 RNN 及其变体梯度问题的深度剖析与解决之道》
在AI发展浪潮中,RNN及其变体LSTM、GRU在处理序列数据上展现出巨大潜力。但在C++实现时,面临梯度消失和爆炸问题,影响模型学习长期依赖关系。本文探讨了这些问题的根源及解决方案,如梯度裁剪、合理初始化、选择合适激活函数、截断反向传播和优化网络结构等,旨在帮助开发者构建更有效的模型。
61 9
RNN是什么?哪些地方应用的多?
【10月更文挑战第8天】RNN是什么?哪些地方应用的多?
378 0
Sora视频重建与创新路线问题之什么是因果3D卷积,如何实现
Sora视频重建与创新路线问题之什么是因果3D卷积,如何实现
ICML 2024:揭示非线形Transformer在上下文学习中学习和泛化的机制
【7月更文挑战第10天】Rensselaer Polytechnic Institute和IBM的研究者探讨了非线性Transformer在上下文学习的理论基础。他们展示了Transformer如何通过注意力层聚焦相关上下文,并利用MLP层进行预测,揭示了其在不需微调情况下的泛化能力。尽管研究局限于二进制分类和单层模型,它为理解复杂模型在不同任务和领域的潜在适应性提供了新视角。[论文链接:](https://arxiv.org/pdf/2402.15607)**
66 1
深度探索变分自编码器:理论与应用代码之韵:探索编程艺术的无限可能
【5月更文挑战第31天】 在深度学习的众多架构中,变分自编码器(Variational Autoencoder, VAE)以其对数据生成和潜在空间建模的强大能力而脱颖而出。本文将深入探讨VAE的核心原理,包括其概率生成模型、变分推断以及重参数化技巧,并剖析其在多个领域的实际应用案例。通过细致的技术解析与实例演示,我们旨在为读者提供一个关于VAE的全面视角,同时探讨当前的研究动态及未来发展趋势。
强化学习基础篇【1】:基础知识点、马尔科夫决策过程、蒙特卡洛策略梯度定理、REINFORCE 算法
强化学习基础篇【1】:基础知识点、马尔科夫决策过程、蒙特卡洛策略梯度定理、REINFORCE 算法
 强化学习基础篇【1】:基础知识点、马尔科夫决策过程、蒙特卡洛策略梯度定理、REINFORCE 算法