感知机

感知机

概念

感知机(perceptron)是二类分类的线性分类模型,其输入为实例的特征向量,输出为实例的类别,取+1和-1二值。

感知机是Frank Rosenblatt在1957年提出,是神经网络与支持向量机的基础。它被视为一种最简单形式的前馈神经网络,是一种二元线性分类器。

感知机利用梯度下降法对损失函数进行极小化,提出可将训练数据进行线性划分的分离超平面,从而求得感知机模型。

感知机模型

假设输入空间(特征空间)是 XRn ,输出空间是 Y={+1,1} 。由输入空间到输出空间的如下函数:

f(x)=sign(wx+b)

称为感知机。其中, w b为感知机模型参数, wRn 叫做权值(weight)或权值向量(weight vector), bR 叫做偏置(bias), wx 表示 w x的内积。 sign 是符号函数,即:
sign(x)={+1,1,x0x<0

感知机的几何解释:线性方程

wx+b=0

对应于特征空间 Rn 中的一个超平面,其中 w 是超平面的法向量,b是超平面的截距。这个超平面将特征空间划分为两个部分。该超平面 S 被称为分离超平面(separating hyperplane)。

感知机学习策略

假设训练数据集是线性可分的,感知机学习的目标是求得一个能够将训练集正实例点和负实例点完全正确分开的分离超平面。

为了找出这样一个超平面,需要确定一个学习策略,即定义(经验)损失函数并将损失函数极小化。

损失函数的一个自然选择是误分类点的总数,但是,这种选择不易优化,故感知机采用的是误分类点到超平面S的距离。

给定训练数据集

T={(x1,y1),(x2,y2),(xN,yN)}

其中, xiX=Rn,yiY={+1,1},i=1,2,,N 。感知器 f(x)=sign(wx+b) 学习的损失函数定义为:
L(w,b)=xiMyi(wxi+b)

其中, M 为误分类点的集合,y(wx+b)称为样本点的函数间隔。

显然,损失函数 L(w,b) 是非负的。如果没有误分类点,损失函数值为0。而且,误分类点越少,误分类点离超平面越近,损失函数值就越小。

感知机学习的策略是在假设空间中选取使损失函数式最小的模型参数 w,b ,即感知机模型。

感知机学习算法

可以将感知机学习问题转化为求解损失函数式的最优化问题,最优化的方法可采用随机梯度下降法。感知机学习的具体算法,包括原始形式对偶形式

感知学习算法的原始形式

输入:训练数据集 T={(x1,y1),(x2,y2),(xN,yN)} ,其中 xiX=Rn,yiY={+1,1},i=1,2,,N ,学习率 η(0<η1)
输出 w,b ;感知机模型 f(x)=sign(wx+b)

(1)选取初值 w0,b0

(2)在训练集中选取数据 (xi,yi)

(3)如果 yi(wxi+b)0

ww+ηyixibb+ηyi

(4)转至(2),直至训练集中没有误分类点。

【注意】:
1. 感知机学习算法由于采用不同的初值或选取不同的误分类点,解可以不同;
2. 当训练数据集线性可分时,感知机学习算法原始形式迭代是收敛的;
3. 当训练数据集线性不可分时,感知机学习算法不收敛,迭代结果会发生震荡。

感知学习算法的对偶形式

输入:训练数据集 T={(x1,y1),(x2,y2),(xN,yN)} ,其中 xiX=Rn,yiY={+1,1},i=1,2,,N ,学习率 η(0<η1)
输出 w,b ;感知机模型 f(x)=signNj=1ajyjxjx+b ,其中 a=(a1,a2,,aN)T

(1)选取初值 a0,b0

(2)在训练集中选取数据 (xi,yi)

(3)如果 yiNj=1ajyjxjx+b0

aiai+ηbb+ηyi

(4)转至(2),直至训练集中没有误分类点。

参考资料

《统计学习方法》 李航著

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值