1.4 归纳偏好

 


🌱《1.4 归纳偏好》:为什么“简单”的模型更值得信赖?

在我们学习机器学习时,总会遇到一个经典困惑:

“为什么同样的训练数据,不同算法学出的模型居然不一样?”

这就引出了本节的关键概念——归纳偏好(Inductive Bias)。它不仅关系到模型的选择和效果,更是我们深入理解学习算法“性格”的一把钥匙。


🍉 西瓜模型与归纳偏好初探

先从一个直观例子说起——西瓜分类。

训练集告诉我们哪些瓜是好瓜,但当遇到一个新样本(比如:色泽=青绿,根蒂=蜷缩,敲声=沉闷),就会出现分歧:

  • 模型A说:只要“根蒂=蜷缩”就行,判断为好瓜;

  • 模型B说:不仅“根蒂=蜷缩”,还得“敲声=沉闷”,才是好瓜;

  • 模型C则更严格:还要求“敲声=浊响”才符合好瓜标准。

这三种模型在训练集上的表现完全一致,但对新样本的判断却天差地别。那么,哪一个模型才是“更优”的呢?

这时,我们就不能仅靠数据,还要依赖算法对假设的偏好——这就是归纳偏好。


🤖 什么是归纳偏好?

归纳偏好指的是:算法在面对多个与训练数据一致的模型时,它更偏向选择哪类模型的“倾向性”。

它是算法内在的一种“价值观”或“选择偏好”。

比如:

  • 有的算法偏爱“特殊规则”(尽可能详细、具体);

  • 有的算法偏爱“通用规则”(更具概括性);

  • 有的算法偏爱“结构简单”的模型。

这就像人做决策时会凭经验、直觉、信念做判断一样,算法也需要“倾向”去打破等价模型的僵局。

没有归纳偏好的算法会怎样?它在训练集等价的多个模型之间犹豫不决,每次都随机选一个,那预测结果就毫无稳定性、也没有意义。


✂️ 奥卡姆剃刀:简单之美

在机器学习中,一个最常被采纳的偏好原则是:

