《人工智能的诞生 (67).pdf》由会员分享,可在线阅读,更多相关《人工智能的诞生 (67).pdf(2页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 单层感知器学习实际上是一种基于纠错学习规则,采用迭代的思想对连接权值和阈值进行不断调整,直到满足结束条件为止的学习算法。假设X(k)和W(k)分别表示学习算法在第k次迭代时输入向量和权值向量,为方便,把阈值作为权值向量W(k)中的第一个分量,对应地把“-1”固定地作为输入向量X(k)中的第一个分量。即W(k)和X(k)可分别表示如下:X(k)=-1,x1(k),x2(k),xn(k)W(k)=(k),w1(k),w2(k),wn(k)即x0(k)=-1,w0(k)=(k)。单层感知器学习是一种有导师学习,它需要给出输入样本的期望输出。假设一个样本空间可以被划分为A、B两类,定义:功能函数功能
2、函数:若输入样本属于A类,输出为+1,否则其输出为-1。期望输出期望输出:若输入样本属于A类,期望输出为+1,否则为-1。单层感知器学习算法描述:单层感知器学习算法描述:(1)设t=0,初始化连接权和阈值。即给wi(0)(i=1,2,n)及(0)分别赋予一个较小的非零随机数,作为初值。其中,wi(0)是第0次迭代时输入向量中第i个输入的连接权值;(0)是第0次迭代时输出节点的阈值;(2)提供新的样本输入xi(t)(i=1,2,n)和期望输出d(t);(3)计算网络的实际输出:(4)若y(t)=1,不需要调整连接权值,转(6)。否则,调整权值,执行下一步 (5)调整连接权值其中,是一个增益因子,
3、用于控制修改速度,其值如果太大,会影响wi(t)的收敛性;如果太小,又会使wi(t)的收敛速度太慢;(6)判断是否满足结束条件,若满足,算法结束;否则,将t值加1,转(2)重新执行。这里的结束条件一般是指wi(t)对一切样本均稳定不变。若输入的两类样本是线性可分的,则该算法就一定会收敛。否则,不收敛。例:用单层感知器实现逻辑例:用单层感知器实现逻辑“与与”运算。运算。解:根据“与”运算的逻辑关系,可将问题转换为:输入向量:X1=0,0,1,1 X2=0,1,0,1输出向量:Y=0,0,0,1 为减少算法的迭代次数,设初始连接权值和阈值取值如下:w1(0)=0.5,w2(0)=0.7,(0)=0
4、.6并取增益因子=0.4。算法的学习过程如下:算法的学习过程如下:设两个输入为x1(0)=0和x2(0)=0,其期望输出为d(0)=0,实际输出为:y(0)=f(w1(0)x1(0)+w2(0)x2(0)-(0)1 =f(0.5*0+0.7*0-0.6)=f(-0.6)=0 实际输出与期望输出相同,不需要调节权值。再取下一组输入:x1(0)=0和x2(0)=1,期望输出d(0)=0,实际输出:y(0)=f(w1(0)x1(0)+w2(0)x2(0)-(0)=f(0.5*0+0.7*1-0.6)=f(0.1)=1 实际输出与期望输出不同,需要调节权值,其调整如下:(1)=(0)+(d(0)-y(
5、0)*(-1)=0.6+0.4*(0-1)*(-1)=1 w1(1)=w1(0)+(d(0)-y(0)x1(0)=0.5+0.4*(0-1)*0=0.5 w2(1)=w2(0)+(d(0)-y(0)x2(0)=0.7+0.4*(0-1)*1=0.3 取下一组输入:x1(1)=1和x2(1)=0,其期望输出为d(1)=0,实际输出为:y(1)=f(w1(1)x1(1)+w2(1)x2(1)-(1)=f(0.5*1+0.3*0-1)=f(-0.51)=0 实际输出与期望输出相同,不需要调节权值。再取下一组输入:x1(1)=1和x2(1)=1,其期望输出为d(1)=1,实际输出为:y(1)=f(w1
6、(1)x1(1)+w2(1)x2(1)-(1)=f(0.5*1+0.3*1-1)=f(-0.2)=0 实际输出与期望输出不同,需要调节权值,其调整如下:(2)=(1)+(d(1)-y(1)*(-1)=1+0.4*(1-0)*(-1)=0.6 w1(2)=w1(1)+(d(1)-y(1)x1(1)=0.5+0.4*(1-0)*1=0.9 w2(2)=w2(1)+(d(1)-y(1)x2(1)=0.3+0.4*(1-0)*1=0.7 取下一组输入:x1(2)=0和x2(2)=0,其期望输出为d(2)=0,实际输出为:y(2)=f(0.9*0+0.7*0-0.6)=f(-0.6)=0 实际输出与期望
7、输出相同,不需要调节权值.再取下一组输入:x1(2)=0和x2(2)=1,期望输出为d(2)=0,实际输出为:y(2)=f(0.9*0+0.7*1-0.6)=f(0.1)=1 实际输出与期望输出不同,需要调节权值,其调整如下:(3)=(2)+(d(2)-y(2)*(-1)=0.6+0.4*(0-1)*(-1)=1 w1(3)=w1(2)+(d(2)-y(2)x1(2)=0.9+0.4*(0-1)*0=0.9 w2(3)=w2(2)+(d(2)-y(2)x2(2)=0.7+0.4*(0-1)*1=0.3 此时的阈值和连接权值以满足结束条件,算法可以结束。对此,可检验如下:对输入:“0 0”有y=f(0.9*0+0.3*0-1)=f(-1)=0 对输入:“0 1”有y=f(0.9*0+0.3*0.1-1)=f(-0.7)=0 对输入:“1 0”有y=f(0.9*1+0.3*0-1)=f(-0.1)=0 对输入:“1 1”有y=f(0.9*1+0.3*1-1)=f(0.2)=12