一些表述

“归纳偏差”中的“偏差”容易让人想到数据估计中估计值与真实值的差别error,会让人认为“归纳偏差”是某种需要被规避的错误、误差,但事实并非如此,inductive bias在机器学习中起到的是积极作用。

更合适的翻译应该是“归纳偏置”:归纳是自然科学中常用的两大方法(归纳与演绎,induction and deduction)之一,指的是从一些例子中寻找共性、泛化,形成一个比较通用的规则的过程;而“bias”“偏置”是指我们对模型的偏好。因此归纳偏置可以理解为,从现实生活中观察到的现象中归纳出一定的规则,然后对模型做一定的约束,从而可以起到“模型选择”的作用,即从假设空间中选择出更符合现实规则的模型。类似贝叶斯学习中的“先验,prior”,但与“先验”不同的是,“先验”一般是确定性的已知、知识,而“偏置”更倾向于是一种经验性的假设。

归纳偏置在机器学习中几乎无处不在。具体的例子可以参考文末资料,笔者说一下自己想到的一个简单例子。

比如,我们考虑一组(0,0)(1,1)…(i,i)…(n,n)的点,当我们要学习一个模型来模拟x到y的映射时,我们最希望的是模型学习到y=x这个线性映射,可实际上符合这些样本点的映射有无穷多种,如果我们在非线性映射空间进行学习的话,学习过程就会十分复杂,因此我们在某些情况下就会做出“我们假定这是一个线性映射”这样的假设,之后在此假设的基础上对模型进行学习,这里的“我们假定这是一个线性映射”就是基于先验知识等所作出的归纳偏置;而当我们在线性映射空间进行学习时,也有可能得到无限种映射,此时我们会根据奥卡姆剃刀原则选择“尽可能简单的模型”。奥卡姆剃刀是机器学习中最典型的一种归纳偏置。

作用: 机器学习中的归纳偏置可以提高模型的泛化性。例如在上文的例子中,如果我们在采样中遇到了噪音(0,10),(7,-20)…,等就很可能会使得对泛化性更强的映射y=x学习的失败,从而学习到一个“过拟合”的模型,而在我们加入“线性映射”、“奥卡姆剃刀”等归纳偏置后,就会更容易学习到在目标域更具有泛化性、通用性的映射y=x(模型)

总结: inductive bias更合适的翻译是归纳偏置而非归纳偏差,它是一种在模型的无限解空间中所引入的合理假设与约束,这类假设、约束能够缩小求解空间并提高所得模型在目标域的泛化性。

【知识点笔记】归纳偏置/归纳偏差/inductive bias

归纳偏置在机器学习中是一种很微妙的概念:在机器学习中,很多学习算法经常会对学习的问题做一些假设,这些假设就称为归纳偏置(Inductive Bias)。归纳偏置这个译名可能不能很好地帮助理解,不妨拆解开来看:归纳(Induction)是自然科学中常用的两大方法之一(归纳与演绎, induction and deduction),指的是从一些例子中寻找共性、泛化,形成一个比较通用的规则的过程;偏置(Bias)是指我们对模型的偏好。 因此,归纳偏置可以理解为,从现实生活中观察到的现象中归纳出一定的规则(heuristics),然后对模型做一定的约束,从而可以起到“模型选择”的作用,即从假设空间中选择出更符合现实规则的模型。其实,贝叶斯学习中的“先验(Prior)”这个叫法,可能比“归纳偏置”更直观一些。 归纳偏置在机器学习中几乎无处不可见。老生常谈的“奥卡姆剃刀”原理,即希望学习到的模型复杂度更低,就是一种归纳偏置。另外,还可以看见一些更强的一些假设:KNN中假设特征空间中相邻的样本倾向于属于同一类;SVM中假设好的分类器应该最大化类别边界距离;等等。

CNN的inductive bias应该是locality和spatial invariance,即空间相近的grid elements有联系而远的没有,和空间不变性(kernel权重共享) RNN的inductive bias是sequentiality和time invariance,即序列顺序上的timesteps有联系,和时间变换的不变性(rnn权重共享)

如何理解Inductive bias?

  • 在贝叶斯模型中,归纳偏置通常通过先验分布的选择和参数化来表示
  • 在其他情况下,归纳偏置可能是为避免过度拟合而添加的正则化项

【重磅综述】Relational Inductive bias 关系归纳偏置及其在深度/强化学习中的应用

种类

百度百科——归纳偏置

  • 最大条件独立性(conditional independence):如果假说能转成贝叶斯模型架构,则试着使用最大化条件独立性。这是用于朴素贝叶斯分类器(Naive Bayes classifier)的偏置。
  • 最小交叉验证误差:当试图在假说中做选择时,挑选那个具有最低交叉验证误差的假说,虽然交叉验证看起来可能无关偏置,但天下没有免费的午餐理论显示交叉验证已是偏置的。
  • 最大边界:当要在两个类别间画一道分界线时,试图去最大化边界的宽度。这是用于支持向量机的偏置,它假设不同的类别是由宽界线来区分。
  • 最小描述长度(Minimum description length):当构成一个假设时,试图去最小化其假设的描述长度。假设越简单,越可能为真的。见奥卡姆剃刀。
  • 最少特征数(Minimum features):除非有充分的证据显示一个特征是有效用的,否则它应当被删除。这是特征选择(feature selection)算法背后所使用的假设。
  • 最近邻居:假设在特征空间(feature space)中一小区域内大部分的样本是同属一类。给一个未知类别的样本,猜测它与它最紧接的大部分邻居是同属一类。这是用于最近邻居法的偏置。这个假设是相近的样本应倾向同属于一类别。

常见算法的归纳偏好

机器学习中的Inductive Bias

  • Linear Regression:The relationship between the attributes x and the output y is linear. The goal is to minimize the sum of squared errors.

属性x和输出y之间的关系是线性的。目标是使误差平方和最小化。

  • Single-Unit Perceptron:Each input votes independently toward the final classification (interactions between inputs are not possible).

每个输入对最终分类独立投票(输入之间的交互是不可能的)。

  • Neural Networks with Backpropagation:Smooth interpolation between data points.

数据点之间的平滑插值。

  • K-Nearest Neighbors:The classification of an instance x will be most similar to the classification of other instances that are nearby in Euclidean distance.

    实例x的分类与在欧氏距离附近的其他实例的分类最相似

  • Support Vector Machines:Distinct classes tend to be separated by wide margins.

    不同的类别之间分布上往往有很大的差距。

  • Naive Bayes:Each input depends only on the output class or label; the inputs are independent from each other.

每个输入只依赖于输出类或标签;输入是相互独立的。

参考