【林轩田】机器学习基石(五)——训练和测试

Lecture 5 Training versus Testing

ppt
video

5.1 Recap and Preview 回顾和预习

Recap

  1. 上节课我们讲到了,如果假设空间集是有限的,空间集大小设为 M M ;当训练样本数N足够大时;对于演算法 A A 选择的任何g,我们都可以认为 Eout(g)Ein(g) E o u t ( g ) ≃ E i n ( g )
  2. 如果在1的基础上,我们的演算法 A A 很幸运地找到一个假设函数g,使得 Ein(g)0 E i n ( g ) ≃ 0 , 我们就可以PAC(probably approximately correct)地说, Eout(g)0 E o u t ( g ) ≃ 0 , 也就是我们的学习是可行的。
  3. 51
    如图,在训练阶段,我们希望 Ein E i n 误差尽可能小;
    在测试阶段,我们希望 Eout E o u t 尽量等于 Ein E i n
    52
    前面四节课,
    第一节课简单介绍了机器学习,提出了机器学习的基本组件,这里机器学习的目标是使假设 g g 越来越接近目标f
    第二节课老师介绍了一种感知机演算法。这种方法给我们如何在数据 D D 中找到误差最小的g提供了一种思路。
    第三节课老师介绍了机器学习的不同分类。其中最常见的就是监督二元分类的成批学习,也是我们这段时间课程的学习类型。
    第四节课老师论证了机器学习的可行性。也就是说,在 M M 有限的情况下,我们可以PAC地说Eout(g)Eing)

所以,我们的学习可以分割成两个核心的问题

  1. 我们真的能确保 Eout(g) E o u t ( g ) 足够接近 Ein(g) E i n ( g ) 吗?
  2. 我们如何让 Ein(g) E i n ( g ) 足够小呢?

在这两个问题中,我们的假设空间集大小 M M 又扮演着什么样的角色呢?

53

M小的话,根据霍夫丁不等式,我们能确保1可以满足的,但是由于 M M 过小,选择性太小,所以2不好满足。
M大的话,情况就反过来了。

如此看的话, M M 如果是无限大的,这个显然是不好的。

如果M无限大,我们的机器学习就凉凉了!

当然不是这样啦,我们需要在接下来的课程中证明, M M 无限大的时候,机器学习还是有可行性的。

54

直观的想法是这样的,我们当前看到霍夫丁不等式右半部分的M取值是可以无限大的,但是有没有可能, M M 是存在一个有限的上界mH的。
也就是说,不管这个空间集 M M ,如何变大,在霍夫丁不等式中,我们总可以使得不等式左式小于等于一个有限的由mH决定的上界?
当然这只是一个假想,现在还不确定对不对。
但是如果这个假想被证明了,嘿嘿,我们就可以喜滋滋地宣告,机器学习在 M M 无限大的时候也是可行的

5.2 Effective Number of Lines 有效的线的种类数量

首先,我们来回顾一下霍夫丁不等式右边的M是怎么来的?

P[|Eout(g)Ein(g)|>ϵ]2Mexp(2Nϵ2) P [ | E o u t ( g ) − E i n ( g ) | > ϵ ] ≤ 2 ∗ M ∗ e x p ( − 2 N ϵ 2 )

左式,代表我们遇到坏的时间Bad events( Bm B m ),即 |Eout(hm)Ein(hm)|>ϵ | E o u t ( h m ) − E i n ( h m ) | > ϵ Eout E o u t Ein E i n 相去甚远的情况。
右式,使我们使用union bound计算之后得到的边界,考虑的是,所有的Bad event都不重合的情况:
55

M M 无穷大时,右式的加法也会无穷大,这样霍夫丁不等式就无边界了。

实际上,当假设h1h2时,它们的Bad Events也是会重合的。
我们的union bound会过度估计。

考虑到重叠,我们可以按类别对相似的假设进行分组吗?

先考虑平面上的二维直线这个简单的例子。