奥卡姆剃刀原则(Occam's Razor):“在所有能解释数据的假设中,选择最简单的那个。”

比如回归问题中,假设我们要找到一条曲线拟合图中样本点:

  • 曲线A平滑简洁;

  • 曲线B虽然也拟合了样本点,但弯弯绕绕、复杂得多。

在图 1.3 中,这两个曲线都能通过训练数据,但我们通常更信任曲线A,因为它“更简单、更自然”。

这也是算法的一种归纳偏好:选择结构更简单、规则更清晰的模型,认为它更有泛化能力。


📉 但现实有“反例”:没有免费的午餐!

你可能会说,那我以后都选简单模型不就好了?但等等,这时候就要提到另一个著名定理:

没有免费的午餐定理(No Free Lunch Theorem, NFL)

它告诉我们:

在所有可能的问题中,任何两个学习算法的平均性能是一样的。

换句话说,如果你不知道你面临的是什么问题,那所有算法都差不多,甚至“随机猜”也不会比“高智商算法”差。

图 1.4(b) 就展示了这样一种情况:虽然曲线A在训练集上表现很好,但测试集上反而曲线B更准确。也就是说,你偏好的模型,并不一定总是对的


⚖️ 决定性因素:归纳偏好是否与问题匹配

那是不是归纳偏好就没用了?不是!

NFL定理背后的前提是——所有问题都是“等概率”的,但现实并不是这样:

  • 实际应用中,我们只关注一类问题;

  • 比如西瓜分类问题中,某些属性(如“根蒂=蜷缩”)更常见;

  • 而另一些情况(如“根蒂=硬挺 且 敲声=清脆”)几乎不会出现。

所以,如果你的算法偏好“根蒂=蜷缩”,它就比喜欢“根蒂=硬挺”的算法表现更好!

结论是:归纳偏好并不是错,而是“必须有”!但它能否奏效,取决于是否与你的问题匹配。


✅ 总结:归纳偏好就是算法的“性格”

我们可以这样理解归纳偏好:

类比对象对应概念
人的信念/价值观归纳偏好
不同性格的人不同算法
相同的经历(训练数据)不同的选择(模型)

归纳偏好告诉我们:

  • 为什么学习算法必须做出选择;

  • 为什么“简单”模型常被偏好;

  • 为什么不能脱离具体任务谈算法优劣;

  • 为什么 NFL 定理看似“打击人”,实则是“点醒人”——不要空谈模型优劣,而要看具体任务。


🤔 思考题

  1. 你在学习中遇到过“多个模型都看起来合理”的情况吗?你是怎么选择的?

  2. 你更偏好“复杂但细致”的模型,还是“简单但概括”的模型?为什么?

  3. 如果你是一种算法,你希望自己的归纳偏好是怎样的?


如果你觉得这篇文章对你有启发,欢迎点赞、收藏、关注我的博客专栏《机器学习导论》📘!
下一节,我们将从数学角度推导归纳偏好与期望误差之间的关系,敬请期待!


📘《1.4 归纳偏好(下)》:从数学公式理解“没有免费的午餐”

在上一篇中,我们了解了“归纳偏好”的直觉含义和它在模型选择中的关键作用。但如果你像我一样,想更深入地理解它在数学上是如何体现的,那就让我们从公式出发,看一看“归纳偏好”的数学根源,并最终导出著名的——

没有免费的午餐定理(No Free Lunch Theorem)


📌 1. 学习算法的误差分析框架

设我们有:

  • 一个输入空间 $\mathcal{X}$(比如所有可能的瓜)

  • 一个假设空间 $\mathcal{H}$(所有模型)

  • 一个真实目标函数 $f$(我们想学的“真理”)

  • 一个学习算法 $\mathcal{A}$(根据训练集 $X$ 得到假设 $h$)

那么,对于某个测试样本 $x$,如果学习算法在 $x$ 上预测错了,也就是 $h(x) \ne f(x)$,我们说它在该点上犯了错误。

对所有测试样本 $x \notin X$ 的总误差为:

其中:

  • $P(h|X, \mathcal{A})$ 是算法 $\mathcal{A}$ 在训练集 $X$ 下产生假设 $h$ 的概率

  • $\mathbb{I}(\cdot)$ 是指示函数,条件为真时取 1,否则取 0


🧮 2. 推导:对所有目标函数 $f$ 的平均误差

我们考虑最极端的情况:目标函数 $f$ 可以是任何 $f: \mathcal{X} \to {0,1}$,也就是说我们不对“世界规律”做任何假设(这是 NFL 的前提)。

于是我们对所有可能的 $f$ 取均匀平均,即每个 $f$ 发生的概率相等。此时,对算法 $\mathcal{A}$ 在所有目标函数下的平均测试误差为:

将求和顺序调换,可得:

考虑分类问题,$f(x)$ 可以为 0 或 1,那么 $\sum_f \mathbb{I}(h(x) \ne f(x)) = 2^{|\mathcal{X}| - 1}$,因为一半的函数 $f$ 在 $x$ 上与 $h$ 不一致。

所以最终推导得到:

这个结果不依赖于具体的算法 $\mathcal{A}$,说明了一个令人惊讶的事实:

所有算法的平均误差相同!


🧊 3. 没有免费的午餐定理(NFL)的结论

公式 (1.3) 概括为:

无论你的算法多聪明(如深度学习、迁移学习),或者多笨拙(比如随机猜测),在所有可能的问题平均下来,它们的期望误差是一样的。

这就是:

⚠️ 没有免费的午餐定理:No Free Lunch Theorem
— 若对所有可能问题一视同仁,则没有哪种学习算法是“更好”的。


🧠 那我们为什么还在研究学习算法?

因为,现实世界远非“所有问题等可能”!

我们只关注自己面临的具体问题,比如:

  • 西瓜熟不熟

  • 图像中是否有人

  • 用户喜不喜欢这部电影

这些问题在现实中有明确结构、规律,世界不是“混乱的”。所以:

如果你的归纳偏好与问题匹配,那么你可以比别人做得更好。

比如西瓜问题:

  • 如果我们知道“根蒂=蜷缩”的瓜通常是好瓜,那偏好这类特征的算法显然更有效;

  • 而偏好“根蒂=硬挺”且“敲声=清脆”的假设可能根本就找不到合适样本。


✅ 总结:有偏才有优势

  • 没有“万能算法”,但在特定任务中,合适的归纳偏好可以脱颖而出;

  • NFL 告诉我们别追求“通用最优”,而要关注特定问题下的“局部最优”;

  • 所以,研究算法的意义在于:找到最适合特定问题的那一个偏好与结构。

正如一句话所说:“并不是世界没有模式,而是你选错了模型。”


如果你看懂了这一节,恭喜你!你不仅理解了机器学习的数学基础,还获得了判断“什么算法更适合什么任务”的能力!
下一节,我们将进入“经验误差与结构风险最小化”,也就是理解为什么深度学习这么强大的理论基础——敬请期待!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夏驰和徐策

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值