机器学习基石-Three Learning Principles

Three Learning Principles

lecture15中我们主要介绍了validation来对抗可能发生的overfitting,我们的做法主要是从资料集D中流出部分数据来做(交叉)验证从而选择更好的model,然后本节课我们对前面学习的内容做一个总结并介绍三个机器学习的原则。

Occam’s Razor

相信大多数人都听过奥卡姆剃刀,它指的是我们在解释某些事物的时候应当剔除那些不必要的多余的解释,将这个理论运用到机器学习上,我们可以得到类似的结论:我们对资料最简单的解释也就是最好的解释,我们看下图的两个选择,相信大多数人都会选择左图的model因为他更简单更直观。

有了这个更简单的model的结论之后,我们需要思考什么样的model是简单的model呢?进一步为什么一个简单的model会比较好?

根据我们前面学习的内容,我们可以总结:1、简单的hypothesis,他指的是直观上更简单或者说这个h的参数个数比较少,2、简单的model H:VC dimension比较小,其中的hypothesis的个数比较小,成长函数长得比较慢。

需要说明的是两种简单的定义是有联系的,往往简单的model对应简单的h,所以我们对简单的定义可以理解成较小的hypothesis和较低的model complexity。

然后我们给出一个更直观的解释:我们想象我们使用一个简单的model(成长函数很小),然后我们今天随便丢一组资料(资料的规律性大概率随机),那么只有很小的几率model能找到一个很小的Ein,如果说某一组资料能分开那么这组资料的规律性应该表较强,这样的情况在我们使用很复杂的model的时候是不会发生的。

于是我们总结的第一条原则是:先尝试简单的线性模型,然后我们在选择模型时要考虑我们能想到的最简单的模型。

Sampling Bias

我们在机器学习中经常会遇到抽样偏差的问题,即我们的训练集和测试集没有来自同一个分布的问题,这样会导致我们最后的输出也会有偏差,这一块我们主要需要了解测试的需求分布,然后在训练集中做相关调整使得他尽量贴近测试集的分布。

Data Snooping

第三个原则是要避免“偷看资料”,一方面我们要尽量避免查看资料之后再决定选择某种方法,这样会加大model complexity,另一方面我们需要通过validation的方式来平衡。

Power of Three

可以说我们机器学习基石的课程都是以3的形式来组织的,首先我们介绍了三个相关的大领域:数据挖掘、人工智慧和统计分析;

然后,我们介绍了一个理论保证,主要是Hoeffding和VC理论;

然后我们接着有学习了三个线性模型:PLA/pocket、linear regression和logistic regression;

我们还学习了三个关键的工具:Feature Transform、Regularization和Validation;

最后是我们本节课介绍的三个原则:Occam’s Razer、Sampling Bias和Data Snooping。

然后我们展望未来的课程,未来课程的方向将是More Transform、More Regularization和Less Label。

本节课,我们主要学习机器学习的三个原则:首先是选择尽可能简单的model,其次尽量做到贴近测试的那个分布,最后是不要偷看资料。然后我们对机器学习基石课程做了一个总结,以3为标志词总结了学习的内容以及对未来的技法课程的展望。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180422G0RTC200?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券