您的位置:首页 > 其它

机器学习基石笔记(3-6)——机器学习的类型及机器学习有效性证明

2017-03-12 13:21 288 查看


3 Types of Learning


3.1 Learning with Different Output Space

  (1)二值分类问题:输入空间是一个特征向量,输出空间只有2个值。

  (2)多分类问题:输入空间是一个特征向量,输出空间是一个有限的离散的空间。

  (3)回归问题:输入是一个特征向量,输出空间是一个实数集。

  (4)结构学习:输出是一个结构,例如输入一个句子,标注词性。

  (5)还有很多……


3.2 Learning with Different Data Label

  (1)监督问题:所使用的数据都是标注好结果的。例如分类,回归,标注问题等。

  (2)无监督问题:所使用的数据都没有标注好。例如离群点检测,聚类,密度分析等。

  (3)半监督问题:一部分数据是标注好的。例如图像识别。

  (4)强化问题:所使用的数据有标注,但可能不是真实的标注,并给出这个标注的好坏指标。

  (5)and so on…


3.3 Learning with Different Protocol

  (1)batch:一次性喂给系统数据,并给出一个确定的最好的学习结果。

  (2)online:一批一批或者一个一个喂给系统数据,每次得到更好的学习结果。

  (3)active:使系统能自己指出需要给出标记的关键问题,以寻求在更少的数据下获取更显著的学习效果。

  (4)and so on…


3.4 Learning with Different Input Space

  (1)concrente Features:很直观的、具有物理意义的特征。

  (2)Raw Features:一些不是那么直观的,需要转换的特征。

  (3)Abstract Features:非常抽象的特征,需要经过多次特征提取。


4 Feasibility of Learning


4.1 Learning is Impossible

  机器学习只是针对当前已经有的数据做出学习,不能保证对没有出现过的数据做出完全正确的预测。其原因是对数据的拟合结果有很多种,每种都能对应完全正确的数据,但却不能保证之后的数据符合这个拟合结果。


4.2 Probability to the Rescue

  采样能给出总体中的一些信息,并且通过中心极限定律能给出误差上限。


4.3 Connection to Learning

  要保证所拿到的数据是和未知的整体数据同分布,则所学习到的模型在样本上的结果很大可能上和在整体的表现结果上类似。同时我们学习到的模型应该在测试集上进行验证,以确定模型的有效性。


4.4 Connection to Real Learning

  如果假设空间够大的时候,说明可供选择的目标函数变多了,但也意味着选到坏目标函数的几率增加,反之亦然,所以当数据集够大、假设空间有限时可以有效减少偏差。可以用Hoeffding公式说明该问题:

P(BADD)=2Me−2ϵ2N


5 Training versus Testing


5.1 Recap and Preview

  综上所述,机器学习存在两个核心为题,首先是训练集是不是可以和真实数据同分布,其二是我们可以使训练出来的函数无限趋近与所需要预测的函数么?

  另外还有一个问题,即是否存在一个方法能从无限的假设空间中提取有限、有效的人工假设空间,使得不那么容易选到坏的目标函数,同时也能保证我们在假设空间中有足够多的选择。


5.2 Effective Number of Lines

  在假设空间无穷的情况下选到不好的结果的概率上限很大的原因是假设可能会从真实世界抽取到各种各样的不好的数据集,而其实很多不好的结果所对应的数据集是大部分重复的,所以希望把假设空间分类,使不同类假设之间的数据集没有那么多重复。

  例如二分类问题,如果只有1个实例,则假设空间分为两类,有2个实例分为3类,3个实例分为6类(有两种情况线性不可分),以此类推。而所能分出来的数字就叫Effective Number of Lines


5.3 Effective Number of Hypotheses

5.3.1 Dichotomies

  根据上一节的内容做推广,对于一系列实例输入x1…xn,假设空间H对其的划分结果的集合记为H(x1…xn),H(x1…xn)与H的区别在于H(x1…xn)含参,且H(x1…xn)的元素是划分结果,如果有k种划分结果,则H(x1…xn)的元素个数是k,后者的元素则是条件概率或者目标函数。

5.3.2 Growth Function

  令mH(N)=max|H(x1…xn)|,则称mH(N)为成长函数,其中N是实例的个数。该函数所代表的是特定的假设空间H能将N个实例划分出的不同结果的最大个数。成长函数的最大值是2N,即能完全表示出所有的划分情况,称为N
input shattered by H。


5.4 Break Point

  对于每一种H有对应的成长函数,对于一部分H来说,他们的成长函数之所以不能到达2N的上限,是因为在N递增的过程中有一个关键性的数字n,在这个数字n以前,它们(那一部分H)能完全划分N的所有情况,但n之后它们不能完全划分了,这个n就是Break
Point。同样,如果N=n时不能完全划分出所有情况,那么n+1的时候也不能,故其成长函数不能达到2N的上限。

  例如在二维的感知机上的n是4,也就是说在二维平面上如果有4个节点,则无法用一根直线完全划分出所有的分布情况。

  接下来要证明的理论就是,是否成长函数的速度与其Break point相关,即:mH(N)=O(2n)。


6 Theory of Generalization


6.1 Restriction of Break Point

  假设存在假设空间H能对数据点进行一些划分,则如果假设H的break
point是2,即它不能完全打散(shatter)2个以上节点,则H对3个点进行划分的最多情况是4种(例如第一种是三个圈,其他三种分别有一个是叉,另外两个是圈,在这4种的基础上添加任意的划分都能打散某两个节点)。如果H的break
point是1,则它对3个点的划分只能有一种情况。

  于是我们可以看到,当N=1时,H能划分2种情况;N=2时,H能划分3种情况;N=3时,H能划分4种情况,可以看到,其增长函数远小于N的增长速度。


6.2 Bounding Function- Basic Cases

  本节对成长函数的上限做出基础陈述,令k为break point,N为实例数,B(N,k)是成长函数上限。

  (1)当k=1时B(N,k)=1;

  (2)当N<k时,B(N,k)=2N;

  (3)当N=k时,B(N,k)=2N−1;


6.3 Bounding Function-Inductive Case

  通过穷举得出B(4,3)=11,并令B(4,3)=2α+β,其中,2α代表前3个节点划分相同,第4个节点划分不同的划分,在此处2α=8。Β则是剩余的划分。可以知道,α+β代表B(3,3),α代表B(3,2),由递归推断,B(N,k)≤B(N−1,k)+B(N−1,k−1)。此处可以证明,不等号实际上可以用等号代替。

  综上,实际上我们可以得出:

B(N,k)≤∑k−1i=0(Ni)

  需要注意的是,这个上界是成长函数的上界,而成长函数是假设空间H所能shatter数据集的上界,因此B(N,k)是上界的上界。


6.4 A Pictorial Proof

  假设存在一个有限的假设集H用以替代无限的假设空间,其成长函数是mH(N)。又假设存在一个有限的验证集,从H选出的模型能在训练集中得到偏差Ein,验证集上得出偏差E′in,现在用E′in替代测试集Eout(这里认为测试集是无穷的,因此Eout不能直接得到)。因此,问题转化为在成长函数为mH(N)的有限H内选择模型,并使得E′in≈Ein,使得Hoeffding公式可以得出结果:

BAD<2mH(2N)P[fixed h s.t.|Ein−E′in|>ϵ2]≤4mH(2N)e−ϵ2N/8

  由此,机器学习变得可能。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: