机器学习中的归纳偏置

机器学习中的归纳偏置

带着偏见看世界,否则你根本没有看待世界的方式。

本文主要参考整理自知乎问题:如何理解Inductive bias?

No-Free-Lunch(NLF)定理指出学习是不可能的,除非有先验知识。通常情况下,我们会猜测某个问题的解属于所有可能的目标函数的一个较小的类别中,比如对于下图中的一些点,我们很自然地会假设目标函数是一个线性函数,这种基于先验知识对目标的判断就是Inductive Bias归纳偏置。也就是说,归纳偏置所做的事情,就是将无限可能的目标函数约束在一个有限的假设类别中,这样,模型的学习才成为可能。

在这里插入图片描述

如果给出更加宽松的模型假设类别,也就是说使用更弱的归纳偏置,那我们可能得到的模型的范围就更大,就更有可能得到想要的模型。而损失由近似损失和估计损失组成,这样做虽然减少了近似损失,但会增大估计损失,模型将更难学习,也更容易过拟合。

归纳偏置这个直译名可能不能很好地帮助理解,不妨拆解开来看:归纳(Induction) 是自然科学中常用的两大方法之一(归纳与演绎, induction and deduction),指的是从一些例子中寻找共性、泛化,形成一个比较通用的规则的过程;偏置(Bias) 是指我们对模型的偏好,从所有可能的模型中,选出我们假设目标函数会属于的那一个小类。

因此,归纳偏置可以理解为,从现实生活中观察到的现象中归纳出一定的规则(heuristics),然后对模型做一定的约束,从而可以起到“模型选择”的作用,即从假设空间中选择出更符合现实规则的模型。其实,贝叶斯学习中的“先验(Prior)”这个叫法,可能比“归纳偏置”更直观一些。

归纳偏置在机器学习中几乎无处不可见。老生常谈的“奥卡姆剃刀”原理,即希望学习到的模型复杂度更低,就是一种归纳偏置。另外,还可以看见一些更强的一些假设:KNN中假设特征空间中相邻的样本倾向于属于同一类,SVM中假设好的分类器应该最大化类别边界距离,等等。

在深度学习方面也是一样。以神经网络为例,各式各样的网络结构/组件/机制往往就来源于归纳偏置。在卷积神经网络中,我们假设特征具有局部性(Locality)的特性,即当我们把相邻的一些特征放在一起,会更容易得到“解”;在循环神经网络中,我们假设每一时刻的计算依赖于历史计算结果;还有注意力机制,也是基于从人的直觉、生活经验归纳得到的规则。

  • CNN的inductive bias是局部性(locality)和空间不变性(spatial invariance),即空间相近的像素的联系较为密切而远的则相对疏远。空间不变性体现在卷积核权重共享,即一种模式在图像的任意位置都会被同样地检测到。比如一只猫不管在图像的中间还是左下角,都会被CNN判断出图像中有一只猫。

  • RNN的inductive bias是序列性(sequentiality)和时间不变性(time invariance),即序列顺序上的timesteps有联系,和时间变换的不变性(rnn权重共享)。

Ref

https://www.zhihu.com/question/264264203

https://blog.csdn.net/jayloncheng/article/details/80300724

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值