600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > 机器学习开篇之没有午餐定理

机器学习开篇之没有午餐定理

时间:2020-09-01 12:23:36

相关推荐

机器学习开篇之没有午餐定理

当我们拿到数据之后,构建机器学习算法的第一步应当是:观察数据,总结规律。

目前由于大数据和深度学习的发展,很多人会认为,只要收集足够多的数据,从网上的开源算法模型中随便找一个,直接将数据丢到模型中去训练,就可以获得很好的结果。这样的观点在大多数情况下都是不正确的。我们需要对数据有一个感性的认识,如果我们对数据没有感性的认识,我们就很难设计出好的算法,也很难估计算法可能达到的性能极限。

对于不同的机器学习任务,我们怎么样去选择一个更好的机器学习算法呢?

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

1995年,Wolpert和Macerday提出了没有免费午餐定理。该定理的大致内容概括为:任何一个预测函数,如果在一些训练样本上表现好,那么必然在另一些训练样本上表现不好。如果不对数据在特征空间的先验分布有一定的假设,那么表现好与表现不好的情况一样多。因此,没有任何情况下都最好的机器学习算法。

通俗地说,没有免费午餐(No Free Lunch, NFL)定理证明了任何模型在所有问题上的性能都是相同的,其总误差和模型本身是没有关系的。也就是每种问题出现的概率是均等的,每个模型用于解决所有问题时,其平均意义上的性能是一样的。

所有模型在等概率出现的问题上都有同样的性能,这件事可以从两个角度来理解:

一是从模型的角度来看,如果单独拿出一个特定的模型来观察的话,这个模型必然会在解决某些问题时误差较小,而在解决另一些问题时误差较大

二是从问题的角度来看,如果单独拿出一个特定的问题来观察的话,必然有某些模型在解决这些问题时具有较高的精度,而另一些模型的精度就没那么理想了。

举个例子来说,如果把不同模型看成一个班级里的不同学生,不同问题看成考试时的不同科目,NFL 定理说的就是在这个班里,所有学生期末考试的总成绩都是一样的,既然总成绩一样,每一科的平均分自然也是一样的。这一方面说明了每个学生都有偏科,数学好的语文差,语文好的数学差,如果数学语文都好,那么英语肯定更差;另一方面也说明了每个科目的试题都有明显的区分度,数学有高分也有低分,语文有高分也有低分,不会出现哪一科上大家都是 90 分或者大家都是 30 分的情形。

NFL 定理最重要的指导意义在于先验知识的使用,也就是具体问题具体分析。机器学习的目标不是放之四海而皆准的通用模型,而是关于特定问题有针对性的解决方案。因此在模型的学习过程中,一定要关注问题本身的特点,也就是关于问题的先验知识。这就像学习数学有学习数学的方法,这套方法用来学习语文未必会有良好的效果,但它只要能够解决数学的问题就已经很有价值了。脱离问题的实际情况谈论模型优劣是没有意义的,只有让模型的特点和问题的特征相匹配,模型才能发挥最大的作用。

在周志华的《机器学习》也就是通常所说的西瓜书中有这样一个例子:

图中的黑点代表训练集。如果采用两种不同的算法,他们有着不同的归纳偏好,或者说训练策略,可能会训练出 A 和 B 两个模型(即假设),那么对于第一张图中的测试数据集(白点),显然 A 比 B 拟合得更好,即 A 的泛化能力更强;而对于第二张图则相反,B 在测试数据集上表现更出色。

即便左边的图中的数据点的平滑分布似乎是一个更”常见“,更”合理“的现实问题,但很遗憾这只是你的一厢情愿。从数学上讲左右两张图所描述的问题,它们的地位是一样的,出现的可能也是一样,并不存在谁比谁更常见更符合现实。

”没有免费的午餐“定理正是要告诉我们,没有什么算法是适用于所有的现实问题的,任何两个算法,以及它们训练出来的模型,在所有的现实问题的集合面前是无优劣的,它们的性能的数学期望值是一样的。对于不同的现实问题,要选择相应的算法来解决。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。