本章思路

根据之前的总结,如果M很大,那么无论假设泛化能力差的概率多小,都无法忽略,所以问题转化为证明M不大,然后上章将其转化为证明成长函数:mh(N)为多项式级别。直接证明似乎很困难,本章继续利用转化的思想,首先想想和mh(N)相关的因素可能有哪些?不难想到目前来看只有两个:

  • 假设的抽样数据集大小N;
  • break point k(这个变量确定了假设的类型);

那么,由此可以得到一个函数B,给定N和k可以确定该系列假设能够得到的最大的mh(N),那么新的目标便是证明B(N,k) <= Poly(N)。这便是本章的主要目标。

上图展示了不同N和k如何影响最终的growth function,表达了本章的重点是证明growth function是Poly的。

接着,问题可以进一步简化,上面我们知道growth function由N及H决定,而H又可以转为k,一个k决定了一类H,这样的抽象推导出了一个很重要的函数,这个函数的y是growth function,X则分别为N和k。

,它们的growth function即时一致的,换句话说,这个函数将H的本质通过k表达了出来。

原目标就继续转化为证明B(N,k)为poly。

证明的过程很巧妙,以B(4,3)为例子:

:找出B(4,3)和B(3,x)的关系,则可以得到一个递推式

,dichotomy如下:

是极限。

种dichotomy分组,目前分成两组,分别是orange和purple,orange的特点是,x1,x2和x3是一致的,x4不同并成对,例如1和5,2和8等,purple则是单一的,x1,x2,x3都不同。

个不同的vector并成为alpha,相应的purple为beta,那么B(4,3) = 2*alpha + beta,这个是直接转化。紧接着,由定义,B(4,3)是不能允许任意三点shatter的,所以由alpha和beta构成的所有B(4,3)的所有三点组合也不能shatter(alpha经过去重),即alpha + beta <= B(3,3)

最关键的来了,首先给出结论,alpha的vector不能在任意两点被shatter,为啥?反证法,假设可以,那么由于alpha对x4是成对出现的,所以把apha加上x4就能构成三个点的shatter,这个地方非常巧妙这也道出了之前这样分组的精髓,所以alpha <= B(3,2)。

由此得出B(4,3)和B(3,x)的关系。

步骤二:推导出一般式

有了前面一步的基础,后面的就很直接了。


展开可以,接着得出:

那么得出的结论就是:

上面明显是poly的,由此得出来我们梦寐已久的结果。

光有这个还不行,我们要带到下面的关键不等式中才能最终得出,选取最小Ein 假设是可以的忽略错误的,只要有breaking point存在于假设。

这里的证明我大致看了一下,对整体理解不是很大帮助,准备以后上完大部分课程后再看看。

总结:

本章的结论很明显,即时假设看起来是无穷的,只要存在breaking point,那么growth function便是多项式级别,假设的数量是限定的,我们只要保证Ein足够小,那么N大以及breaking point存在可以保证该假设具有较好的泛化性。