H={alllinesinR2} H = { a l l l i n e s i n R 2 }

一共有无数条直线。

56

当只有1个输入向量时,可以把直线分为两类。一类直线把 x1 x 1 划分为圈圈,一类把 x2 x 2 划分为叉叉。

58

当只有2个输入向量时,可以把直线分为四类。

59
50
当有三个输入向量时,可以分为小于等于8类直线。
50
所以,我们无限条线可以被分为不超过 2N 2 N 个种类的线。
所以,就我们的二维直线案例而言,霍夫丁等式右边的 M M 可以被替换为Effective(N),且这个 Effective(N) E f f e c t i v e ( N ) 不超过 2N 2 N ,和右式的其它项乘起来,右式最终的结果是接近0的,哈哈!
这样的话,我们可以说对于无限条直线,机器学习是可行的!
51
这个问题比较简单,首先5个输入点,上界肯定是 25=32 2 5 = 32 ,然后,考虑最极端的情况, x1 x 1 x5 x 5 的分布像一个圆,对于任意一个点 xn0 x n 0 ,都有两个点 xn1 x n 1 xn2 x n 2 ,使得无法用直线分割,计算如下:

2(16(522))=22 2 ∗ ( 16 − ( 5 ∗ 2 − 2 ) ) = 22

52

5.3 Effective Number of Hypotheses 假设的有效数量

  • 现在我们不考虑二维平面上的线,而是考虑抽象的假设。

H={hypothesis h:X{×,}{ H = { h y p o t h e s i s   h : X → { × , ∘ } {

假设集中的每个输入 x x 对应的输出都有两种,圈圈或叉叉。

  • 根据假设集的输出,我们把这无限多的假设函数限制到有限的种类中去,上界为2N
    h(x1,x2,x3,...,xn)=(h(x1),h(x2),h(x3),...h(xn)){×,}N h ( x 1 , x 2 , x 3 , . . . , x n ) = ( h ( x 1 ) , h ( x 2 ) , h ( x 3 ) , . . . h ( x n ) ) ∈ { × , ∘ } N

    每一类都叫做一个dichotomy,即一个二分。
    53

    我们将二分的集合 |H(x1,x2,...,xn)| | H ( x 1 , x 2 , . . . , x n ) | 视为M的一个候选。

    • |H(x1,x2,...,xN)| | H ( x 1 , x 2 , . . . , x N ) | 的大小是依赖于输入 (x1,x2,...) ( x 1 , x 2 , . . . ) 的,要移除二分集合对输入的依赖性,我们选择最极端的情况,即,使得 |H(x1,x2,...)| | H ( x 1 , x 2 , . . . ) | 最大的的输入。
      mH(N)=maxx1,x2,...,xNX|H(x1,x2,...,xn)| m H ( N ) = max x 1 , x 2 , . . . , x N ∈ X | H ( x 1 , x 2 , . . . , x n ) |
    • 我们把 mH(N) m H ( N ) 叫做成长函数(growth function),这个成长函数是有限的,上界为2^N。
    • 那如何计算这个成长函数呢?如下有几种例子。
      51

    55

    56

    57

    58
    选2N
    分析如下:
    59

    5.4 Break points 断点

    50
    对于上节课讲的成长函数,有多项式形式的成长函数,也有指数形式的。
    我们希望将 mH m H 替代 H H ,所以mH的复杂度越低越好。
    那么我们可以证明, mH(N) m H ( N ) 是多项式形式的吗?

    这一小节无法给出证明,但是可以引入一个新的概念,断点

    60

    什么是断点,当输入的个数 k k 不能被H打碎时,我们把 k k 叫做断点。
    我们接下来要研究最小的断点k

    61

    当存在断点时,也许我们能证明 mH(N)=O(N(k1)) m H ( N ) = O ( N ( k − 1 ) ) ,这样的话,我们就可以说 mH(N) m H ( N ) 在存在断点时是多项式形式的。机器学习就可行啦!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值