Lecture 5 Training versus Testing

ppt
video

5.1 Recap and Preview 回顾和预习

Recap

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

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

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

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

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

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

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

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

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

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

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

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

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

P[|Eout(g)Ein(g)|>ϵ]2Mexp(2Nϵ2)

左式,代表我们遇到坏的时间Bad events(Bm),即|Eout(hm)Ein(hm)|>ϵEoutEin相去甚远的情况。
右式,使我们使用union bound计算之后得到的边界,考虑的是,所有的Bad event都不重合的情况:
【林轩田】机器学习基石(五)——训练和测试

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

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

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

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

H={alllinesinR2}

一共有无数条直线。

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

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

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

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

【林轩田】机器学习基石(五)——训练和测试
【林轩田】机器学习基石(五)——训练和测试
当有三个输入向量时,可以分为小于等于8类直线。
【林轩田】机器学习基石(五)——训练和测试
所以,我们无限条线可以被分为不超过2N个种类的线。
所以,就我们的二维直线案例而言,霍夫丁等式右边的M可以被替换为Effective(N),且这个Effective(N)不超过2N,和右式的其它项乘起来,右式最终的结果是接近0的,哈哈!
这样的话,我们可以说对于无限条直线,机器学习是可行的!
【林轩田】机器学习基石(五)——训练和测试
这个问题比较简单,首先5个输入点,上界肯定是25=32,然后,考虑最极端的情况,x1x5的分布像一个圆,对于任意一个点xn0,都有两个点xn1xn2,使得无法用直线分割,计算如下:

2(16(522))=22

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

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

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

H={hypothesis h:X{×,}{

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

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

    每一类都叫做一个dichotomy,即一个二分。
    【林轩田】机器学习基石(五)——训练和测试

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

  • |H(x1,x2,...,xN)|的大小是依赖于输入(x1,x2,...)的,要移除二分集合对输入的依赖性,我们选择最极端的情况,即,使得|H(x1,x2,...)|最大的的输入。
    mH(N)=maxx1,x2,...,xNX|H(x1,x2,...,xn)|
  • 我们把mH(N)叫做成长函数(growth function),这个成长函数是有限的,上界为2^N。
  • 那如何计算这个成长函数呢?如下有几种例子。
    【林轩田】机器学习基石(五)——训练和测试

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

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

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

【林轩田】机器学习基石(五)——训练和测试
选2N
分析如下:
【林轩田】机器学习基石(五)——训练和测试

5.4 Break points 断点

【林轩田】机器学习基石(五)——训练和测试
对于上节课讲的成长函数,有多项式形式的成长函数,也有指数形式的。
我们希望将mH替代H,所以mH的复杂度越低越好。
那么我们可以证明,mH(N)是多项式形式的吗?

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

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

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

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

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

相关文章:

  • 2022-12-23
  • 2021-11-06
  • 2021-10-01
  • 2021-04-19
  • 2021-11-22
  • 2021-08-23
  • 2022-01-02
猜你喜欢
  • 2021-08-18
  • 2021-07-16
  • 2021-05-18
  • 2022-12-23
  • 2021-06-01
  • 2021-11-04
  • 2022-12-23
相关资源
相似解决方案