机器学习之人工神经网络(感知机算法)

人工智能

635人已加入

描述

如图一所示,神经元的MP模型输出y的表达式为:

y=φ(∑ωixi+b)=φ(ωTX+b)

其中,ωT=(ω1,ω2,…,ωi)T,X=(x1,x2,…,xi)。

机器学习

图片来源:中国慕课大学《机器学习概论》

1957年,弗兰克·罗森布拉特(Frank Rosenblatt)从数学角度考察MP模型,并提出可以通过若干成对的输入输出数据和机器学习方法获得ω和b的值,罗森布拉特依此提出感知机算法(Perceptron Algorithm)。

一、感知机的求解问题

求解问题为:假设二分类问题的输入为(Xi,yi),i=1~N,其中,Xi是训练数据,yi=±1,需求解一个向量ω和一个常数b,使得对i=1~N,有:

(1)若yi=+1,则ωTXi+b>0;

(2)若yi=-1,则ωTXi+b<0。

若训练数据满足上述条件,则称该数据获得平衡,否则该数据没有获得平衡。当训练数据没有获得平衡时,该数据满足:

(1)若yi=+1,则ωTXi+b<0;

(2)若yi=-1,则ωTXi+b>0。

若要求解可使所有训练数据均获得平衡的ω和b的值,则训练数据集需线性可分。

二、感知机的求解过程

(1)随机选择ω和b;

(2)取一个训练样本(X,y) 

1)若ωTX+b>0,且y=-1,则:ω=ω-X,b=b-1;

2)若ωTX+b<0,且y=+1,则:ω=ω+X,b=b+1;

(3)再取另一个训练样本(X,y),重复步骤(2);

(4)终止条件:直到所有训练样本(X,y)均不满足(2)中的所有条件。

三、感知机的求解过程的步骤(2)的解释

(1)当ω训练样本(X,y)满足ωTX+b>0,且y=-1时,该训练样本未达到平衡状态,需通过ω(新)=ω(旧)-X,b(新)=b(旧)-1的方式调整。通过上述方式调整后:

ω(新)TX+b(新)

=[ω(旧)-X]TX+b(旧)-1

=[ω(旧)TX+b(旧)]-(XTX+1)

=[ω(旧)TX+b(旧)]-(||X||2+1)
≤[ω(旧)TX+b(旧)]-1

即通过调整后,新ωTX+b值比旧ωTX+b值至少小1,在旧值的基础上向平衡状态方向移动。

(2)当ω训练样本(X,y)满足ωTX+b<0,且y=+1时,该训练样本未达到平衡状态,需通过ω(新)=ω(旧)+X,b(新)=b(旧)+1的方式调整。通过上述方式调整后:

ω(新)TX+b(新)

=[ω(旧)+X]TX+b(旧)-1

=[ω(旧)TX+b(旧)]+(XTX+1)

=[ω(旧)TX+b(旧)]+(||X||2+1)
≥[ω(旧)TX+b(旧)]+1

即通过调整后,新ωTX+b值比旧ωTX+b值至少大1,在旧值的基础上向平衡状态方向移动。

编辑:黄飞

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分