Vision Transformers看到的东西是和卷积神经网络一样的吗?
扫一扫
分享文章到微信
扫一扫
关注99科技网微信公众号
作者: Mengliu Zhao
编译:ronghuaiyang
导读
这是对论文《 DoVisionTransformers See Like Convolutional Neural Networks 》的一篇解读 。
Vision Transformer (ViT)自发布以来获得了巨大的人气,并显示出了比基于CNN的模型(如ResNet)更大的潜力。但是为什么Vision Transformer比CNN的模型更好呢?最近发表的一篇文章“Do Vision Transformers See Like Convolutional Neural Networks?”指出,ViT的优势来自以下几个方面:
ViT不同层的特征更加均匀,而CNN模型不同层的特征呈网格状
ViT的低层的注意力包含全局信息,而CNN的性质在低层只关注局部
在ViT的较高层中,跳跃连接在信息传播中发挥突出作用,而ResNet/CNN跳跃连接在较高层中传递的信息较少
此外,数据的规模和全局平均池化的使用都会对ViT的表示产生很大的影响。
ViT和CNN的主要区别
首先,让我们看看下面的两个架构,ViT和一个典型的CNN模型ResNet50。ResNet50接收整个狗图像,并进行2D卷积,内核大小为7×7,用残差块叠加50层,最后附加一个全局平均池化和一个dense层,将图像分类为“狗”。ViT首先将狗图像分解为16*16个patch,将每个patch视为一个“token”,然后将整个token序列送入transformer编码器,该编码器由多头自注意力块组成,编码器特征随后被发送到MLP层,用于分类“狗”类。
上: ResNet50; 下: ViT
对于两个长度不同的特征向量,很难衡量它们的相似性。因此,作者提出了一种特殊的度量,中心核对齐(CKA),整个论文中都在使用这个。假设X和Y是m个不同样本的特征矩阵,K=XX^T^, L=YY^T^,则利用Hilbert-Schmidt独立准则(HSIC)的定义,定义CKA如下:
X和Y越相似,CKA值越高。更多的定义细节可以在论文的第3节中找到。
有了CKA的定义,一个自然的问题出现了:ViT和CNN的不同层的特征有多相似?作者表明,模式是相当不同的, ViT在所有层上有一个更统一的特征表示,而CNN/ResNet50在较低和较高的层上有一个网格状的模式。这意味着ResNet50在它的低层和高层之间学习不同的信息。
左:ViT各层特征对之间的CKA值,右:ResNet50所有层的特性对之间的CKA值。
但是ResNet在其较低层次和较高层次学习的“不同信息”是什么呢?我们知道对于CNN模型,由于卷积核的性质,在较低的层只学习局部信息,在较高的层学习全局信息。所以在不同的层之间有一个网格状的模式就不足为奇了。那么我们不禁要问,ViT怎么??ViT是否也在其底层学习局部信息?
99科技网:http://www.99it.com.cn

人工智能驱动的IP保护平台MarqVision近日宣布已完成2000万美元的A轮融资,用于为
快资讯2022-08-28

smart phone 是智能手机 在智能手机领域,微软公司的Smartphone系统和Symbian公司的
快资讯2022-07-09

6月24日消息,据外媒Electrek报道, 奔驰概念纯电汽车VISION EQXX 在最近的一次赛事
快资讯2022-06-24
