最近看了一阵吴恩达的关于机器学习的视频。
https://www.youtube.com/playlist?list=PL0Smm0jPm9WcCsYvbhPCdizqNKps69W4Z
对我这种数据不太好的同学也算是比较容易懂和入门的,因为即使是基础概念,也是讲得很清楚了。
首刷一遍并没有做相对应的题目,因为想先从整体上感觉下到底包含多少内容在里面。后面再刷一遍的时候,最好能通过做题来检测自己的理解程度。
现在看到一半。觉得还是不能偷懒,要记写笔记,方便回顾和总结。
在前面一节,介绍了high bias problem和high varience problem,那么learning curve其实就是一种工具,来诊断算法是否存在这两类问题,也就是是否是欠拟合或者过拟合。
对一个二次函数来说,当进入训练的数据集很小时,模型的误差基本是0的,即使加上了regularization,误差也只会略大于0.
- 训练集越小,训练误差越小,交叉验证误差越大
- 训练集越大,训练误差越大,交叉验证误差越小
假设模型存在high bias问题:
- 训练误差很快上升
- 训练误差和交叉验证误差基本达到一致
- 随着m的增加,误差不会下降(增加训练样本不会有什么作用)
假设模型存在high varience问题:
- 训练误差缓慢下架
- 训练误差和交叉验证误差之间会有一定gap,跟high bias不宜硬,high bias是很快两种误差接近
- 这种情况下,增加训练集会有一定的帮助,随着训练样本的增加,训练误差会增加,交叉验证误差会下降,gap会变小