8.1 过拟合的问题

过拟合问题会导致线性回归和逻辑回归效果变差,那么过拟合到底是指什么意思呢?

一个回归问题的例子:

图一的线性回归模型,欠拟合;图三的逻辑回归模型虽然经过了所有的样本点,但是它预测新数据时却效果很差,因为它过于强调拟合原始数据。这种情况就叫做过拟合。可以看出,若给出一个新的值使之预测,它将表现的很差,是过拟合,虽然能非常好地适应我们的训练集但在新输入变量进行预测时可能会效果不好;而中间的模型最合适。

一个分类问题的例子:

的次数越高,拟合的效果越好,但预测效果越差。

如果发现了过拟合问题,应该如何处理?

  1. 丢弃一些不能帮助我们正确预测的特征。可以是手工选择保留哪些特征,或者使用一些模型选择的算法来帮忙(例如PCA
  2. 正则化。 保留所有的特征,但是减少参数的大小(magnitude)。

8.2 代价函数

在上一节的回归模型问题中,高次项导致了过拟合的产生,所以如果能让这些高次项的系数接近于0的话,就能很好的拟合了。

所以要做的就是在一定程度上减小这些参数的值,这就是正则化的基本方法。那么如何减小参数值呢?

就是在代价函数中引入惩罚。

假设有很多的特征,有很多的参数。一开始我们并不知道哪些参数需要惩罚,所以选择对所以的参数进行惩罚,让代价函数最优化的软件来选择惩罚的程度。这样的结果是得到了一个较为简单的能防止过拟合问题的假设:

,其中 称正则化参数

注:根据惯例,不对 进行惩罚。

经过正则化处理的模型与原模型的可能对比如下图所示:

如果选择的正则化参数 过大,则会把所有的参数都最小化了,导致模型变成 ,也就是上图中红色直线所示的情况,造成欠拟合。

增加 可以使 值减小的原因:因为最后要求代价函数的最小值,如果把 的值设置的比较大,那么为了使值最小,所有的参数都会相应变小,但若设置的过大,则会导致所有参数都趋向于0,导致变成一条直线。因此,对于正则化,要合理选择 的大小。

8.3 线性回归的正规化

线性回归的求解,前面推导了两种学习算法:一种基于梯度下降,一种基于正规方程。

正则化线性回归的代价函数为:

如果我们要使用梯度下降法令这个代价函数最小化,会是下面两种形式:

可以看出,正则化线性回归的梯度下降算法的变化在于,每次都在原有算法更新规则的基础上令 值减少了一个额外的值。

同样也可以利用正规方程来求解正则化线性回归模型,方法如下所示:

,图中的矩阵尺寸为 

8.4 正则化的逻辑回归模型

针对逻辑回归问题,用正则化来解决问题的代价函数为:

要最小化该代价函数,通过求导,得出梯度下降算法为:

虽然它们看起来和线性回归模型的梯度下降一样,但是 此处

吴恩达机器学习 -- 正则化相关推荐

  1. 吴恩达——机器学习(正则化Regularization)

    正则化 Regularization 1.过拟合 overfitting eg1:线性回归 图一:欠拟合,高偏差 图三:过拟合,高方差(一般在变量很多的时候发生,这种时候训练出的方程总能很好拟合训练数 ...

  2. 【CV】吴恩达机器学习课程笔记第10章

    本系列文章如果没有特殊说明,正文内容均解释的是文字上方的图片 机器学习 | Coursera 吴恩达机器学习系列课程_bilibili 目录 10 应用机器学习的建议 10-1 决定下一步做什么 10 ...

  3. 带你少走弯路:五篇文章学完吴恩达机器学习

    本文是吴恩达老师的机器学习课程[1]的笔记和代码复现部分,这门课是经典,没有之一.但是有个问题,就是内容较多,有些内容确实有点过时. 如何在最短时间学完这门课程?作为课程的主要翻译者和笔记作者,我推荐 ...

  4. python第六周实验_机器学习 | 吴恩达机器学习第六周编程作业(Python版)

    实验指导书    下载密码:ovyt 本篇博客主要讲解,吴恩达机器学习第六周的编程作业,作业内容主要是实现一个正则化的线性回归算法,涉及本周讲的模型选择问题,绘制学习曲线判断高偏差/高方差问题.原始实 ...

  5. 吴恩达机器学习笔记-应用机器学习的建议

    评估假设 我们之前已经学习过一些机器学习的算法,现在我们来谈谈如何评估算法学习得到的假设.当发现预测的结果和实际的数据有误差的时候,我们需要进行一些调整来保证预测的准确性,大部分情况下,有以下几种办法 ...

  6. 下载量过百万的吴恩达机器学习和深度学习笔记更新了!(附PDF下载)

    今天,我把吴恩达机器学习和深度学习课程笔记都更新了,并提供下载,这两本笔记非常适合机器学习和深度学习入门.(作者:黄海广) 0.导语 我和同学将吴恩达老师机器学习和深度学习课程笔记做成了打印版,放在g ...

  7. python分类预测降低准确率_python实现吴恩达机器学习练习3(多元分类器和神经网络)...

    Programming Exercise 3: Multi-class Classification and Neural Networks 吴恩达机器学习教程练习3,练习数据是5000个手写数字(0 ...

  8. 吴恩达|机器学习作业目录

    一个多月除了上课自习,就是在coursera和网易云课堂上学习吴恩达机器学习的课程,现在学完了,以下是一个多月来完成的作业目录,整理一下以便使用: 1.0 单变量线性回归 1.1 多变量线性回归 2. ...

  9. 吴恩达机器学习6——机器学习算法改进、系统设计

    吴恩达机器学习6 一.机器学习算法改进 1. 机器学习算法评价 1.1 评估模型 1.2 模型选择和交叉验证集 2. 偏差与方差 2.1 诊断偏差和方差 2.2 正则化和偏差/方差 2.3 学习曲线 ...

最新文章

  1. [译] PHP7 数组:HashTable
  2. 编写Java 制作留言板_JSP+Servlet+JavaBean制作简单留言板
  3. R语言应用实战-基于R的C4.5算法和C5.0算法原理解析及应用案例
  4. 18.fields_capabilities_api
  5. linux games账号,linux for games
  6. c语言的程序结构语序,第3章 C语序结构.doc
  7. 排序算法(3)----归并排序
  8. Mac中安装NetBeans方法
  9. java成员访问修饰符,如何使用java反射查找成员的访问修饰符
  10. Unity3D标准资源包下载与使用
  11. vs2019中git提交代码的步骤
  12. iOS开发工具,ios开发类库
  13. 一句话详解常见的心理学效应
  14. MongoDB入门+深入(二)--项目实战
  15. C语言复杂构造数据类型ppt,复杂构造数据类型.ppt
  16. xp系统从u盘启动计算机,U盘启动安装XP系统-从U盘启动给上网本安装XP
  17. 2022危险化学品经营单位安全管理人员考试练习题及在线模拟考试
  18. 解决win10系统下Elasticsearch闪退问题
  19. aws lambda_Google Cloud Run与AWS Lambda
  20. 整理:收集增强WiFi信号的10种方法

热门文章

  1. MFC六大核心机制之一:MFC程序的初始化
  2. 大侠稍等!URL 中为何出现奇怪的字符
  3. 在linux中解压.tgz
  4. 史上最难10道Java面试题!
  5. 周末随笔 | 问好一个问题,有的放矢
  6. 字节跳动---毕业旅行问题
  7. 单调栈之Next Greater Number
  8. 短视频内容理解与生成技术在美团的创新实践
  9. LiveVideoStack 2021招聘季
  10. 对话实录|华为云.通信云激活无限商业潜力