机器为什么能学习(上)

本篇文章是台湾大学《机器学习基石上》的课程笔记。以PLA算法为例,推导证明机器学习的可行性。

问题概述

机器学习在当前发展得很快,我们不由得发问:为什么这种算法是可行的。
我们说机器学习算法是可行的,是指它的损失函数值很小。比如在回归问题里,我们的目标是让 g \approx f
我们用更为数学化的语言表述这件事情:
首先定义一下本文需要用到的数学符号
\begin{array} \\ \hline x & 输入数据 \\ y&输出结果 \\ f&目标函数 \\ g&预测函数\\ data&训练样本 \\ hypothesis & 假设 \\ alogrithm & 算法\\ E_{in}(h)&在抽样样本中h(x)!=y的概率\\ E_{out}(h)&在抽样样本外h(x)!=y的概率 \end{array}
我们让g \approx f本质上就是要使得E(h)足够小且E_{in} \approx E_{out}
我们这篇文章需要证明的两个保证机器学习可行的结论,就是:

  • E_{in} \approx E_{out}
  • E_{in} 足够小

但是,我们知道在计算机科学里有一个著名的NFL(No Free Lunch)理论,它似乎在告诉我们机器学习是不可行的...

NFL理论 与 算法优越性

NFL理论的具体表述如下:

不管采用何种学习算法,至少存在一个目标函数,能够使得随机猜测算法是更好的算法。平常所说的一个学习算法比另一个算法更“优越”,效果更好,只是针对特定的问题,特定的先验信息,数据的分布,训练样本的数目,代价或奖励函数等。

是不是很不符合常理?难道Hugo Sort(猴子排序)真的和快速排序优越性一样吗?我们来看看周志华教授的《机器学习》一书中,关于NFL的简要证明:


周志华《机器学习》第八页

周志华《机器学习》第九页

最后的结果里,一个算法的期望性能居然和算法本身无关!
按照NFL的理论,是不是不仅机器学习算法不可行,就连传统的算法也不可行了呢?

通过 Hoeffding's inequality 得到机器学习可行的两个条件

上面NFL理论的表述,实际上是在告诉我们:不会存在一个算法对任意一种条件都有优越性。但我们实际上只需要期望机器学习算法能解决大部分的问题。也就是说,我们的问题变成了证明机器学习算法在有界的概率下,是可行的。
我们在证明这个结论,需要用到一个数学工具 Hoeffding's inequality。

什么是Hoeffding's inequality

我们先用一个Bin Model来介绍什么是 Hoeffding's inequality。
现在假设我们有如下的一个桶,需要去预测其中绿色球与橙色球的比例。

Bin Model

显然,根据统计学的原理,我们会从桶中抽取一个抽样样本(
sample
)。然后根据这个
sample
里红绿球的比例,来预测整个桶里球的比例。
我们假设
sample
里橙色球的比例为
u
,桶里橙色球的比例为
v
。是否一定有
u=v
?答案是否定的。但我们可以说,
u \approx v
。那么
u
v
之间到底有多接近呢?
统计学家给出了结论(more in Wiki):
P[|v-u| > \epsilon] \leq 2exp(-2\epsilon^{2})

这个结论告诉我们,当
N
足够大时,
v
u
之间的差值限定在
\epsilon
里。

Hoeffding's inequality在机器学习中的表述

我们把 Bin Model 迁移到机器学习上。
现在我们假设一个 Bin 就是一个 hypothesis。其中橙色球是 h(x) \neq f(x),绿色球是h(x) = f(x)
我们想要证明:h(x) \neq f(x)的概率足够小,以至于我们可以忽略它。
我们用E_{in}、E_{out}来重新表述 Hoeffding's inequality:
P[|E_{in}(h) - E_{out}(h)| > \epsilon] \leq 2exp(-2\epsilon^2N)
这个表达式告诉我们: E_{in} = E_{out}是PAC( probably approximately correct)的。

PAC:u、v的差值被限定在\epsilon中。

也就是说:如果E_{in}足够小,就可以认为E_{out}足够小。

Bad Sample in Learing

上文证明了如果E_{in}足够小,就可以认为E_{out}足够小。但是不是一定会有这样的情况呢?
其实不然,我们在这里是概率性的描述,也就是说不能保证对于任意的hypothesis都会有这样的结果。
比如我们假设:如果有150个人抛硬币,其中至少有一个人连续5次硬币都是正面朝上的概率:
1-(\dfrac{31}{32})^{150}>99\%
显然,我们并不能说这个人抛硬币一直都会是正面朝上。
同理,如果我们选择一个sample都是绿色的罐子(hypothesis)也不能保证这个罐子就全都是绿色的球。当罐子数目很多的时候,就会有Bad Sample。

Bad Sample:E_{in}E_{out}差距很大。

