机器学习基石第六讲:theory of generalization

博客已经迁移至Marcovaldo’s blog (http://marcovaldong.github.io/)

机器学习基石第六讲继续讨论“学习是否可行的问题”。

Restriction of Break Point

继续前面的讨论,我们看 mH(N) 是否会有一个很小的增长速度。回顾前面的四种成长函数及其break point。我们知道k是一个成长函数的break point,那比k大的值全是break point。

6_1

mH(N) 是一个hypothesis在N个数据点上可以产生的dichotomy的数量的最大值。现在假设一个hypothesis最小的break point是2,那我们能从中得到什么信息。

当N=1时,有定义得 mH(N)=2 ,这没有问题;当N=2时,由定义得 mH(N)<4 (最大值可能是3)。那当N=3时呢?当hypothesis从三个数据点产生一个dichotomy(比如ooo)、两个dichotomy(比如ooo和xoo)、三个dichotomy(比如ooo、xoo、oxo)、四个dichotomy(ooo、oox、oxo、xoo)时,可以存在一种情况,三个数据点中任意两个都不会被shatter;而当hypothesis试图从三个数据点产生五个dichotomy时,无论怎样都会有两个点被shatter。

6_2

6_3

现在知道了break point k会在很大程度上限制 mH(N) ,那我们猜测 mH(N) 会有一个跟k相关的最大值,而其又小于多项式,那我们就可以说 mH(N) 是一个多项式。如果证明了这个猜测,那我们就可以将 mH(N) 带进前面的Hoeffding’s inequality,进一步就可以证明学习是可行的。

6_4

本小节测试:

6_5

Bounding Function: Basic Cases

定义一个叫作bound function的函数B(N,k),表示当break point为k时 mH(N) 可能取到的最大值,且满足下图中的两点。现在我们的新目标是证明B(N,k)小于一个多项式。

6_6

现在我们将B(N,k)的值写在一张表里面,那我们首先可以先将表的上三角先填好(因为当k>N时, B(N,k)=2N )。

6_7

当k=N时,有 B(N,k)=2N1

6_8

省下的那一部分表格,我们在下一小节继续填写。下面本小节测试:

6_9

Bounding Function: Inductive Cases

我们观察表格,看看 B(4,3) 是不是和 B(3,?) 有什么关系呢?我们尝试着去求解出B(4,3)对应的一组dichotomy,如下图左侧所示。将这11个dichotomy重新排列一下,如下图右侧所示,前八个又分成了四对(每一对的 x1 x2 x3 标记相同, x4 分别是圈圈和叉叉),后三个都是“单个”的。

6_10

然后将B(4,3)写成

B(4,3)=11=2α+β

而其中的 α+β 则正好是 (x1,x2,x3) 的一组不会被shatter的dichotomy(橘色的四对里边每队拿出一个,加上下面的三个,这7个dichotomy不考虑 x4 )。所以肯定有
α+βB(3,3)

6_11

然后我们只看橘色的部分(不考虑 x4 ,那橘色的8个就变成了4个),我们说要保证三个点不被shatter,那我们还得保证其中任意两个点不被shatter,所以有

α<B(3,2)

现在得到了

6_12

一直做这样的推导,我们就可以得到这样一个规律:

6_13

然后我们就可以像上图那样填写表格,得到了每个bounding function的上限(或者上限的上限……知道这些就够了)。

6_14

现在我们知道了B(N,k)有一个多项式上限,而B(N,k)又是 mH(N) 在break point存在时的上限。实际上,这里的“ ”可以改成“=”。前面介绍的那几个成长函数就有了上限,如下图。

6_15

然后是本小节测试:

6_16

A Pictorial Proof

之前我们尝试用 mH(N) 来代替原来Hoeffding’s inequality中的M,而实际上这样替换是有问题的。因为 Ein 的取值是有限的,而 Eout 的可能取值是无限的。这里用hypothesis在验证集上的犯错率 Ein 来代替 Eout ,下面给出了大概的推导过程。

6_17

步骤1:

6_18

步骤2:

6_19

步骤3:

6_20

这里实际上完成了Vapnik-Chervonekis(VC) bound的推导证明。当然,我也没听懂这三个步骤的推导,有需要的同学再去查其他资料吧。

现在我们可以说2D perceptrons的学习是可行的(但还没有证明任意维度的perceptron会发生什么事)。

6_21

最后是本小节测试:

6_22

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值