【The VC Dimension】林轩田机器学习基石
首先回顾上节课末尾引出来的VC Bound概念,对于机器学习来说,VC dimension理论到底有啥用。

三点:
1. 如果有Break Point证明是一个好的假设集合
2. 如果N足够大,那么Ein跟Eout的表现会比较接近
3. 如果算法A选的g足够好(Ein很小),则可能从数据中学到了东西
==================================================
现在正式引出VC Dimension的概念:啥叫VC Dimension:

VC Dimension是针对某个假设集合的一个性质。简言之,就是Break Point - 1的那个值的正式说法。如果没有Break Point,则VC Dimension是无限。
因此,VC Dimension有限被认为是好的。
为啥是好的呢?回顾之前几节的内容,有如下的结论证明VC Dimension有限是好的(样本充足情况下,可以保证Eout跟Ein接近)

马上举一个例子,证明VC Dimension的用处:

对于2D PLA来说:
1. 如果是linear separable D , 则迭代次数足够,一定可以得到Ein(out)是0 (从训练集学到了东西)
2. 二维平面上 binary classification的VC Dimension是3,因此N足够大时候,Ein与Eout很接近(训练集的学习效果可以迁移到测试集)
端午放假出去散心。。。回来接着写。。。。
=======================================================================
在分析了1D perceptron和2D perceptron之后,猜测是否d-D perceptron的VC Dimension是d+1维呢?(这个猜测是可以证明成立的)
需要证明如下的式子:

先从第一个开始:
需要证明N=d+1时,某些情况下是可以shatter的即可。课件中举了这个例子:

举了这个例子,因为矩阵X是可逆的,不管Y的d+1维分量怎么取值(取0或1)组合,都可以求出来这样一个W。所以,证明了有些情况下d+1个inputs是可以被shatter的。
到这里,对可逆是咋回事已经要忘记了。
翻了翻课件(矩阵分析课程的):

那么林的课件中的矩阵是依据啥构造出来的呢?我觉得是依据“A的行/列线性无关”这一条等价的性质构造出来的。
线性相关、无关是啥啊?
再翻一翻课件:

跟记忆中的差不多。
矩阵各种性质和运算操作太重要了,但是不想打断林这个课程的学习。搜到一个Brown大学的矩阵程序开发课程https://www.coursera.org/course/matrix,用python编写矩阵的各种操作,后续一定补上。
再证明后半部分:

1. 如果输入是d+2维的,那么一定可以构造出来第d+2个行向量是1~d+1个行向量的线性表示
2. 这时,如果WTX1~WTXd+1与其前面的系数a1~ad+1同号,则等式一定是大于零的;
3. 因此这个时候Yd+2就一定得是1,不可能取到0;也就是说,当Y1~Yd+1的取值跟a1~ad+1同号的情况下,Yd+2符号是定死的,所以Yd+2取不全01,因此无法shatter
下面看了DC Dimension的physical intuition
"effective binary" degree of freedom

可以粗略地理解为:free parameters
更深入了解一下VC Dimension的意义,主要从VC Bound入手。
可以集成到下面几张PPT中:
1. VC Bound是对模型复杂度的一个惩罚项

2. 可以根据VC Dimension来确定需要多大的样本量(实际经验一般是10倍的OK的)

3. VC Bound虽然是个非常宽松的Bound,但是却是一个通用性很强的Bound.