我们下面做的工作,就是去证明Bad Data出现的概率足够小。

compute bad data

上面的推导涉及到的符号解释如下:
\begin{array} \\ \hline M & hypothesis的个数 \\ N & 样本个数 \\ \epsilon & 参数 \end{array}

通过上面的推导,我们可以发现:只要证明M是有界的,我们就可以认为Bad Data 出现的概率是小的。

总结一下,要证明机器学习可行我们需要做的两个工作:

  • 训练样本D 和最终测试h 的样本都是来自同一个数据分布,且D应该足够大
  • hypothesis个数 M有限
    然而,似乎对于PLA算法而言,hypothesis的个数并不有限...

证明 M 是有限的

我们先给结论,M是无穷的!但是,我们可以用一个新的符号m_{H}来替代M

P[B_{1} or B_{2} or ... or B_{M}] \leq P[B_{1}] + P[B_{2}] + ... + P[B_{M}]
这个式子是我们用来计算 Bad Data出现的概率。然而,我们实际上是在不断扩大概率的上界。看似当M = \infty时,不等式的右边也会变得无穷大。然而,我们却忽略了各种hypothesis之间可能是相互重叠的:

hypothesis

这就给了我们启发,是不是能够找到一个能够表示真正有所不同的
hypothesis
的种类的量
m_{H}
然而用它来替代
M
呢?这样似乎就能说明Bad Data出现的概率是有界的,也就能说明
E_{in} = E_{out}
出现的概率是有界的,也就能说明机器学习可行。

求取effective(N)

effective(N)替代M

我们如何把无穷的hypothesis分成有穷的类别呢?
首先,我们引入一个字母HH表示的就是平面上线的个数。
我们来看看平面上只有一个点的情况:

one-point

可以看到,当平面上只有一个点的时候,PLA算法只有两种
hypothesis

根据排列组合知识,我们可以得到,当inputs增长到4的时候,就一定会有两种hypothesis不可行。

point-4

经过分析,我们得到平面上线的种类是有限的。并且可以发现,有效的种类数目总是\leq 2^N
我们用effective(N)来代替M,重新写一下Hoeffding's inequality。
P[|E_{in}(g) - E_{out}(g)| > \epsilon] \leq2 * effective(N)*exp(-2\epsilon^2N)
我们在刚刚已经知道了effective(N)<2^N,现在如果有effective(N)\ll 2^N就能保证不等式的右边足够小(接近于0)。这个时候机器学习就是可行的。

dichotomy 替代 M

dichotomy:dichotomy 就是将空间中的点(例如二维平面)用一条直线分成正类(蓝色 O)和负类(红色 X)。令H是将平面上的点用直线分开的所有hypothesis h的集合。

dichotomy与hypotheses 的关系是:hypotheses 是平面上所有直线的集合,个数可能是无限个,而dichotomy 是平面上能将点完全用直线分开的直线种类,它的上界是 2^N

成长函数 m_{H}(N)

成长函数的定义

成长函数 growth \ function
m_{H}(N):对于由N个点组成的不同集合中,某集合对于的dichotomy最大,那么这个dichotomy的值就是m_{H}(N),它的上界是2^N

根据我们上面的推导,在二维平面上,m_{H}(N)N的变化关系是:

m(N)

接下来,我们将告诉大家如何去计算成长函数,以及如何运用VC维去分析。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,277评论 6 503
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,689评论 3 393
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,624评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,356评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,402评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,292评论 1 301
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,135评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,992评论 0 275
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,429评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,636评论 3 334
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,785评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,492评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,092评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,723评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,858评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,891评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,713评论 2 354

推荐阅读更多精彩内容

  • 清冷的夜,轻摆的杨柳。停笔推笺,抬头望月,月仍是那么清明,那么明澈。伫立在竹影塘前,望着天空的明月,仿佛看...
    浅烟_老刚阅读 1,546评论 0 7
  • 喜欢也好,讨厌也罢,你周围一定有一个水瓶座,并且,你一定因为她的朋友圈认识了更多朋友。好像你一生一定要交往一个水瓶...
    袁小C阅读 361评论 0 1
  • 我们总是能给出一个美丽答案,但谁又能问出一个美丽问题呢?——美国诗人卡明斯 看这篇文章之前,我的提问画风是这样的:...
    祈笙阅读 654评论 2 6
  • 你知道认知这棵树到底要怎样生长,到底需要什么方法才能不断的吸取到养分,用什么方法去专心致志吸取需要的特定养分,...
    系统升级永久阅读 622评论 0 0
  • 我们这儿教室在第三幢,第二楼,教室朝东。南墙中间有两扇窗,窗两边有两扇门,北边也有两扇窗,正中有一块实现推拉黑...
    蓉蓉_qian阅读 429评论 0 2