https://zhuanlan.zhihu.com/p/344709166
每个算法均可分为两个部分。结构和优化。
其中,结构主要由具体操作子组成,而诸如优化器,训练策略等则可归到优化这个部分。
我将按照上述逻辑归纳对比各个经典网络。
CNN的主要操作子包括:卷积、BN、激活三个主要操作,而其中卷积是最为基础的操作。
卷积具有三个特性
局部连接,局部连接会大大减少网络的参数。limited receptive field
权值共享,在卷积层中使用参数共享是用来控制参数的数量。 ...
空间或时间上的下采样,它的作用是逐渐降低数据的空间尺寸,这样的话就能减少网络中参数的数量,使得计算资源耗费变少,也能有效控制过拟合。
这些特性会带来归纳偏置(inductive bias)
CNN 中的卷积运算由于使用了两个重要的空间约束,从而有助于视觉特征的学习和提取:
由于 CNN 权重共享机制,卷积层所提取的特征便具有平移不变性,它们对特征的全局位置不感冒,而只在乎这些决定性的特征是否存在。
由于卷积算子的性质,所以卷积的特征图具有局部敏感性,也就是每次卷积操作只会考虑原始数据的一小部分的局部信息。
正是由于此,CNN 的归纳偏差缺乏对输入数据本身的整体把握。它很擅长提取局部的有效信息,但是没能提取全局数据之间的长距离特征。
在视觉任务上非常成功的 CNN 依赖于架构本身内置的两个归纳偏置:局部相关性:邻近的像素是相关的;权重共享:图像的不同部分应该以相同的方式处理,无论它们的绝对位置如何。
卷积具有平移不变性、局部敏感性,也缺少对图像的整体感知和宏观理解。
Transformer 的核心组件则是自注意力层。
使用了自注意力机制所生成的视觉特征图不会像卷积计算一样具有空间限制。相反,它们能够根据任务目标和网络中该层的位置来学习最合适的归纳偏差。研究表明,在模型的前几层中使用自注意力机制可以学习到类似于卷积计算的结果。
计算机视觉领域中的自注意力层的输入是特征图,目的是计算每对特征之间的注意力权重,从而得到一个更新的特征映射。其中每个位置都包含关于同一图像中任何其他特征的信息。
这些层可以直接代替卷积或与卷积层相结合,它们也能够处理比常规卷积更大的感受野。因此这些模型能够获取空间上具有长距离间隔的特征之间的依赖关系。
当我们在模型的最后一层是用自注意力机制来将前面的各种卷积层相融合的时候,就可以得到最优的模型结果。事实上,在实验中我们会发现,自注意力机制和卷积层是很类似的,尤其是在网络的前若干层中自注意力机制学习到的归纳偏差和卷积层学习到的特征图十分类似。
出了自注意力层,其还包含,Norm,多头自注意力,Norm,MLP层。
未来transformer的几个主要发展方向有:
从科研角度讲,结构上如何结合任务特性定制结构,如何使用NAS搜索结构,如何寻求transformer的可解释性;优化上如何保证其小数据量下的训练效果,嵌入偏执归纳。
从工程角度讲,如何减少计算复杂度,如何轻量化。
最后,如何利用transformer将多种任务类型统一起来。
https://arxiv.org/pdf/2101.01169.pdf