感知机算法(线性可分情况)

一、神经元MP模型

 数学描述:(函数形式+向量形式)

 二、问题描述

假设在一个P维向量空间中有N个向量(样本)。这N个向量每一个都属于C1和C2两类中的一类。我们的任务就是去寻找一个超平面将两类向量完全分开。

在本文中,只讨论线性可分的情况。 

并且很容易看出,这个问题和支持向量机所面临的问题完全一致

 三、感知器算法的描述与可行性

1.问题数学化:

在Frank Rosenblatt 1956年的理论中,问题描述为:

问题可以转化为用机器学习的方法自动获得权重w和偏置b,找出一个向量w和一个常熟b,使之对i=1,2,...,N

在胡浩基老师的课程中明确指出,数学上可以严格证明此处所谓的获得平衡的成立条件就是线性可分(虽然没有证明,但这不重要)

为了描述这个问题, Rosenblatt提出了感知器算法。

2.达到平衡的条件

当y=-1,且wTx+b>0时:

 即每次调整wTx+b的值比原来至少小了1

 当y=+1,且wTx+b<0时:

  即每次调整wTx+b的值比原来至少大了1

综上所述 ,感知器算法只要能:

不断输入训练数据

重复第二步

w,b就对对所有的训练样本满足达到平衡状态

但有个问题,感知器算法是否真的能停止下来?

为了方便描述这个问题,首先引入增广向量重新描述问题和算法

四、基于增广向量感知器算法

1.定义(增广向量)

为了证明感知器算法能够达到平衡,在这里我们用更加数学化的方式来描述问题。假设x1,x2,...,xN是p维向量。我们定义增广向量如下:

2.问题转化

 所有的增广向量都是p+1维的。问题转化为找到一个p+1维向量对于所有i=1,2,...,N有:

 

也就是说,增广向量将x和y合并为一个向量,将wT+b和y=+-1的多种情况统一概括为增广阵相乘的正负。乘积为正即为平衡,乘积为负即为不平衡。

平衡的表达:

转化为:

 

 不平衡则相反

从此,复杂的情况就可以通过增广向量的方式用数学简单表达,为后面证明迭代收敛提供了方便。

 五、算法及实现步骤 

1.感知器算法:

 2.基于增广向量地感知器算法:

 

六、感知器算法的收敛定理(证明感知器算法真的能停下来)

这里的证明用的就是典型的迭代法的证明思路,我们小学二年级学过的数值分析告诉我们,证明迭代收敛需要有:

迭代格式||迭代序列

误差e||误差估计

精确解

1.定理

 我们先说定理:(若则形式)

若:对于向量空间中的N个向量,如果存在一个向量wopt使得对于所有的样本成立

则:感知机算法一定能找到一个w,使得对于向量空间中的N个向量,向量w对于所有的样本成立

啥意思呢?就是说有一个wopt存在,那么感知机算法就一定能找到解。胡浩基老师的课程中支持向量机的章节说明过(只是提了一下,没有证明)只要存在一个w成立,就一定存在无数个w成立。

wopt存在就等价于样本线性可分,收敛定理换句话说就是只要样本线性可分,那就感知机就一定能找到w和b满足问题的解。

注意:往往wopt和感知机算法找到的w并不相同,是否相同完全看运气

参照迭代法收敛的要素,很容易发现!!!!!!!:

三个要素中,我们只能找到一个,就是精确解wopt

没错其他两个还没有,哈哈哈,没关系,我们接着往下走

误差和迭代格式究竟先找哪一个呢?

先找迭代格式吧!你想一想,没有迭代格式,误差你就算写出来迭代前后的误差也没有办法产生联系,更没有意义

 2.证明:

(1)迭代终止(进行)条件与迭代格式

我们回忆一下增广向量感知机算法,是不是只有当的时候才会有迭代继续进行,如果不是,那就说明已经找到正解了

所以分情况,排除掉找到了正解:

 没错,感知机算法本身就有迭代格式,分情况后很容易就找到了

(2)假设

 

 (3)误差

有了迭代格式就有误差了,把迭代函数和精确解做差就可以了,但是我们做出了上述假设,所以做差的时候需要一个系数a,因为如果是直接趋近于wopt,没有办法保证收敛;然后由于w和aw表示同一个平面,所以不妨让w收敛于aw,放宽条件,事后证明这个放宽是有必要的

 取模并展开:

 (4)证明误差是可以达到的(这里并不是无穷小)

用条件:

 a开始起作用了:

初始误差有界性: 

 

梳理一下,误差是有限的,每次都至少逼近一个固定单位 ,那么有限步骤下一定可以达到

 3.感知机结果w和wopt的关系

 w收敛与a*wopt,就这么简单,哈哈,其实这也变相地证明了支持向量机章节中的那个结论,哈哈,就是强调一下

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值