正则化的提出,是因为要解决overfitting的问题。

以Linear Regression为例:低次多项式拟合的效果可能会好于高次多项式拟合的效果。

这里回顾上上节nonlinear transform的课件:

上面的内容说的是,多项式拟合这种的假设空间,是nested hypothesis;因此,能否想到用step back的方法(即,加一些constraints的方法把模型给退化回去呢?)

事实上,是可以通过加入constraint使得模型退化回去的;但是,再优化的过程中涉及到了“判断每个wq等于0的”问题,这种问题有点儿类似PLA的求解过程。

类比一下,这是一个NP-hard的问题,即不好求解。那么能不能换一种方式,让求解变得容易些呢?

让求解变得容易的方法是,改变约束条件。假设空间变成了regularized hypothesis Wreg。

上述内容,是通过几何角度分析:满足约束条件的最优解,Wreg应该与梯度的负方向一样。

这样optimal solution就可以求出来了;有个别名叫岭回归。

上述的过程,主要请出了前人的智慧“拉格朗日乘子”,目的是把有约束的优化问题转化为无约束的优化问题。

上面是用几何意义想出来的最有的Wreg,下面还原到初始的目标优化函数:

这里引出来了augmented error的概念;因为Ein是square的,W'W也是正的,所以lambda也是设成是正的(由于lambda是正的,因此在优化求解的时候,可以保证W'W不能太大)。用这个方法可以对模型复杂度进行惩罚,并且把有约束的问题转化为无约束的问题。

这里的关键在于如何选取lambda

lambda越大,倾向于w越短;这种方式可以平移到很多线性模型中(只要是square error的);由于这种regularization的作用是缩短W的长度,因此也叫weight-decay regularization。

接下来,从更一般的角度讲解了regularization

正则化分三种类型

(1)特殊目标驱动正则化:比如,缩减偶次项Wq²

(2)为了平滑( 尽量少够到一些stochastic/deterministic noise ):例如 L1 regularizer

(3)易于优化:如L2 regularizer

感觉这里对L1 L2 regularizer讲解的比较弱,搜了一篇日志(http://blog.csdn.net/zouxy09/article/details/24971995),对L1和L2 regularizer讲解的不错。

【Regularization】林轩田机器学习基石的更多相关文章

  1. (转载)林轩田机器学习基石课程学习笔记1 — The Learning Problem

    (转载)林轩田机器学习基石课程学习笔记1 - The Learning Problem When Can Machine Learn? Why Can Machine Learn? How Can M ...

  2. 【The VC Dimension】林轩田机器学习基石

    首先回顾上节课末尾引出来的VC Bound概念,对于机器学习来说,VC dimension理论到底有啥用. 三点: 1. 如果有Break Point证明是一个好的假设集合 2. 如果N足够大,那么E ...

  3. 【Hazard of Overfitting】林轩田机器学习基石

    首先明确了什么是Overfitting 随后,用开车的例子给出了Overfitting的出现原因 出现原因有三个: (1)dvc太高,模型过于复杂(开车开太快) (2)data中噪声太大(路面太颠簸) ...

  4. 【 Logistic Regression 】林轩田机器学习基石

    这里提出Logistic Regression的角度是Soft Binary Classification.输出限定在0~1之间,用于表示可能发生positive的概率. 具体的做法是在Linear ...

  5. 【Linear Regression】林轩田机器学习基石

    这一节开始讲基础的Linear Regression算法. (1)Linear Regression的假设空间变成了实数域 (2)Linear Regression的目标是找到使得残差更小的分割线(超 ...

  6. 【Theory of Generalization】林轩田机器学习基石

    紧接上一讲的Break Point of H.有一个非常intuition的结论,如果break point在k取到了,那么k+1, k+2,... 都是break point. 那么除此之外,我们还 ...

  7. 【Training versus Testing】林轩田机器学习基石

    接着上一讲留下的关子,机器学习是否可行与假设集合H的数量M的关系. 机器学习是否可行的两个关键点: 1. Ein(g)是否足够小(在训练集上的表现是否出色) 2. Eout(g)是否与Ein(g)足够 ...

  8. 【Feasibility of Learning】林轩田机器学习基石

    这一节的核心内容在于如何由hoeffding不等式 关联到机器学习的可行性. 这个PAC很形象又准确,描述了“当前的可能性大概是正确的”,即某个概率的上届. hoeffding在机器学习上的关联就是: ...

  9. 【Perceptron Learning Algorithm】林轩田机器学习基石

    直接跳过第一讲.从第二讲Perceptron开始,记录这一讲中几个印象深的点: 1. 之前自己的直觉一直对这种图理解的不好,老按照x.y去理解. a) 这种图的每个坐标代表的是features:fea ...

随机推荐

  1. jrtplib源码分析 第一篇 jthread的编译与分析

    第一篇 jthread的编译与分析 jrtplib代码依赖库jthread,因此先从jthread开始jrtplib的学习.首先从以下链接下载jthread的源代码http://research.ed ...

  2. HTC vive VR设备软硬件安装+运行unity开发的VR程序

    总结在HTC vive VR开发过程中的HTC vive的安装调试 1.首先确保电脑的配置满足要求: 进入官网,测试电脑是否满足要求 链接:https://www.vive.com/us/produc ...

  3. Jmeter入门7 测试中使用到的几个定时器和逻辑控制器

    1 测试中提交数据有延时1min,所以查询数据是否提交成功要设置定时器. 固定定时器页面:单位是毫秒 [dinghanhua] 2 集合点.Synchronizing Timer 集合点编辑:集合用户 ...

  4. git 分之合并和冲突解决

    Git 分支管理和冲突解决 创建分支 git branch 没有参数,显示本地版本库中所有的本地分支名称. 当前检出分支的前面会有星号. git branch newname 在当前检出分支上新建分支 ...

  5. Last_IO_Errno: 1062

    主键冲突的错误 1062   模拟错误:   在主库上操作: create table test100(id int not null,name varchar(20),primary key(id) ...

  6. POJ-2155 Matrix---二维树状数组+区域更新单点查询

    题目链接: https://vjudge.net/problem/POJ-2155 题目大意: 给一个n*n的01矩阵,然后有两种操作(m次)C x1 y1 x2 y2是把这个小矩形内所有数字异或一遍 ...

  7. DOM(三):querySelector和querySelectorAll

    querySelector()方法querySelector()方法接收一个css选择符,返回与该模式匹配的第一个元素,如果没有找到匹配的元素,返回null. //取得body元素 var body ...

  8. linux命令之grep命令

    grep(global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正 ...

  9. 2018.8.15 AOP面向切面编程简单理解

    在Filter过滤器中 拦截器 表面上看 -拦截器帮我们封装了很多功能 拦截器优秀的设计,可拔插设计 aop思想 在struts2中 归纳总结

  10. Chrome 调试工具的一些高阶功能

    Chrome 内置抓包工具 Block requests 截取长图 代码的覆盖率分析 Make site better Chrome 内置抓包工具 在浏览器地址栏输入chrome://net-inte ...