感知器

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.具体应用背景的介绍

感知器是由美国计算机科学家罗森布拉特(F.Roseblatt)于1957年提出的。感知器可谓是最早的人工神经网络。单层感知器是一个具有一层神经元、采用阈值激活函数的前向网络。通过对网络权值的训练,可以使感知器对一组输人矢量的响应达到元素为0或1的目标输出,从而实现对输人矢量分类的目的。

2.分类器设计方法概述及选择依据分析

分类器设计方法概述

感知器是由具有可调节的键结值以及阈值的单一个类神经元所组成,它是各种类神经网络中,最简单且最早发展出来的类神经网络模型,通常被用来作为分类器使用。感知器的基本组成元件为一个具有线性组合功能的累加器,后接一个硬限制器而成,如下图所示:

单层感知器是一个具有一层神经元、采用阈值激活函数的前向网络。通过对网络权值的训练,可以使感知器对一组输入矢量的响应达到元素为0或1的目标输出,从而达到对输入矢量分类的目的。

分类的判断规则是:若感知器的输出为1,则将其归类于C1类;若感知器的输出为0,则将其归类于C2类。判断规则所划分的只有两个判断区域,我们将作为分类依据的超平面定义如下:

感知器分类是通过训练模式的迭代和学习算法,产生线性或非线性可分的模式判别函数。它不需要对各类训练模式样本的统计性质作任何假设,所以是一种确定性的方法。比如固定增量逐次调整算法、最小平方误差算法。

要使前向神经网络模型实现某种功能,必须对它进行训练,让他学会要做的事情,

并把所学到的知识记忆在网络的权值中。人工神经网络的权值的确定不是通过计算,而是通过网络自身的训练来完成的。

感知器的训练过程如下:在输入矢量X的作用下,计算网络的实际输出A 与相应的目标矢量T进行比较,检查A是否等于T,然后比较误差T-A,根据学习规则进行权值和偏差的调整;重新计算网络在新权值作用下的输入,重复权值调整过程,知道网络的输出A等于目标矢量T或训练次数达到事先设置的最大值时结束训练。

感知器设计训练的步骤如下:

(1)对于所要解决的问题,确定输入矢量X,目标矢量T,并由此确定各矢量的维数以及确定网络结构大小的参数:r(表示输入矢量维数,神经元的权值向量维数),s(表示一个输入矢量所对应的输出矢量的维数,或者表示神经元个数),p(表示输入矢量组数,)。

(2)参数初始化:赋给权值矢量W在(-1,1)的随机非0初始值;给出最大循环次数max_epcho。

(3)网络表达式:根据输入矢量X以及最新权矢量W,计算网络输出矢量A。(4)检查输出矢量A与目标矢量T是否相同,如果是,或已达到自大循环次数,训练结束,否则转入(5)。

(5)学习:根据感知器的学习规则调整权矢量,并返回(3)。

步骤一:网络初始化

以随机的方式产生乱数,令w(0)为很小的实数,并且将学习循环n设定为1。步骤二:计算网络输出值

选择依据分析

1.准确率:模型正确预测新数据类标号的能力。

2.速度:产生和使用模型花费的时间。

3.健壮性:有噪声数据或空缺值数据时模型正确分类或预测的能力。

4.伸缩性:对于给定的大量数据,有效地构造模型的能力。

5.可解释性:学习模型提供的理解和观察的层次。

3.感知算法原理及算法步骤

感知器基本原理:

感知器的学习过程是不断改变权向量的输入,更新结构中的可变参数,最后实现在有限次迭代之后的收敛。感知器的基本模型结构如图所示:

感知器基本模型

其中,X输入,Xi表示的是第i个输入;Y表示输出;W表示权向量;w0是阈值,f是一个阶跃函数。

感知器实现样本的线性分类主要过程是:特征向量的元素x1,x2,……,xk是网络的输入元素,每一个元素与相应的权wi相乘。,乘积相加后再与阈值w0相加,结果通过f函数执行激活功能,f为系统的激活函数。因为f是一个阶跃函数,故当自变量小于0时,f= -1;当自变量大于0时,f= 1。这样,根据输出信号Y,把相应的特征向量分到为两类。

然而,权向量w并不是一个已知的参数,故感知器算法很重要的一个步骤即是寻找一个合理的决策超平面。故设这个超平面为w,满足:

(1)

引入一个代价函数,定义为:

(2)

其中,Y是权向量w定义的超平面错误分类的训练向量的子集。变量定义为:当时,= -1;当时,= +1。显然,J(w)≥0。当代价函数J(w)达到最小值0时,所有的训练向量分类都全部正确。为了计算代价函数的最小迭代值,可以采用梯度下降法设计迭代算法,即:

(3)

其中,w(n)是第n次迭代的权向量,有多种取值方法,在本设计中采用固定非负值。由J(w)的定义,可以进一步简化(3)得到:

(4)

通过(4)来不断更新w,这种算法就称为感知器算法(perceptron algorithm)。可以证明,这种算法在经过有限次迭代之后是收敛的,也就是说,根据(4)规则修正权向量w,可以让所有的特征向量都正确分类。

感知器算法的具体步骤如下:

(1)选择N个分属于和类的模式样本构成训练样本集,将训练样本写成增

广向量形式,并进行规范化处理。将N个样本编号为。任取权向量初始值W(1)开始迭代,括号中的1代表迭代次数k=1。

(2)用全部训练样本进行一轮迭代。每输入一样样本X,计算一次判别函数

,根据判别函数分类结果的正误修正权向量,此刻迭代次数k加1。

假设进行到第k次迭代时,输入的样本为,计算(k)的值,分两种情况更新权向量:

①若(k)说明分类器对的分类发生错误,权向量需要校正,且校正为

W(k+1)=W(k)+c其中,c为校正增量系数,c>0。

②若(k)表明分类正确,权向量不变,即W(k+1)=W(k)。

以上两步可统一写为

W(k+1)=

(3)分类分析结果,在这一轮的迭代中只要有一个样本的分类发生了错误,即

出现了的情况,则回到步骤(2)进行下一轮迭代,用全部样本再训练一次,建立新的W(k+1),直到用全部样本进行训练都获得了正确的分类结果,迭代结束。这时的权向量值即为算法结果。

从上面的过程中可以看出,感知器算法就是一种赏罚过程:当分类器发生分类错误时,对分类器进行“罚”——修改权向量,以使其向正确的方向转化;

分类正确时,对其进行“赏”——这里表现为“不罚”,即权向量不变。

相关文档
最新文档