CNNs Transformer的position位置编码、位置嵌入

CNNS:

  • inductive biases inherent(such as,translation equivariance,locality,two-dimensional neighborhood structure)

Transformer:

  • lack inductive biases inherent (such as, translation equivariance and locality),但是当其数据集训练足够时,没有也没事。
  • MLP:locality,translation equivariance
  • self-attention:gobal,permutation-invariance置换不变i性,lack order
  • two-dimensional neighborhood structure很少,原因是:将图像分块,无法携带二维位置信息,方案:position embedding :所有块在空间上的相关性都需要从开始就进行学习。

Position:

  • 1D-position和2D-position embedding:性能差不多?
  • learned position embedding(可学习的位置嵌入):邻近的块的位置嵌入相似性高。
  • fixed or learnable positional encoding (固定/可学习的位置编码):预定义,独立于输入tokens。
  • conditional positional encoding(条件位置编码):条件基于局部相邻的token,动态生成,保持平移不变性。
  • absolute positional encoding(绝对位置编码):顺序意识order-awareness,不同频率的正弦函数-固定或可学习,但是会破坏transformer的灵活性,也就是说,绝对位置编码会给每个token加上一个独一无二的位置编码,进而破坏了其平移不变性。也会出现限制大小固定问题,可以通过双线性上采样将位置编码到目标长度,但由此又会带来计算复杂,性能下降。但是,绝对位置编码对图像分类任务提供了相对位置编码所不能提供的信息。
  • relative position encoding(相对位置编码):每个像素与其他像素的相对位置,带来了计算量的上升,也需要更改标准的transformer架构。但是,其保持了平移不变性,也解决了序列长度问题。2D的相对位置编码优于2D的正弦嵌入。

position encoding作用

  • 输入序列的顺序是非常重要的线索,而模型只能用位置编码来获取这一顺序。进而保证序列的置换不变性和平移不变性。
  • 边缘的token可以通过zero-padding来感知它们的绝对位置。

你可能感兴趣的:(那些不懂就整理的知识点,transformer,深度学习,人工智能)