Transformer中没有CNN中的Inductive bias(归纳偏置)

在机器学习中,很多学习算法经常会对学习的问题做一些关于目标函数的必要假设,称为 归纳偏置 (Inductive Bias)。

归纳 (Induction) 是自然科学中常用的两大方法之一 (归纳与演绎,Induction & Deduction),指从一些例子中寻找共性、泛化,形成一个较通用的规则的过程。偏置 (Bias) 则是指对模型的偏好。

通俗理解:归纳偏置可以理解为,从现实生活中观察到的现象中归纳出一定的规则 (heuristics),然后对模型做一定的约束,从而可以起到 “模型选择” 的作用,类似贝叶斯学习中的 “先验”。

例如,深度神经网络 就偏好性地认为,层次化处理信息有更好效果;卷积神经网络 认为信息具有空间局部性 (Locality),可用滑动卷积共享权重的方式降低参数空间;循环神经网络 则将时序信息考虑进来,强调顺序重要性;图网络 则认为中心节点与邻居节点的相似性会更好引导信息流动。

事实上,将 Inductive Bias 翻译成 归纳性偏好 可能更符合我们的理解和认知。

归纳偏置其实就是一种先验知识,一种提前做好的假设。

在CNN中的归纳偏置一般包括两类:①locality(局部性)和②translation equivariance(平移等变性)

①  locality:假设相同的区域会有相同的特征,靠得越近的东西相关性能也就越强。局部性可以控制模型的复杂度。

②translation equivariance:由于卷积核是一样的所以不管图片中的物体移动到哪里,只要是同样的输入进来遇到同样的卷积核,那么输出就是一样的。利用平移等变形可以很好的提高模型的泛化能力。

总结:但是使用基于CNN的方法还是存在感受野有限的问题,不能很好的建模长远的依赖关系(全局信息),而基于transformer的方法可以很好的建模全局信息但是transformer反而缺乏类似于CNN的归纳偏置,这些先验信息必须通过大量的数据来进行学习,所以小的数据在CNN上取得的效果一般优于基于transformer的方法。训练基于CNN的方法通常只需要一个较小的数据集,而训练基于transformer的方法一般需要再大的数据集上进行预训练。

转如下:

归纳偏置 (Inductive Bias) - 知乎

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