欠拟合和过拟合

问题

在上一节中,我们利用多项式回归获得更加准确的拟合曲线,实现了对训练数据更好的拟合。然而,我们也发现,过渡地对训练数据拟合也会丢失信息规律。首先,引出两个概念:

  • 欠拟合(underfitting):拟合程度不高,数据距离拟合曲线较远,如下左图所示。

  • 过拟合(overfitting):过度拟合,貌似拟合几乎每一个数据,但是丢失了信息规律,如下右图所示,房价随着房屋面积的增加反而降低了。

局部加权线性回归(LWR)

为了解决欠拟合和过拟合问题,引入了局部加权线性回归(Locally Weight Regression)。在一般的线性回归算法中,对于某个输入向量 xxx ,我们这样预测输出 yyy :

  1. 修正 θθθ 来最小化 ∑i(yi−θTx(i))2∑_i(y_i−θ^Tx^{(i)})^2∑i​(yi​−θTx(i))2
  2. 进行预测: θTxθ^TxθTx

而在 LWR 中:

  1. 修正 θθθ 来最小化 ∑iw(i)(yi−θTx(i))2∑_iw^{(i)}(y_i−θ^Tx^{(i)})^2∑i​w(i)(yi​−θTx(i))2
  2. 进行预测: θTxθ^TxθTx

在 LWR 中,我们对一个输入 xxx 进行预测时,赋予了 xxx 周围点不同的权值,距离 xxx 越近,权重越高。整个学习过程中误差将会取决于 xxx 周围的误差,而不是整体的误差,这也就是局部一词的由来。

通常, w(i)w^{(i)}w(i) 服从高斯分布,在 xxx 周围呈指数型衰减:
w(i)=e−(x(i)−x)22τ2w^{(i)}=e^{-\frac{(x^{(i)}-x)^2}{2τ^2}}w(i)=e−2τ2(x(i)−x)2​

其中, τττ 值越小,则靠近预测点的权重越大,而远离预测点的权重越小。

另外,LWR 属于非参数(non-parametric)学习算法,所谓的非参数学习算法指的是没有明确的参数(比如上述的 θθθ 取决于当前要预测的 xxx ),每进行一次预测,就需要重新进行训练。而一般的线性回归属于参数(parametric)学习算法,参数在训练后将不再改变。

LWR 补充自机器学习实战一书,后续章节中我们知道,更一般地,我们使用正规化来解决过拟合问题。

1.8 欠拟合和过拟合-机器学习笔记-斯坦福吴恩达教授相关推荐

  1. 4.4 机器学习系统设计--垃圾邮件分类-机器学习笔记-斯坦福吴恩达教授

    机器学习系统设计–垃圾邮件分类 假定我们现有一封邮件,其内容如下: From: cheapsales@buystufffromme.com To: ang@cs.stanford.edu Subjec ...

  2. 2.3 利用正规化解决过拟合问题-机器学习笔记-斯坦福吴恩达教授

    利用正规化解决过拟合问题 在之前的文章中,我们认识了过拟合问题,通常,我们有如下策略来解决过拟合问题: 减少特征数,显然这只是权宜之计,因为特征意味着信息,放弃特征也就等同于丢弃信息,要知道,特征的获 ...

  3. 5.5 SVM补充-机器学习笔记-斯坦福吴恩达教授

    SVM补充 决策边界 Coursera 上 ML 的课程对 SVM 介绍有限,参看了周志华教授的<机器学习>一书后,补充了当中对于 SVM 的介绍. 首先,我们考虑用更传统的权值定义式来描 ...

  4. 4.6 大数据集-机器学习笔记-斯坦福吴恩达教授

    大数据集 在机器学习领域,流传着这样一句话: It's not who has the best algorithm that wins. It's who has the most data. 所以 ...

  5. 4.3 偏差与方差-机器学习笔记-斯坦福吴恩达教授

    偏差与方差 在机器学习中,偏差(bias) 反映了模型无法描述数据规律,而 方差(variance) 反映了模型对训练集过度敏感,而丢失了数据规律,高偏差和高方差都会造成新数据到来时,模型给出错误的预 ...

  6. 5.4 SVM的使用建议-机器学习笔记-斯坦福吴恩达教授

    SVM的使用建议 使用流行库 作为当今最为流行的分类算法之一,SVM 已经拥有了不少优秀的实现库,如 libsvm 等,因此,我们不再需要自己手动实现 SVM(要知道,一个能用于生产环境的 SVM 模 ...

  7. 1.3 程序示例--梯度下降-机器学习笔记-斯坦福吴恩达教授

    回归模块 回归模块中提供了批量梯度下降和随机梯度下降两种学习策略来训练模型: # coding: utf-8 # linear_regression/regression.py import nump ...

  8. 8.4 有监督学习与异常检测-机器学习笔记-斯坦福吴恩达教授

    有监督学习与异常检测 很多人会认为异常检测非常类似于有监督学习,尤其是逻辑回归,但我们用一张表格来描述有监督学习与异常检测的区别: 有监督学习 异常检测 数据分布均匀 数据非常偏斜,异常样本数目远小于 ...

  9. 5.11 程序示例--垃圾邮件检测-机器学习笔记-斯坦福吴恩达教授

    程序示例–垃圾邮件检测 邮件内容的预处理 下面展示了一封常见的 email,邮件内容包含了一个 URL (http://www.rackspace.com/),一个邮箱地址(groupname-uns ...

最新文章

  1. 怎样在bug管理上节省时间
  2. mybatis出现 Parameter '__frch_excelModel_0' not found.
  3. java js 执行效率_JavaScript提高加载和执行效率的方法
  4. 瑞典卡罗林斯卡医学院博士后招聘,图像流行病学和深度学习领域
  5. SharedObject使用:在FluorineFx.net与Flex中使用共享对象维护在线用户列表实例
  6. JDK和CGLIB生成动态代理类的区别
  7. 【经验总结】js关闭当前页面/关闭当前窗口(兼容所有浏览器)
  8. rvm,ruby的安装
  9. 【概率论与数理统计】目录
  10. AutoCAD 经典
  11. profinet远程IO总线模块IP67防护等级的优势
  12. 联通光猫pt952g管理员密码获取 v1.0
  13. 豆瓣python-豆瓣+python
  14. 头条号项目玩法:中视频全方位教学
  15. 《大厂面试》面试官看了直呼想要的简历
  16. (转)TensorFlow--实现人脸识别实验精讲 (Face Recognition using Tensorflow)
  17. 脚手架的这个好搭档 今天要重点来介绍下!
  18. 【读书笔记】Python网络爬虫从入门到实践(第2版)-唐松,爬虫基础体系巩固和常见场景练习
  19. 【高精度定位】关于GPS、RTK、PPK三种定位技术的探讨
  20. p设计一个Person类,属性有姓名、年龄、性别,创建方法personInfo,打印输出这个人的信息;创建Student类,继承Person类,属性有学院college,班级Group,重写父类Per

热门文章

  1. ChromeDriver启动Chrome浏览器后,地址栏只显示data;——chromeDriver版本不对
  2. HDU4686 Arc of Dream —— 矩阵快速幂
  3. linux中ps命令
  4. 五大经常使用算法 之 动态规划法
  5. ubuntu java开发环境搭建(jdk+tomcat+eclipse)
  6. 内存动态分配之realloc(),malloc(),calloc()与new运算符
  7. Fedora 12 环境搭建
  8. UA MATH523A 实分析3 积分理论例题 一个测度与积分的综合计算题
  9. 一些jquery 常用实例图解
  10. windbg 脚本学习总结