与卷积神经网络(CNN)对比,视觉Transformer的特点

本人对视觉Transformer(ViT)的一些总结,有不对的地方请大家指教。

1. 卷积神经网络(CNN)因其自身固有的一些列优良特性,使它们很自然地适用于多种计算机视觉任务。比如平移不变性(translation equivariance),这种特性为CNN引入了归纳偏置(inductive bias),使之能够适应不同大小的输入图片的尺寸。

2. 视觉Transformer模型的发展撼动了CNN的统治地位。通过借鉴CNN中一些优秀的架构设计(金字塔结构、归纳偏置和残差连接等)和训练策略(知识蒸馏),视觉Transformer模型已经在图像分类、目标检测、语义分割等下游任务(downstream tasks)中取得了卓越的性能。

3. 视觉Transformer成功的关键因素是通过自注意力(self-attention)操作实现输入自适应(input adaptive)远程依赖(long-range dependencies, 旨在提取视觉场景的全局理解)和高阶空间交互(high-order spatial interactions)的空间建模新方法。

4. ViT的基本特征是其直接的全局关系建模(direct global relationship modeling),可以扩大图像的感受野,获取更多上下文信息,这也是众多研究者从CNN转移到视觉Transformer的原因。Self attention有特征汇聚的能力,全局性强。

5. 视觉Transformer的多头注意力(Multi-Head Attention, MHA)能够捕捉更加丰富的特征信息通过qkv去捕捉全局的特征与特征之间的关系。Transformer有时候作为backbone,有时候作为head,比较灵活。

6. Transformer在目标检测的作用是获取目标的位置和特征信息。Detr用卷积提取到特征,输入到Transformer中的encoder(编码器)里,计算每个patch的特征与特征之间存在的隐藏关系,decoder(解码器)主要是用来计算目标可能出现的位置。

7. 与CNN相比,视觉Transformer在浅层和深层获得的特征之间具有更多相似性。视觉Transformer从浅层获得全局特征,但从浅层获得的局部特征也很重要。此外,视觉Transformer比CNN保留了更多的空间信息(spatial information)

8. 视觉Transformer中的跳跃连接(skip connection)比CNN的重要程度高,并且很大程度影响了特征表示的性能和相似性

9. 视觉Transformer无法利用图像本身具有的尺度、平移不变性和特征局部性等先验知识,必须使用大规模数据集学习高质量的中间表示。若数据集较小,不建议采用视觉Transformer,本人测试过。

10. MLP-Mixer的表示更接近视觉Transformer而不是CNN。

你可能感兴趣的:(cnn,transformer,深度学习)