【The VC Dimension】林轩田机器学习基石的更多相关文章
- (转载)林轩田机器学习基石课程学习笔记1 — The Learning Problem
(转载)林轩田机器学习基石课程学习笔记1 - The Learning Problem When Can Machine Learn? Why Can Machine Learn? How Can M ...
- 【Theory of Generalization】林轩田机器学习基石
紧接上一讲的Break Point of H.有一个非常intuition的结论,如果break point在k取到了,那么k+1, k+2,... 都是break point. 那么除此之外,我们还 ...
- 【Hazard of Overfitting】林轩田机器学习基石
首先明确了什么是Overfitting 随后,用开车的例子给出了Overfitting的出现原因 出现原因有三个: (1)dvc太高,模型过于复杂(开车开太快) (2)data中噪声太大(路面太颠簸) ...
- 【Linear Regression】林轩田机器学习基石
这一节开始讲基础的Linear Regression算法. (1)Linear Regression的假设空间变成了实数域 (2)Linear Regression的目标是找到使得残差更小的分割线(超 ...
- 【 Logistic Regression 】林轩田机器学习基石
这里提出Logistic Regression的角度是Soft Binary Classification.输出限定在0~1之间,用于表示可能发生positive的概率. 具体的做法是在Linear ...
- 【Training versus Testing】林轩田机器学习基石
接着上一讲留下的关子,机器学习是否可行与假设集合H的数量M的关系. 机器学习是否可行的两个关键点: 1. Ein(g)是否足够小(在训练集上的表现是否出色) 2. Eout(g)是否与Ein(g)足够 ...
- 【Feasibility of Learning】林轩田机器学习基石
这一节的核心内容在于如何由hoeffding不等式 关联到机器学习的可行性. 这个PAC很形象又准确,描述了“当前的可能性大概是正确的”,即某个概率的上届. hoeffding在机器学习上的关联就是: ...
- 【Perceptron Learning Algorithm】林轩田机器学习基石
直接跳过第一讲.从第二讲Perceptron开始,记录这一讲中几个印象深的点: 1. 之前自己的直觉一直对这种图理解的不好,老按照x.y去理解. a) 这种图的每个坐标代表的是features:fea ...
- 林轩田机器学习基石课程学习笔记5 — Training versus Testing
上节课,我们主要介绍了机器学习的可行性.首先,由NFL定理可知,机器学习貌似是不可行的.但是,随后引入了统计学知识,如果样本数据足够大,且hypothesis个数有限,那么机器学习一般就是可行的.本节 ...
随机推荐
- 1 - python3基础语法
编码 默认情况下,Python 3 源码文件以 UTF-8 编码.当然你也可以为源码文件指定不同的编码: # _*_ coding:utf-8 _*_ 保留字 Python的标准库提供了一个keywo ...
- UOJ #207. 共价大爷游长沙
#207. 共价大爷游长沙 链接:http://uoj.ac/problem/207 题意:给一棵树,要求支持加边.删边.询问一条边是否被所有路径覆盖.同时路径端点集合有加入与删除操作. 想法: 考虑 ...
- Xapian简明教程(未完成)
第一章 简介 1.1 简介 Xapian是一个开源的搜索引擎库,它可以让开发者自定义的开发一些高级的的索引和查找因素应用在他们的应用中. 通过阅读这篇文档,希望可以帮助你创建第一个你的索引数据库和了解 ...
- 机器学习实战之Logistic回归
Logistic回归一.概述 1. Logistic Regression 1.1 线性回归 1.2 Sigmoid函数 1.3 逻辑回归 1.4 LR 与线性回归的区别 2. LR的损失函数 3. ...
- .net 开源的网站
https://www.zhihu.com/question/24408855 https://www.zhihu.com/question/19840134 这两个知乎的答案 介绍部分经典的.net ...
- PHP调试小错误汇总
1.中文显示乱码 解决:加上header('Content-type:text'); 2.Unable to find the wrapper "https 解决:到php.ini中把ext ...
- ReactiveCocoa实战: 模仿 "花瓣",重写 LeanCloud Rest Api的iOS REST Client.
这一次我们将要讨论的是移动开发中比较重要的一环--网络请求的封装.鉴于个人经验有限,本文将在一定程度上参考 基于AFNetworking2.0和ReactiveCocoa2.1的iOS REST Cl ...
- JavaScript的算术、赋值、关系运算符的讲解
JS中的运算符分为:算术/赋值/关系/逻辑/字符串 算术运算符: +加法 -减法 *乘法 /除法 %取余 var a = 1, b = 2; a + b = 3 ...
- POJ2409 Let it Bead(Polya定理)
Let it Bead Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 6443 Accepted: 4315 Descr ...
- Docker自学纪实(六)搭建docker私有仓库
docker的镜像仓库分两种:一种是从官方公有仓库拉取:还有就是自己搭建私有仓库.官方的镜像仓库是面对整个应用市场的:私有仓库一般用于公司内部,就是公司项目自身所需的镜像.搭建私有仓库有什么好处?私有 ...