过拟合(Overfitting)和正规化(Regularization)
- 过拟合:
Overfitting就是指Ein(在训练集上的错误率)变小,Eout(在整个数据集上的错误率)变大的过程
Underfitting是指Ein和Eout都变大的过程
从上边这个图中,虚线的左侧是underfitting,右侧是overfitting,发生overfitting的主要原因是:使用过于复杂的模型,数据噪音,有限的训练集
- 机器学习过程中的三个锦囊妙计
Occam's Razor:指的是对训练数据最简单的解释就是最好的,训练的模型可能越简单越好。
Sampling Bias:抽样是有偏差的,解决方案是:训练集合测试集来自于同一个部分。
Data Snooping:在实际操作时,如果做什么决定的时候尽量要避免用数据来做决定,要先把domain knoeledge变成feature放进去,而不是看完数据再放专业知识进去
- 正则化-Regularization
正则化公示的推到过程:
发生overfitting的一个重要原因是假设过于复杂,而我们需要的是一个稍微简单的模型来学习,避免overfitting,例如,原来假设空间是10次曲线,很容易对数据过拟合,我们希望的是他变的简单一点 比如w向量只保持三个分量,如下图
根据先前的知识,可知,H2包含于H10,可得如下公式:
即H2 是H10的一部分,并且是将w3... w10都设置为0,此时我们得到的是一个多项式,在这个多项式中,只有3个系数,此时达到了简化的目的,避免了过拟合的发生。下图是一个转化简图,这个时候只需要找到最优的H2即可。
通过上边的转化,我们已经达到了简化的目的,但是,上边只保留的了w0+w1*x+w2*x2这样的形式,接着对H2进行扩展使得,任意三项不为零即可。即约束条件变宽,
通过上述问题,最终的问题转化为求最优的H2'即可。但是这个问题是一个NP-hard问题,因此需要做进一步的转化,转化的条件是,使得||Wq||2小于一个常数C即可。即
此时需要找到一个正规化的假设的权重WREG:optimal solution from regularized hypothesis set H(c)
这个时候待解决的问题就转化为了求Ein的最小值,约束条件为每一个权重值都小于C
然后继续,转化为在下式的约束条件下,的最小值。
此时采用的是梯度下降法,如下图中,约束WTW<=C是一个圆形,即所取的w的取值都应该在圆内部以及圆的边上,而Wlin是要求的值,因此选择梯度法向量的反方向,即当梯度的反方向和w的方向平行时的W为所求的WREG
即到最后的约束变为:
接下来,对于所有的lamad>0,对Ein取微分,通过计算,即可得到WREG
还有另外一种方法,即对含有梯度的等式求积分,只要求积分的最小值即可,这个时候就是前文提到的正则化的公式。
过拟合(Overfitting)和正规化(Regularization)的更多相关文章
- 莫烦theano学习自修第九天【过拟合问题与正规化】
如下图所示(回归的过拟合问题):如果机器学习得到的回归为下图中的直线则是比较好的结果,但是如果进一步控制减少误差,导致机器学习到了下图中的曲线,则100%正确的学习了训练数据,看似较好,但是如果换成另 ...
- tensorflow学习4-过拟合-over-fitting
过拟合: 真实的应用中,并不是让模型尽量模拟训练数据的行为,而是希望训练数据对未知做出判断. 模型过于复杂后,模型会积极每一个噪声的部分,而不是学习数据中的通用 趋势.当一个模型的参数比训练数据还要多 ...
- 机器学习(四)正则化与过拟合问题 Regularization / The Problem of Overfitting
文章内容均来自斯坦福大学的Andrew Ng教授讲解的Machine Learning课程,本文是针对该课程的个人学习笔记,如有疏漏,请以原课程所讲述内容为准.感谢博主Rachel Zhang 的个人 ...
- 机器学习中模型泛化能力和过拟合现象(overfitting)的矛盾、以及其主要缓解方法正则化技术原理初探
1. 偏差与方差 - 机器学习算法泛化性能分析 在一个项目中,我们通过设计和训练得到了一个model,该model的泛化可能很好,也可能不尽如人意,其背后的决定因素是什么呢?或者说我们可以从哪些方面去 ...
- 吴恩达机器学习笔记19-过拟合的问题(The Problem of Overfitting)
到现在为止,我们已经学习了几种不同的学习算法,包括线性回归和逻辑回归,它们能够有效地解决许多问题,但是当将它们应用到某些特定的机器学习应用时,会遇到过拟合(over-fitting)的问题,可能会导致 ...
- Overfitting & Regularization
Overfitting & Regularization The Problem of overfitting A common issue in machine learning or ma ...
- Machine Learning - 第3周(Logistic Regression、Regularization)
Logistic regression is a method for classifying data into discrete outcomes. For example, we might u ...
- Overfitting&Underfitting Problems
这次根据结合Google的翻译果然速度快上许多,暂时休息,晚上在传一个exm2的随笔. 关于过度拟合下的问题 考虑从x∈R预测y的问题,下面的最左边的图显示了将\(y=\theta_0+\theta_ ...
- 斯坦福机器学习视频笔记 Week3 逻辑回归与正则化 Logistic Regression and Regularization
我们将讨论逻辑回归. 逻辑回归是一种将数据分类为离散结果的方法. 例如,我们可以使用逻辑回归将电子邮件分类为垃圾邮件或非垃圾邮件. 在本模块中,我们介绍分类的概念,逻辑回归的损失函数(cost fun ...
随机推荐
- 基于 Equinox 的 OSGi Console 的研究和探索
自定制 OSGi Console 进行组建和服务生命周期管理模块化编程的好处已经很好地被理解了约 40 年,但在 OSGi 之前,开发人员不得不自己发明模块化设计和系统.随着软件应用体系结构的不断发展 ...
- [Java] JSTL格式化时间计算时差
引入JSLT标签: <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> ...
- Java基础知识强化之IO流笔记75:NIO之 Scatter / Gather
1. Java NIO开始支持scatter/gather,scatter/gather用于描述从Channel(译者注:Channel在中文经常翻译为通道)中读取或者写入到Channel的操作. 分 ...
- C#中怎么在EXCEL中的单元格中画斜线啊 ??
Code Snippet 做法: 1,先添加引用COM,找 Excel 2,using Excel = Microsoft.Office.Interop.Excel; 3, 代码 private Ex ...
- web开发人员须知的web缓存知识–将数据缓存到浏览器端Net实现
现实中,服务器在向浏览器发送的数据中,一部分数据是不经常更新的,如果能将这部分数据缓存到浏览器端,将会大大降低传输的数据,提高应用的性能.通过Expires策略,可以使用HTTP 协议定义的缓存机制将 ...
- OC之Block的用法和实现委托
Block的基本概念 Block的基本用法 Block实现委托机制 一.Block的基本概念 Block是程序的代码块,这个代码块可以在需要的时候执行.IOS开发中,block到处可见,所以学好很重要 ...
- spring工作机制
Hibernate.struts,还差一个spring 就一起发出去.. spring工作机制及为什么要用? 1.springmvc请所有的请求都提交给DispatcherServlet,它会委托应用 ...
- Umbraco(6)-Creating More Pages Using the Master - Part 2(翻译文档)
创建一个Contact Us页面 我们将创建一个新的”联系我们“页面,在该页面我们将放置简单的联系信息.对于添加这个功能你可能想替换为一个完全成熟的形式. 一些有效的解决方案: 使用表面控制器构建自己 ...
- noi 97 积木游戏
思路:黑书的例题 #include<map> #include<set> #include<cmath> #include<queue> #includ ...
- Android 百度地图开发(一)--- 申请API Key和在项目中显示百度地图
标签: Android百度地图API Key 分类: Android 百度地图开发(2) 最近自己想研究下地图,本来想研究google Map,但是申请API key比较坑爹,于是从百度地 ...