写在前面——
自 2017 年 Transformer 技术出现以来,便在 NLP、CV、语音、生物、化学等领域引起了诸多进展。
知源月旦团队期望通过“Transformer+X” 梳理清 Transformer 技术的发展脉络,以及其在各领域中的应用进展,以期推动 Transformer 技术在更多领域中的应用。
我们在前一期中,介绍了 Transformer 的基本知识,以及其在 NLP 领域的研究进展。在本篇推文中,我们将介绍Transformer 在CV中的应用。
后续我们将介绍 Transformer + 语音/生物/化学等的研究。欢迎感兴趣的同学报名来参与到后续的工作中。
Github:floatingCatty/BAAI-Monthly-
Transformer +X 研究群:
本期贡献者
熊宇轩 张智 马瑞军
赵翠翠 郝楚战 慈天宇
本文为【知源月旦】团队完成的第三期综述,后续我们会定期更新最新前沿研究进展,敬请关注。
第一期:机器学习的可解释性
第二期:Transformer+NLP
01
本文承接 Transformer+X 综述,发布了 Transformer 在 CV 领域的相关研究和发展现状。CV(Computer Vision)是 AI 领域中的重要方向之一,发展时间长,成果多,影响深,应用场景广。目前在 CV 的发展过程中,占据主导地位的依旧是以 CNN 为主的卷积网络,但是在过去的三年里,随着 GNN 和 Transformer 的出现和快速发展,CV 模型逐渐呈现出多样化的发展趋势,并且一众新构架快速在 CV 领域中落地生根。
本文以 2017 年谷歌发布的 Transformer 构架为基础,对 Transformer 在 CV 领域中的发展和应用进行综述。
Transformer 发布之初主要应用于 NLP 领域,随着理论层面的不断发展,逐渐有学者尝试将其应用在 CV 中,最早始于 2018 年发布的 Image Transformer,在过去的 2019 年和 2020 年(尤其 2020 年),基于 Transformer 的视觉模型发展迅速,出现了很多值得关注的新成果,这些成果主要集中在:
1)Transformer Relationship with CNN;
2)将 Transformer 应用在不同的任务中,主要有:Classfication、Object Detection、Image GPT、Segmentation、Video 和 Lane Detection,此外,还有本次文章没有涉及的 Vision Model 等等。
文章时序图如图 1 所示。接下来,我们将对上述内容进行详细介绍。
(横屏看更舒服)
图 1:Transformer+CV 论文时序图
02
01【论文名称】On The Relationship Between Self-attention and Convolutional Layers
随着在自然语言处理(NLP)领域中大行其道的 Transformer 模型被研究者们引入 CV 领域,越来越多的研究者开始将 Transformer 与 CV 领域的经典深度学习模型「卷积神经网络」(CNN)进行对比。
洛桑联邦理工学院的 Jean-Baptiste Cordonnier 等人[1]于 ICLR 2020,发表了「On The Relationship Between Self-attention and Convolutional Layers」,证明了自注意力层可以实现与卷积操作相似的功能,它可以像卷积层一样关注网格化的像素模式。作者指出,在注意力头足够多的情况下,多头自注意力层对图像的表征能力与卷积层相当,从而为 Transformer 在 CV 领域中的应用提供了理论可行性基础。
文章首先简要回顾了多头注意力层的计算原理。设 表示由 T 个 维 token 组成的输入矩阵,token 代表某些离散的物体(例如,NLP 领域中的词例,CV 领域中的像素)。自注意力层通过以下公式将查询序列中的 个 token 从 维映射到 维:
其中,注意力得分的矩阵 的尺寸为 ,即
其中, 为包含了位置信息的矩阵。在多头自注意层中, 个输出维度为 的注意力头的输出会被连接在一起,接着被投影到维度为 的输出上,计算过程如下所示:
其中, 为投影矩阵, 为偏置项。
这种自注意力机制复制到多个头部可以让每个头部都能够通过使用不同的查询、键和值矩阵来关注输入的不同部分。
随后,作者从理论上证明了自注意力与卷积层等价。
一个多头自注意力层,包含输入 维,输出 的 头和 的相对位置编码,可以表示核尺寸 和 , 输出通道的任意卷积层。
设一个由 个头, ,注意力头到卷积移动的双射映射为: : 组成的多个头自注意层,并且假设每个头部都有:
对于具有尺寸为 的卷积核和 个输出通道的任何卷积层,存在 使得每个 内有 ( ) ,如图 2 所示。
图 2:多头注意力层结构示意图
如定理 1 所示,当参数适当时,多头注意力层可以表现出和卷积层相同的效果,每个注意力头会关注某个卷积偏移 (h) 周围的像素点,同时学习一个滤波矩阵,证明过程如下所示:
根据公式(1)和(4),我们可以将多头自注意力操作表征为:
基于多头自注意力的输出像素为:
由于引理 1 的条件,对于第 h 个注意头,当满足 时,注意力概率为 1,否则为 0。因此,该注意力层在像素 q 处的输为:
当 时, 等价于如下所示的卷积层:
注意力头数量为 的矩阵 与矩阵 ( ) ,之间存在一一映射。
此外,作者还提出了第二个引理,即:
存在一个相对编码方案,满足 (Dp≥3),参数
在实验部分,作者通过测试了由六个多头自注意层组成的,基于完全自注意力机制的模型是否可以实现与卷积类似的操作。作者将输入大小固定,并将其作为最后表征形式的平均结果输入给线性分类器,从而判断多头自注意力是否学习到了与卷积层类似的特征。
实验得到的部分结果,如图3所示,作者对 100 张测试图像的注意力图取平均值,用以注意力显的头部行为并消除对输入内容的依。形是查询如黑色正方形所示像素。
图 3:多头注意力层实验结果
经过实验,作者验证了定理 1 的正确性通过,即自注意力实现表示任意的卷积操作,同时完全基于注意力的模型可以做到将局部的表征与基于输入内容的全局注意力相结合。因此,我们可以将卷积网络的优化方法迁移到完全基于注意力的模型上。
03
如前文所述,我们可以通过自注意力机制实现卷积操作的效果。因此,近一段时间以来,研究者们纷纷尝试将 Transformer 架构用于图像分类、目标检测、图像分割等传统计算机视觉任务,试图取代 CNN,甚至获得更好的效果。
02【文章名称】an image is worth 16x16 words: Transformers for image recognition at scale
谷歌谷歌大脑研究院的Alexey Dosovitsk iy在其被 ICLR 2021接收的论文「an image is worth 16x16 words: Transformers for image recognition at scal」中,将Transformer 编码器应用于图像分类任务,提出了一种完全基于自注意力模型的图像分类替代方案。
为了将图像特征转化成 Transformer 结构可以处理的序列数据,作者首先将三维图像数据转化为序列图块(patch),然后再将这些图块按照一定的顺序排列成符合 Transformer 要求的输入序列形式。同时,为了使 Transformer 适应不同大小的图块,作者通过线性映射将不同长度的序列归一化到固定长度。转化过程如图 4 所示。
图 4:ViT 的图块转化过程
如前文所述,为了保证 Transformer 提取的特征对图块的位置具有等变性,作者提出使用位置编码赋予 token 位置信息(在本文中,作者尝试了「不使用位置信息」、「使用 1 维位置嵌入」、「使用包含 X 轴嵌入和 Y 轴嵌入的 2 维位置嵌入」)。如图4所示,上图紫色椭圆框中的 0 -9 表示的位置嵌入,紧邻的粉色的椭圆框表示通过线性映射转化后的序列向量。此外,0 号紫色椭圆对应的粉色星号椭圆框表示可学习的嵌入,其 Transformer 编码将会被作为整个分类图征表示。ViT 的 Transformer 编码器与论文「Attention is All You Need」中原始 Transformer 的中的编码器结构类似,都使用了层归一化、多头自注意力、多层感知机模块)。
03【文章名称】Exploring self-attention for image recognition
香港中文大学的 Hengshuang Zhao 在论文「Exploring self-attention for image recognitio」中,将自注意力机制应用于图像识别任务中,通过丰富的实验,证明了该模型的有效性。
在本文中,作者提出了两种形式的自注意力机制:(1)成对自注意力,它概括了标准的点积注意力机制(本质上是一个集合运算符)。(2)图块(patch)级自注意力,此处的图块尺寸要大于卷积核的尺寸。
实际上,成对自注意力在对比基准测试中的性能与对应的卷积方法相当或甚至更高。通过实验,作者证明了自注意力网络在鲁棒性和泛化方面有显著的优势。作者认为卷积网络用于图像识别主要有两个功能:特征聚合和特征变换。特征聚合是通过卷积核在特征图像中进行卷积来融合特征,特征变换是在卷积操作完成之后进行一系列的线性或非线性操作,比如全连接层或者非线性的激活函数。所以作者在这篇文章的主要想法是使用注意力机制代替卷积进行特征聚合。
1. 成对自注意力(pair self-attention):
其中, 代表 j 位置的特征向量与 i 位置对 j 的注意力对应相乘。 ( ) 是将这些特征进行聚合, 为注意力权重权, 为特征向量
(10)
其中,δ表示特征 和 的单位向量,函数γ将这个向量映射成一个可以与β(xj)组合的向量,如上公式中的 ( ) 。
同时,作者还研究了关系函数δ的多种形式:
(11)
其中 、 为可是可训练的线性或非线性函数。 将被独立处理。因此,权重计算 不能将 i 和 j 以外的任何位置信息合并到模型中。为了给模型提供空间上下文信息,作者增加了位置编码。作者首先将特征图的水平和垂直坐标标准范围[1;1]区间内。接着,作者通过一个可训练的线性层,将坐标矩阵映射到网络中每个层可以处理的适当范围,线性将射为特征图中的每个位置上的像素映射为二维位置特征 。对于每对(i,j),令 ( ) ,我们通过计算差分 来编码相对位置信息。
2.图块级的自注意力(pairwise):
其中, 为 的块特征向量, 为权重。
(13)
本文作者使用的自注意力运算过程如图5所示:
图 5:自我注意力结构示意图
04【文章名称】End-to-End Object Detection with Transformers
Facebook AI 的 Nicolas Carion 等人发表了题为「End-to-End Object Detection with Transformer」的论文(DETR),该论文是将 Transformer 引入目标检测任务的里程碑式论文。
作者将目标检测任务看作一种集合预测问题(set prediction 抛弃了非极大抑制(NMS)、Anchor 等手工的设计组件,采用了 Transformer 式的「编码器-解码器 」架构方法完成检测。通常,在目标检测任务中,我们会采用大量 proposal 集合与 anchor 替代回归和分类问题,从而间接解决目标检测任务,这种模型的性能在很大程度上会受到后处理步骤的影响,为了解决这种问题,提出了 DETR 模型
DETR 模型包含两个重要组成部分:(1)基于集合的损失,通过二部图匹配生成唯一的预测,它可以减少模型编码过程中对于先验知识的依赖;(2)Transforme「编码器-解码器」架构,模型工作流程结构示意图如图 6 所示:
图 6:DETR 结构示意图
在基于集合的损失中,DETR 通过解码器一次可以推断 N 个预测结果(N 大于图像中对象的数目)。本文的损失函数产生一个关于预测值和真实值之间的最佳二部匹配,然后优化特定对象(边界框)的损失。具体的计算过程分为以下两部分:
(1)设 y 为目标真值标签集 ;N 为 N 个预测集合,其中 N 大于图像中目标的数量,同时 y 不是空集,为了找到这两个集合之间的二部图匹配,模型以最小损失为条件搜索 N 个 序列,计算过程如下公式:
该损失函数表示真值 和索引 处预测值之间的匹配代价,然后使用匈牙利算法计算最佳结果,同时还考虑了类预测值与标签真值的相似性。
(2)计算损失函数,即(1)中所有对的匈牙利损失。将损失定义为与普通目标检测器的损失类似的损失,即类预测的负对数似然估计和定义的 Bounding box 损失的线性组合:
其中, 为(1)中计算得到的最优分配,在匹配代价值的过程中使用了概率 而不是对数概率,这使得类预测可以等价于 。作者在文中直接对类的 Bounding box 进行了预测,这样可以简化模型结构,但是带来了损失相对缩放问题,因此,作者又使用了 L1 损失函数和广义交并比(IoU)损失的线性组合,来解决此问题。
本文的主要贡献在于:将目标检测任务转化为一个序列预测(set prediction)的任务,使用 Transformer 编码-解码器结构和双边匹配的方法,由输入图像直接得到预测结果序列。和 SOTA 的检测方法不同,DETR 模型没有使用 proposal(Faster R-CNN)、anchor(YOLO)、center(CenterNet)、NMS,它利用二分图匹配的匈牙利算法,将 CNN 和 Transformer 巧妙结合,直接预测检测框和类别,实现目标检测。
05【论文名称】Deformable DETR: Deformable Transformers for End-to-end Object Detection
SenseTime Research 的 Xizhou Zhu在论文「Deformable DETR: Deformable Transformers for End-to-end Object Detection」中,也将 Transformer 成功地应用于目标检测任务,取得了优异的性能。这篇文章相对于原始的 DETR 而言,主要面向原始版本的 DETR 多头自注意力机制,需要它耗费需要大量的训练时间并且对小目标的检测能力较差的问题,提出了基于 Deformable 的自注意力机制,Deformable DETR,使 DETR 范式的检测器更加高效,收敛速度加快了 10 倍,架型结构如图 7 所示:
图7 Deformable DETR 结构示意图
文章针对原始的 DETR 提出4 处改进,分别为:Deformab 注意力模块,多尺度 Deformable 注意力模块,Deformable Transform 编码器,Deformable Transforme 解码器。
在 Deformable 注意力模块中,作者使用多头注意力机制,并对不同子空间和位置的信息进行加权聚合,计算过程如下:
其中,m 索引注意力头,W 为可学习参数 ,A 为注意力权重。为了分辨不同空间的位作者将位置嵌入引入到 z 中。x 表示多尺度特征图,p 表示每个 query 元素 q 的参考点的归一化坐标,l 指定输入特征层,k 指定采样的 key。
K 表示采样 key 的总数, 表示第 k 个采样点在第 m 个 Attention Head 的采样偏移量, 表示注意力权重, ,通过 标准化, 是无限 2-d 实数,由于 是分数,所以 采用双线性插值法得到,详细过程类似于 Deformable convolution 过程(可参考「Deformable convolutional networks」)。
和 都是通过查询特征 zq 上的线性投影获得的,作者通过 3MK 通道的线性投影算子查询 zq,其中前 2MK 通道对采样偏移量 进行编码,而其余 MK 通道反馈给 softmax 算子以获得注意力权重 。
在 Deformable Transforme 编码器中,作者将原始 DETR 的注意力机制替换为多尺度 deformable attention,使 encoder 的输入和输出具有相同分辨率的多尺度特征图,这种方法提高了原始 DETR 的效率。
此外,作者在 Deformable Transforme 解码器中,引入了了两种注意力:cross-attention 和 self-attention。在 cross-attention 中,object queries 从特征图中提取特征,而 key 元素是解码器输出的特征图。在 self-attention 中,object queries 之间相互作用,key 元素也是 object queries。改进后的 Deformable Transformer 相比之前的 DETR 可以更好的适应不同尺度的目标检测,为 Transformer 在 CV 领域中的快速应用提供一定的帮助。
06【论文题目】ACT(End-to-end object detection with adaptive clustering Transformer)
北京大学的 Minghang Zheng 等人发表了「End-to-end object detection with adaptive clusteringTransformer」,作者提出一种新的 Transformer 变体,这种方法称为适应性聚类 Transformer(ACT),减少了 DETR 方法用于高分辨率输入的计算代价,实现了准确率和计算成本之间良好的平衡。
ACT 使用局部敏感哈希(LSH)适应性地聚类查询特征,使用聚类得到的原型与键间的交互来代替查询键交互。ACT 将自注意力(self-attention)中的二次复杂度 减小为 ,其中 K 是每一层原键的数量。ACT 在不影响预训练 DETR 模型表现的情况下代替 DETR 原有的自注意力模块,可以实现即插即用。
本文的主要贡献有:
提出适应性聚类 Transformer(ACT),减小 DETR 的计算代价。ACT 的主要思想是使用 LSH 从查询(queries)中挑选具有代表性的原型(prototypes),然后广播到所挑选的原型更新特征到它最近的查询上。ACT 可以减小原始 Transformer 的计算复杂度,同时 ACT 完全可得到与原有的 Transformer 相当的效果。
作者将DETR的FLOPS从73.4 Gflops降低到58.2 Gflops(不包括骨干网FLOPs),无需进行任何训练,AP的损失仅为0.7%。
作者通过多任务知识蒸馏(MTKD)进一步将 AP 的损失降到 0.2%,MTKD 是 ACT 和原来的 Transformer 无缝转换。
ACT 结构示意图如 8 所示:
图 8:ACT 结构示意图
文中主要提出了采用了两个比较新颖的方法:局部敏感性哈希(LSH)和多任务知识蒸馏(MTKD)。
局部敏感性哈希(LSH)通过控制哈希函数的参数和哈希聚集的个数,可以以大于 p 的概率令距离小于 的所有向量进入相同的哈希池中。作者选择 E2LSH 作为哈希函数:
(17)
其中 是哈希函数,r 是超参数, 是随机变量,服从 ,最后作者使用的哈希函数为:
(18)
图9 为哈希函数的原则。
图 9:哈希函数原理图
为了得到原型,首先作者对每一个查询计算哈希值,然后相同的哈希值被分为一类,这个类的原型就是这些查询的中心。作者定义 作为查询, 其中 C 是聚类的数量,Gi 表示 Qi 属于聚类的指标,第 j 类的原型可由下面的公式 3 得到。
在经过前面的步骤后,每组查询都用一个原型表示。因此仅需要计算原型和键之间的注意力图。作者通过下面的计算得到注意力的近似:
(22)
(21)
其中 K 是键(keys),V 是值(values),softmax 是应用于行的。注:这里由近似引起的误差是可控的,它随着超参数 L 的增大和 r 的减小而减小。
多任务知识蒸馏(MTKD)使 ACT 和原来的 Transformer 之间无缝转换,定义训练的损失函数为:
其中 Y 表示真实值,B1 表示 ACT 预测的边界框,B2,Y2 分别表示预测得到的边界框和 DETR 的全预测。Lpred表示真实值和 DETR 预测结果的距离,LKD表示知识损失。这个训练损失函数是为了训练原来的 Transformer 联合全预测和近似预测间的知识 Transformer。MTKD 使得 ACT 和原来的 Transformer 可以无缝转换。
MTKD 过程如图10 所示:
图 10:MTKD 过程示意图
07【论文名称】Image Transformer
谷歌大脑实验室的 Niki Parmar 等人于 PMLR 2018 上发表了「Image Transformer」。作者将 Transformer 结构应用于图像生成任务,通过限制自注意力机制关注局部邻域,显著增加了模型在实践中可以处理的图像的大小。
文中所提的结构首先将图像视为离散类别或有序值。将图像的三个颜色通道和强度值转换成一个 3 维矩阵。对于序数值,运行 1x3 窗口大小,1x3 跨步卷积,将每个像素的 3 个通道组合起来,以形成尺寸为[h; w; d]的张量。接着,作者将 d 维位置编码添加到每个像素的表征中。
接下来,在图像生成过程中,作者使用了编码器-解码器结构,编码器在考虑上下文的情况下生成原图像的表征,解码器自回归地生成像素强度的输出。作者将一个单层全连接前向神经网络以及 ReLU 函数应用于上述输出。学习到的参数在所有位置上共享,但层与层之间的参数不同。在每次应用自注意和位置前馈网络之后,都会执行 dropout、合并残差连接、执行层归一化。整个自注意力操作可以使用高度优化的矩阵乘法代码来实现,并对所有像素的通道并行执行。
图 11:部分实验结果图
作者使用文中所搭建的模型进行实验,发现文中所搭建的模型生成的图像在真实性和多样性方面表现良好,同时在完成样本和观测输出中,包含了超分辨率粗输入的细节,结果图 11所示。
文中所搭建的模型很好的证明了 Image Transformer 结构同样适用于 GAN 领域,未来将可以探索自由格式文本以及结合诸如语言驱动的图像编辑等任务。
08【论文名称】Generating long sequences with sparse Transformers
本文提出了一种适用于文本、图像和语音的稀疏 Transformer「Generating long sequences with sparse Transformers」,将先前基于注意力机制的序列处理算法的长度提高了三十倍。本论文中为注意力矩阵引入了多种稀疏的分解方式,将完全注意力计算分解为多个更快的注意力操作,通过稀疏组合来实现稠密注意力操作,在不牺牲性能的情况下大幅降低了对于内存和算力的需求。
首先,作者引入了“空洞自注意力”和“局部自注意力”。“空洞自注意力”受到了“膨胀卷积”的启发,对相关性进行了约束,强行要求每个元素只跟它相对距离为 k,2k,3k,…的元素关联,其中k>1是预先设定的超参数。从其注意力矩阵看,就是强行要求相对距离不是k的倍数的注意力为0。由于此时的注意力是以“间隔”的方式计算,所以实际上我们只需要计算为每个元素n/k个相关元素的注意力,则理想情况下的时间复杂度和显存占用都从O(n^2)变成了O(n^2 /k),也就是说能直接降低到原来的1/k。作者所提的两种attention矩阵的稀疏方法,结构如图12所示,其中上半部分表示一个 6x6 图像的像素之间相互注意,下半部分表示对应的连通matrix。
图 12:attention矩阵稀疏结构示意图
其中,
(a)为原始 Transformer 中的完全注意力机制,会计算所有元素两两之间的注意力值;
(b)为「Strided Attention」:这种方式主要应用于图像或者音频,每一个位置通过注意其对应的行和列来获取信息,两个注意力头的具体表示为:第一个注意力头会注意当前位置前面的 个位置,第二个则会注意与当前位置间隔 的位置(如果输入是图像 为图像的宽,则会注意对应的列):
( ) (24)
(c)为「Fixed Attention」:这种方式主要应用于文本等不存在明显周期性规律的数据。作者首先将文本分成固定长度的块,然后使用第一个注意力头处理该块中该位置之前的所有元素,第二个注意力头处理每个块的最后一部分的固定大小的部分。类似于前文提到的“局部自注意力”,都只保留 2k+1 大小的窗口,在窗口内通过注意力加权平均得到输出,这样每个元素只跟 2k+1 个元素算相关性,这样一来运行效率提升,但也也直接牺牲了长程关联性。
除了对注意力机制的改进,本文还引入了了预激活残差模块 优化了 Transformer 的训练过程。本文用到的 N 层网络定义如下:
(25)
其中,resblock(H)的具体计算过程为:
综上所述,本文的稀疏 Transformer 组合使用了“空洞自注意力”和“局部自注意力”,在长序列的建模任务中相较于标准的 Transformer 获得了显著的性能提升,并且有效降低了计算复杂度(将原始 Transformer 的平方复杂度 降低为 ),实现了“局部紧密相关和远程稀疏相关”,该模型演示了长期上下文的用法,并生成了全局一致的样本。
09【论文名称】Generative Pretraining from Pixels
OpenAI 的 Mark Chen 等人于 PMLR 2020 上发表了「Generative Pretraining from Pixels」。受无监督学习在自然语言应用的启发,作者研究了无监督预训练模型在图像领域的应用,提出了一种无需结合 2D 输入结构的知识就可以自动回归预测像素的方法。
该方法包含一个预训练阶段和一个微调阶段,架构示意图如图13 所示。在操作过程中,作者首先将输入调整为低分辨率图,并将其重塑为一维序列。接着,我们选择一个预训练目标。最后,通过线性探针或对学到的表征进行调优,进而评估这些目标。
图 13:模型结构示意图
在预训练的阶段中,使用 Transformer 结构预测像素。给定一个包含高维数据的未标记数据集 X,选择集合[1,n]并使用如下公式对 p(x)进行自回归建模。
在处理图像时,选择 π 的栅格顺序,使用最小化数据的负对数似然来训练模型,如
(32)
此外,作者还对子序列 BERT 掩码 M( M [1; n],每个指数i独立地出现在M中的概率为0.15)使用最小化的负对数似然估计来训练模型,得到 。
最后作者在 或 中选择一个进行预训练,同时尽量减少在预训练数据集上的损失。在微调阶段中,作者为模型增加了分类头,用于优化分类目标并调整所有权重。
实验结果表明,通过线性探测、调优和小规模数据分类,GPT-2 模型可以学习强大的图像表示。在 CIFAR-10 上,使用线性探针达到了 96.3%的准确度,优于监督的 Wide ResNet,通过完全微调的结果达到了 99.0%的准确度,与先进性能的先进监督预训练模型相匹配。使用 ImageNet 和 Web 图像混合训练的更大模型与 ImageNet 上的自我监督基准测试相比具有竞争力,在线性探针上可达到 72.0%的 top-1 精度。
10【文章名称】Hamming OCR: A Locality Sensitive Hashing Neural Network for Scene Text Recognition
平安财险的 Bingcong Li 等人,发表了「Hamming OCR: A Locality Sensitive Hashing Neural Network for Scene Text Recognition」。作者提出了一种新的轻量级屏幕文本识别的神经网络——Hamming OCR。作者通过移除前馈网络(FFN)和使用交叉层参数共享技术,有效减少了 Transformer 解码器模型的参数数量。和传统的方法相比,本文提出的模型在不失准确率的情况下,降低了对存储空间的要求(模型的大小仅为3.9M),并且做到了分类结果和嵌入层的参数数量、词汇量相互独立。模型架构如图14所示。
图14:Hamming OCR 结构示意图
本文提出的模型使用了以下 4 种技术:汉明(Hammin)分类器,(Hamming)嵌入,移除前馈网络,交叉层参数共享。
互联网上解释比较好的推荐:
https://zhuanlan.zhihu.com/p/260709658
11【论文名称】ActBERT:Learning Global-Local Video-Text Representations
百度实验室和悉尼理工大学-ReLER 的 Linchao Zhu 等人在 CPVR 2020 上发表了「ActBERT:Learning Global-Local Video-Text Representations」。作者提出了一种名为 ActBERT 的方法,它可以根据未标记的数据,以自监督的方式,学习联合视频文本表示。文章还验证了 ActBERT 在在下游视频和语言任务(包括文本视频剪辑检索,视频字幕,视频问题解答,动作分段和动作步骤本地化)上的通用能力。
ActBERT 有三种模态输入:全局动作,局部区域和语言描述。同时 ActBERT 设计了一种全新的纠缠编码器从全局动作、局部区域和语言描述三个来源进行多模态特征学习,以增强语言特征和视觉特征之间的关系,模型结构示意图如图15所示。
图15:模型结构示意图
ActBERT 的训练方式类似于 BERT,它包含四个训练任务:有掩码的语言建模任务;有掩码的动作分类任务;有掩码的物体分类任务;跨模式匹配,架构图 16 所示。
图 16:ActBERT训练方式结构示意图
12【论文名称】MaX-DeepLab: End-to-End Panoptic Segmentation with Mask Transformers
约翰霍普金斯大学的 Huiyu Wang 等人,发布了「MaX-DeepLab: End-to-End Panoptic Segmentation with Mask Transformers」,针对目前全景分割模型在很大程度上需要依赖代理子任务和人工设计组件(例如,盒子检测、非最大抑制、事物合并)的缺陷,首次提出了一种全景分割的端到端模型——MaX-DeepLab。
文章提出的方法可以通过掩码 Transformers 结构直接预测带有类标签的 mask,在模型训练过程中使用匈牙利匹配法加全景质量(PQ)启发对模型进行训练。模型结构采用双路径架构,不仅加入 CNN 路径,还引入全局存储路径,从而允许与任何 CNN 层直接通信。
MaX-DeepLab 的模型结构如图 17 所示,包含一个 Tansformer+CNN 的双路结构,一个堆叠的解码器和用于预测掩码和类别的输出头部位,用大小为 N(即预测总数)的 1D 全局内存来扩充基于 2D 像素的 CNN,并提出一个 Transformer 块作为任何 CNN 块的插入式替换或一个预训练 CNN 块的附加组件。Transformer 图块支持 2D 像素路径 CNN 和 1D memory path 之间所有四种可能的通信类型:(1)传统的内存对像素(M2P)的注意力,(2)内存对内存(M2M)自注意力,(3)像素对内存(P2M)的反馈注意力,以及(4)像素对像素(P2P)自注意力。
图 17:MaX-DeepLab 结构示意图
13【论文名称】End-to-End Dense Video Captioning with Masked Transformer
密歇根大学的Luowei Zhou 等人在CVPR2018上发表了「End-to-End Dense Video Captioning with Masked Transformer」。密集视频字幕(Dense video captioning,DEC)旨在为未修剪的视频中的所有事件生成文本描述。该任务可以被分解为视频事件检测和视频描述这两个环节。DEC 任务普遍存在两个问题:(1)LSTM 在编码视频过程中,难以解决长时间依赖问题,导致对 long proposal 的 caption 效果较差;(2)只能单独训练 proposal 和 caption 模块。为了解决上述问题,作者提出了一种基于掩码 Transformer 结构的端到端密集视频字幕检测方法。
首先,作者通过编码器对视频进行表征,解码器使用不同的 anchor 从编码中解码,以形成视频事件 proposal,视频描述解码器使用 masked 网络将注意力限制在编码函数上的事件 proposal 上,该网络将事件 proposal 转换为可微分的掩模,从而确保 proposal 和训练期间生成描述之间的一致性。此外,模型还采用了一种自注意力机制,可以在编码过程中使用有效的非循环神经网络结构,从而提高性能。
模型的结构示意图如图18 所示,分为三部分:视频编码器,proposal 解码器和视频描述解码器。
图18:模型结构示意图
在视频编码器部分,文章使用 Transformer 结构中的自注意力机制对视频进行编码,作为输入。同时,对于帧级别的特征,作者使用自注意力编码特征。在解码阶段,作者先使用单层的自注意力对词的特征进行编码,再把视频的编码特征和词的编码特征同时输入到多头注意力模块,生成对多个预测词的打分,从而预测下一个单词。
在 proposal 解码器和视频描述解码器阶段,作者同样使用了自注意力机制。为了实现端到端训练,作者使用视频描述的结果对 proposal 进行训练,将每个 proposal 转换为一个掩模,同时再和视频特征进行融合输入到多头注意力模块,得到对预测单词的概率。
在实验环节中,本文提出的模型在 ActivityNet 和 YouCookII 数据集上展示了端到端模型的有效性,分别获得了 10.12 和 6.58 的 METEOR 得分。此外,该方法是当年第一个不使用 LSTM 的编码视频特征的文章,并且使用掩模实现端到端的训练,为后续的相关研究提供很多思路。
14【论文名称】End-to end video instance segmentation with Transformers
阿德莱德大学的 Yuqing Wang 等人,发布了「End-to-end video instance segmentation withTransformers」。作者提出了一个基于 Transformers 的新视频实例分割框架(VisTR),用于在视频中对感兴趣的对象实例同时进行分类,分割和跟踪。
图19:VisTR框架pipeline
VisTR 框架将 VIS 任务直接视为端到端并行序列解码/预测问题。给定包含多个图像帧的视频剪辑,VisTR 直接按顺序输出视频中每个实例的掩码序列。模型的核心是一种新的“对比 mask 的差异,和背景分类”策略,该策略在整个序列级别上对实例进行监督和分割,此外,VisTR 从相似性学习的同一角度构建实例分割和跟踪,简化了整个视频分割流程。VisTR 的结构如图19所示,包含匹配和分割两个部分,四个主要组件:用于提取多帧紧凑特征表示的 CNN 主干网络;用于对像素级和实例级特征的相似性进行建模的编码器-解码器;用于监督模型的序列匹配模块;实例序列分割模块。
特征提取部分,首先,将视频剪辑的原始像素级特征序列作为主干网络的输入,使用标准的 CNN 主干网络为每个帧生成一个较低分辨率的激活图,然后将每个帧的特征连接起来以形成剪辑级别的特征图。在编码器和解码器过程中,作者使用了常规的 Transformer 对于图像转换的处理以及固定位置编码信息。
实例查询由学习得到,且查询实例与像素特征维度相同,将编码器 E 和 N 个实例查询 Q 的输出作为输入,Transformer 解码器输出 N 个实例特征,在图20中用 O 表示,总体预测遵循输入帧的顺序,不同图像的实例预测的顺序为相同, 因此,模型可以通过直接链接相应索引的项来实现对不同帧中的实例进行跟踪。
图20:VisTR 模型结构示意图
分割过程包括实例掩码特征积累和实例序列分割两个模块。对于前一种情况,实例掩码特征积累过程中,作者将输出通道为 1 的 2D 卷积层应用于每个帧的每个实例的掩模特征以获得掩模。在实例序列分割模块中,将实例序列作为一个整体,作者通过三维卷积来学习时间信息,从而加强 mask 预测。因此,当对象处于诸如遮挡或运动模糊等具有挑战性的情况时,该模块可以传播来自其他帧的信息以帮助实例分割。另外,同一实例的多帧特征有助于网络更好地识别实例。
在实验环节中,VisTR 在 YouTube-VIS 数据集上使用单一模型条件下,实现了最佳结果和最快速度。
15【论文名称】Foley Music: Learning to Generate Music from Videos
在本文中,Chuang Gan 等人提出了 Foley Music 模型「Foley Music: Learning to Generate Music from Videos」,该模型可以为根据演奏乐器的人的无声视频片段合成合理的音乐,包含三部分:视觉感知模块;音频表示模块和二者结合模块。模型的「编码器-解码器」架构如图21 所示。
图21:模型结构示意图
(1)视觉编码器:由图卷积网络构成(GCN,工作原理与 ST-GCN 的相同,即,将关节作为节点(用位置坐标表示其特征),骨骼作为边构建空间图,将不同时间步中的对应节点相连构成时空图。通过时空图卷积,提取图结构在空间结构和时序变化上的特征,详情请参阅「Spatial Temporal Graph Convolutional Networks for Skeleton-Based Action Recognition」),它将视频片段每一帧的人体骨骼点坐标作为输入,编码得到视觉特征;
(2)MIDI 解码器:文章将从身体运动生成音乐视为一个序列预测问题,并使用 Transformer 模型的标准解码器进行解码。
在解码器部分,我们需要考虑到音乐本身的特性:音乐具有丰富的复音音色,同一个时刻往往能听到很多个音符。对于 MIDI 文件来说,事件之间的相对位置是很重要的,它们影响了音乐的节奏和音高。但是,原始的 Transformer 对单词之间相对位置的编码是有缺陷的。
本文使用的 Transformer 结构在 self-attention layer 中加入了一种相对位置表征,改进了 Transformer 的相对位置编码,从而显式地建模序列中任意两个 token 之间的相对位置,计算实现如下:
矩阵 ,其中矩阵 A 的每个元素 就表示 token 和 之间相对位置的嵌入。
(3)在音频合成器模块,MIDI 可以使用标准合成器渲染成音乐波形,也可以训练神经合成器进行音频渲染。
本文提出 Foley Music 系统通过人体骨骼关键点和 MIDI 文件来建立视频和音频之间的联系,实验结果证明了这两种中间表征的有效性。同时,本文框架具有易扩展性,可以通过编辑 MIDI 文件来生成不同风格的音乐,但对于时长较长的序列生成仍因计算的复杂性较难实现。
16【文章名称】End-to-end Lane Shape Prediction with Transformers
西安交通大学的 Ruijin Liu 等人在 WACV 2021 上发表了题为「End-to-end Lane Shape Prediction with Transformers」的论文。作者提出了一种端到端的方法,该方法可以直接输出车道形状。车道形状模型是基于道路结构和摄像头姿势制定的,其参数作为直接回归输出,反映道路结构和摄像机姿态。Transformer 使用自注意机制对非局部交互进行建模,该网络从任何成对的视觉信息中总结信息,以捕获通道的狭长结构和全局隐含文本。整个架构可以立即预测输出,并采用匈牙利损失进行端到端训练。损失模型采用预测与真值之间的二分匹配,保证一对一的无序分配,使模型消除了显性的非极大抑制过程。
作者提出的体系结构包括一个主干、一个简化 Transformer 网络、几个用于参数预测的前馈网络(FFNs)和匈牙利损失。模型的网络结构如图 22 所示。
图22:模型结构示意图
主干网络是建立在 reduced ResNet18 的基础上。在此将 ResNet18 输出通道削减为“16、32、64、128”以避免过拟合,并将降采样因子设置为 8 以减少车道结构细节的损失。
编码器具有两个顺序链接的标准层。它们每个都包括一个自我注意模块和一个图22所示的前馈层。给定抽象空间表示的序列 S,基于绝对位置的正弦嵌入 Ep 用于对位置信息进行编码,以避免置换等变。Ep 具有与 S 相同的大小。编码器通过 Eq 执行缩放的点乘注意。
解码器具有两个标准层。与编码器不同,每一层都插入另一个注意模块,该模块会期待编码器的输出,从而使其能够对包含空间信息的要素进行关注,以与最相关的要素元素相关联。编码器和解码器的结构示意图如图23所示。
图 23:Transformer 编码-解码器结构示意图
匈牙利拟合损失在预测参数和车道真值之间进行匹配,采用匈牙利算法有效地解决了匹配问题,然后利用匹配结果优化路径相关回归损失。本文的方法首先预测一个固定的 N 条曲线 H,其中 N 被设置为大于典型数据集图像中的最大车道数。车道真值也用序列 表示,由于预测曲线的数目 N 大于真实车道的数目,我们也把真实车道看作是一组大小为 N 的非 lane 填充集
通过搜索最优单射函数 ,我们将曲线集与地面真道标记集之间的二部匹配作为一个成本最小化问题 。匈牙利算法可以有效地解决这个问题,对于指标为 z(i)的预测,拟合车道序列为:
则匹配成本为:
(37)
回归损失计算上一步匹配的所有对的误差,其形式为:
(38)
ω1,ω2,ω3也调整损失项的影响,并设置为与匹配成本等式相同的系数。
04
随着脱胎于自然语言处理领域的 Transformer 模型被逐渐引入到计算机视觉领域中,研究者们在一系列重要计算机视觉任务上屡屡刷新了目前最佳的模型性能记录。
在本文中,我们回顾了 Transformer 的关键运算过程,对 Transformer 与 CNN 工作机制的异同进行了深入分析,并且从图像分类、目标检测、图像分割等方面介绍了 Transformer 在计算机视觉领域的部分前沿应用进展。计算机视觉领域的发展日新月异,截至本文刊发之时,一定又有许多有趣的基于 Transformer 的计算机视觉应用诞生,也一定有许多颠覆式的新颖的研究思路正在孵化中。
他山之石,可以攻玉!时至今日,Transformer 已经成为了 NLP 领域的先进模型在 CV 领域跨界应用的成功典范。未来,这一交叉性研究领域将会如何发展?让我们拭目以待!
参考资料
[1]Cordonnier J B,Loukas A,Jaggi M. On the relationship between self-attention and convolutional layers[J]. arXiv preprint arXiv:1911.03584,2019.
[2] Dosovitskiy A,Beyer L,Kolesnikov A,et al. An image is worth 16x16 words: Transformers for image recognition at scale[J]. arXiv preprint arXiv:2010.11929,2020.
[3] Zhao H,Jia J,Koltun V. Exploring self-attention for image recognition[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2020: 10076-10085.
[4] Carion N,Massa F,Synnaeve G,et al. End-to-End Object Detection with Transformers[J]. arXiv preprint arXiv:2005.12872,2020.
[5] Zheng M,Gao P,Wang X,et al. End-to-End Object Detection with Adaptive Clustering Transformer[J]. arXiv preprint arXiv:2011.09315,2020.
[6] Dai Z,Cai B,Lin Y,et al. UP-DETR: Unsupervised Pre-training for Object Detection with Transformers[J]. arXiv preprint arXiv:2011.09094,2020.
[7] Zhu X,Su W,Lu L,et al. Deformable DETR: Deformable Transformers for End-to-End Object Detection[J]. arXiv preprint arXiv:2010.04159,2020.
[8] Chen M,Radford A,Child R,et al. Generative pretraining from pixels[C]//International Conference on Machine Learning. PMLR,2020: 1691-1703.
[9] Parmar N,Vaswani A,Uszkoreit J,et al. Image Transformer[J]. arXiv preprint arXiv:1802.05751,2018.
[10] Child R,Gray S,Radford A,et al. Generating long sequences with sparse Transformers[J]. arXiv preprint arXiv:1904.10509,2019.
[11] Li B,Tang X,Qi X,et al. Hamming OCR: A Locality Sensitive Hashing Neural Network for Scene Text Recognition[J]. arXiv preprint arXiv:2009.10874,2020.
[12] Zhu L,Yang Y. ActBERT: Learning Global-Local Video-Text Representations[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2020: 8746-8755.
[13] Wang H,Zhu Y,Adam H,et al. MaX-DeepLab: End-to-End Panoptic Segmentation with Mask Transformers[J]. arXiv preprint arXiv:2012.00759,2020.
[14] Zheng S,Lu J,Zhao H,et al. Rethinking Semantic Segmentation from a Sequence-to-Sequence Perspective with Transformers[J]. arXiv preprint arXiv:2012.15840,2020.
[15] Gan C,Huang D,Chen P,et al. Foley music: Learning to generate music from videos[J]. arXiv preprint arXiv:2007.10984,2020,4(6): 7.
[16] Wang Y,Xu Z,Wang X,et al. End-to-End Video Instance Segmentation with Transformers[J]. arXiv preprint arXiv:2011.14503,2020.
[17] Zhou L,Zhou Y,Corso J J,et al. End-to-end dense video captioning with masked Transformer[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2018: 8739-8748.
[18] Yu Z,Ren X,Huang Y,et al. Detecting Lane and Road Markings at A Distance with Perspective Transformer Layers[J]. arXiv preprint arXiv:2003.08550,2020.
[19] Liu R,Yuan Z,Liu T,et al. End-to-end Lane Shape Prediction with Transformers[C]//Proceedings of the IEEE/CVF Winter Conference on Applications of Computer Vision. 2020: 3694-3702.
[20] Tabelini L,Berriel R,Paixo T M,et al. PolyLaneNet: Lane Estimation via Deep Polynomial Regression[J]. arXiv preprint arXiv:2004.10924,2020.
[21] Dai J,Qi H,Xiong Y,et al. Deformable convolutional networks[C]//Proceedings of the IEEE international conference on computer vision. 2017: 764-773.
[22] Yan S,Xiong Y,Lin D. Spatial temporal graph convolutional networks for skeleton-based action recognition[C]//Proceedings of the AAAI conference on artificial intelligence. 2018,32(1).
打包下载链接:https://pan.baidu.com/s/17u_NqI09BQ51gbpsL8wSkg
密码: nwgi
欢迎加入兴趣组,共同交流Transformer研究进展
推荐阅读:
点击下方图片即可阅读
前沿综述 · 机器学习的可解释性
前沿综述 · Transformer 在各学科中的应用
点击左下角“阅读原文”,了解更多!
本版积分规则 发表回复 回帖并转播 回帖后跳转到最后一页
QQ咨询|关于我们|Archiver|手机版|小黑屋|( 辽ICP备15012455号-4 ) Powered by 期权论坛 X3.2 © 2001-2016 期权工具网&期权论坛 Inc.
下载期权论坛手机APP