Coursera台大机器学习课程笔记5 -- Theory of Generalization的更多相关文章

  1. Coursera台大机器学习课程笔记4 -- Training versus Testing

     这节的主题感觉和training,testing关系不是很大,其根本线索在于铺垫并求解一个问题:    为什么算法PLA可以正确的work?因为前面的知识告诉我们,只有当假设的个数有限的时候,我们才 ...

  2. Coursera台大机器学习课程笔记3 – 机器学习的可能性

    提纲: 机器学习为什么可能? 引入计算橙球概率问题 通过用Hoeffding's inequality解决上面的问题,并得出PAC的概念,证明采样数据学习到的h的错误率可以和全局一致是PAC的 将得到 ...

  3. Coursera台大机器学习课程笔记15 -- Three Learning Principles

    这节课是最后一节,讲的是做机器学习的三个原则. 第一个是Occan's razor,即越简单越好.接着解释了什么是简单的hypothesis,什么是简单的model.关于为什么越简单越好,林老师从大致 ...

  4. Coursera台大机器学习课程笔记6 -- The VC Dimension

    本章的思路在于揭示VC Dimension的意义,简单来说就是假设的自由度,或者假设包含的feature vector的个数(一般情况下),同时进一步说明了Dvc和,Eout,Ein以及Model C ...

  5. Coursera台大机器学习课程笔记14 -- Validation

    这节课是接着上节的正则化课程的,目的也是为了防止overfitting. 第一小节讲了模型的选择,前面讲了很多模型,那么如何做出正确的选择呢?我们的目标是选择最小的Eout目标函数.首先应避免视觉化选 ...

  6. Coursera台大机器学习课程笔记8 -- Linear Regression

    之前一直在讲机器为什么能够学习,从这节课开始讲一些基本的机器学习算法,也就是机器如何学习. 这节课讲的是线性回归,从使Ein最小化出发来,介绍了 Hat Matrix,要理解其中的几何意义.最后对比了 ...

  7. Coursera台大机器学习课程笔记7 -- Noise and Error

    本章重点:  简单的论证了即使有Noise,机器依然可以学习,VC Dimension对泛化依然起作用:介绍了一些评价Model效果的Error Measurement方法. 一论证即使有Noisy, ...

  8. Coursera台大机器学习课程笔记13 -- Regularization

    这一节讲的是正则化,在优化中一直会用到正则化项,上课的时候老师一句话代过,没有作过多的解释.听完这节课后, 才明白好大学和野鸡大学的区别有多大.总之,这是很有收获的一节课. 首先介绍了为什么要正则化, ...

  9. Coursera台大机器学习课程笔记11 -- Nonlinear Transformation

    这一节讲的是如何将线性不可分的情况转为非线性可分以及转换的代价.特征转换是机器学习的重点. 最后得出重要的结论是,在做转换时,先从简单模型,再到复杂模型. 参考:http://www.cnblogs. ...

随机推荐

  1. 【BZOJ】3526: [Poi2014]Card

    题意 \(n(n \le 200000)\)张卡片,正反有两个数\(a[i], b[i]\).\(m(m \le 1000000)\)次操作,每次交换\(c[i].d[i]\)位置上的卡片.每一次操作 ...

  2. SqlServer禁用启用触发器、外键约束

    --禁用指定名称触发器 ALTER TABLE tbname DISABLE TRIGGER trigname --恢复指定名称触发器 ALTER TABLE tbname ENABLE TRIGGE ...

  3. java比较两个对象是否相等的方法

    java比较两个对象是否相等直接使用equals方法进行判断肯定是不会相同的. 例如: Person  person1  =new Person("张三"); Person  pe ...

  4. DOM相关属性,方法,兼容性问题处理小析

    DOM:Document Object Model文档对象模型,用于让程序(js)取操作页面中的元素.DOM节点类型有12种. (一)属性 一.子节点操作1.所有子节点(1)元素.childNodes ...

  5. Java技巧(代码简略)

    1.将数组循环显示 int[] num = new int[]{1,3,5,7,9}; int currentNum=0; num[++current%num.length];

  6. MySQL支持的数据类型(1)( 整数,小点,位)

      整数类型 字节 最小值 最大值 tinyint 1 有符号-128 无符号0 有符号127 无符号255 smallint 2 有符号-32768 无符号0 有符号32767 无符号65535 m ...

  7. html中meta的设置

    meta设置 <meta name="viewport" content="width=device-width, initial-scale=1.0, user- ...

  8. ueditor插件简单使用

    下载地址:http://ueditor.baidu.com/website/download.html 建议同时下载所需版本及完整源码.   [ 1.4.3 JSP + 完整源码src ] 简单配置说 ...

  9. C#中图片新增水印

    /// <summary> /// 在图片上生成图片水印 /// </summary> /// <param name="Path">原服务器图 ...

  10. ASP.NET Web Api

    1.参考资料 Routing in Asp.NET Web Api: http://www.asp.net/web-api/overview/web-api-routing-and-actions/r ...