正则化的提出,是因为要解决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. CRUD全栈式编程架构总结

    这里放出实例代码 github.com/SkyvenXiong/HCC

  2. lambda Expression的使用方法

    Expression<Func<your class, bool>> whereExp = f => true;//类似1=1,初始化条件 if (!string.IsN ...

  3. 解决robotframework安装时提示wxPython not found问题

    背景:想把现在pc的项目做成关键字的形式,可以让功能测试人员也参与到自动化测试中,于是就找到robotframework这个框架,试用下怎么样,在安装时就遇到很多问题,安装的帖子有很多,很详细,如:h ...

  4. 问题 C: B 统计程序设计基础课程学生的平均成绩

    题目描述 程序设计基础课程的学生成绩出来了,老师需要统计出学生个数和平均成绩.学生信息的输入如下: 学号(num)                     学生姓名(name)            ...

  5. 探索性数据分析EDA综述

    目录 1. 数据探索的步骤和准备 2. 缺失值处理 为什么需要处理缺失值 Why data has missing values? 缺失值处理的技术 3. 异常值检测和处理 What is an ou ...

  6. Scrivener 中文语言包

    Scrivener 中文语言包 随着OS X EI Capitan的发布,Scrivener 也升级到了2.7,程序没有大的变化,主要是为了兼容10.11并更新了图标. 原来的2.6的中文语言包无法在 ...

  7. 移动页面请使用CSS3动画

    说到动画,我们一般会使用jQuery 中的animate(); 在PC浏览器中,是很方便的,由于PC的高性能,这种不断修改DOM的做法确实不会出现太大的问题,但是在手机端就不同了. 手机上使用jQue ...

  8. 旧文备份:VC中嵌入NASM编写的汇编函数

    在公司开发的RT下没法使用C库,并且替代库函数没有几个,需要用到setjmp和longjmp函数,没办法,只能自己想办法了,上sourceforge淘换到一个小日本的工程,提供这两个函数的替代源码,名 ...

  9. 第一个AngularJS表达式实例

    <!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...

  10. matlab时间测试

    因为想把样本筛选一下,所以简单的分类器先跑了一下,没想到跑完分类器在对样本筛选时的时间大大超过了样本进分类器的时间,这个显然不能达到我要的节省时间目的.于是分析了一下matlab中各个环节的时间成本, ...