您的位置:首页 > 其它

机器学习4

2015-10-23 17:46 197 查看
题外话,今天导师给我安排了一个师兄带我,是做推理方面的,自然语言处理领域太广,也不知道推理具体做什么的,哈哈,努力吧~

===

机器学习第5章走起。

如果H是无限大的怎么办呢?

H的大小我们用M表示。

small M

当M小的时候,P(BAD) <= 2M...

,自然可以说P(BAD)相对较小,

但是当M很小的时候,也说明H的个数少,我们可以选择的h很少,那么我们可能找不到一个Ein很小很接近0的h

large M

当M很大的时候 自然P(BAD)太大,当然h的选择很多呀。

当M无穷大的时候怎么办呢?

我们可不可以找到一个可数的mh来替代,那么我就可以替换M

那么我们就要想我们在前面一章,我们把or打开换成+的时候,做了一次放缩,其实我们可以想到,如果两个h非常接近,我们放缩的结果是2倍的2exp(...),但是由于这两个h很接近,所以显然重叠量很大,那么这个概率显然小于我们这个放缩值。所以我们估计的上限值,是over的

那我们现在考虑,以PLA划分点来做例子,我们可以把无限的点,划分成一类一类的,比如如果只有1个点,我们可以有两种线,这个点为×或者为圈

两个点4种,3个点8种(不重叠,不在一条直线上),那么4个点呢?是不是16中,no,经过我们实践,发现有两种理论上的线,在4个点上是画不出来的,所以实际上只有14种,这个数量,我们叫做effective有效的数量

显然effective(N) <pow(2,N),所以,对于effective(N)是有限的,

所以我们可以用effective(N)来替代M,如果effective(N) << pow(2,N),那么我们就可以说,我们学到东西了。

显然,对于上述例子,我们知道了如何分类,那么对于其他问题,我们应该如何分类呢?

假设

对于输入,我们只有两种输出o 或者 ×,那么假设有N个输入,那么我们的输出肯定是,N个o 或者 × 的输出,每个o 或者 ×的组合就是一种dichotomies

而对于分类,我们就可以看dichotomies的个数。

所以我们现在想要做的就是把dichotomies 的大小来替换hoffding's inequality里面的M。

下面接着举了几个例子

positive ray : 成长函数 = N + 1

positive intervals 组合从N+1个中取两个 + 1(就是整体线都是负的特殊情况)=1/2 N*N + 1/2 N + 1

CONVEX sets pow(2,N),shatter 就是指对于N,我们能找出pow(2,N)个的dichotomies

显然对于前两者,随着N增大,由于成长函数<=多项式级别的,所以在N足够大的时候,可以认为Eout 和Ein 误差很大的几率很小,但是CONVEX sets则不能说明

那么2D的感知器算法是好的还是不好的?

break point :就是 在成长函数小于pow(2,k)的点,而我们有兴趣的点是第一个break point

positive ray :2

positive intervals:3

CONVEX sets:no break point

2D 感知器:4

观察,如果一个例子没有break point 的话, 那么成长速度肯定是pow(2,N),如果第一个break point是2,我们发现成长速度是k的一次方,是3,成长速度是k的二次方,那我们猜,如果第一个break point在n,那么成长速度是不是pow(k,n-1)?

那么学到现在,我们可以说明,我们现在做的无非是两件是,Eout 和Ein 是否接近,Ein是否足够小,在探讨前者的时候,我们从多少线到多少种,也就是成长函数,以及其性质,就是break point

那如果有break point,我们就可以说明成长速度是一个多项式差不多的吗?
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: