感知器算法试验-1
一一. .实验目的实验目的 1.理解线性分类器的分类原理。 2.掌握感知器算法,利用它对输入的数据进行分类。 3.理解 BP 算法,使用 BP 算法对输入数据进行分类。 二二. . 实验原理实验原理 1.感知器算法 感知器算法是通过训练模式的迭代和学习算法, 产生线性可分的模式判别函数。 感知器 算法就是通过对训练模式样本集的“学习”得出判别函数的系数解。在本次实验中,我们主 要是采用硬限幅函数进行分类。 感知器的训练算法如下 设输入矢量{x1,x2,,xn}其中每一个模式类别已知,它们分别属于ω1 类和ω2 类。 (1)置步数 k1,令增量 ρ 为某正的常数,分别赋给初始增广权矢量w1的各分量较 小的任意值。 (2)输入训练模式xk,计算判别函数值wTkx k。 (3)调整增广权矢量,规则是 a.如果xk∈ω1 和wTkx k ≤0,则 wk1wk ρxk; b.如果xk∈ω2 和wTkx k ≥0,则 wk1wk-ρxk; c.如果xk∈ω1 和wTkx k 0,或xk∈ω2 和wTkx k 0 else fprintf第d 个数据被分为 第一类,分类错误\n,i; end end ifW*ki,m k1; end if modk,21 g1x2k,; d0.1; end if modk,20 g1x3k,; d0.9; end g2g1*w1; o11./1exp-g2; o1_y[o1 -1]; g3o1_y*w2; o21./1exp-g3; 输出层的权系数调整 det2a*2*d-o2*o2*1-o2*o1_y; w2w2det2; s2*d-o2*o2*1-o2; 第一层的权系数调整 w22w2; det1a*g1*s*w22,15.*o1.*1-o1; w1w1det1; errd-o2; pferr2; kk1; tttt1;训练次数 end r10;r20; for j1150 t1k2j,*w1; y11./1exp-t1; y1_y[y1 -1]; I2y1_y*w2; y2j1./1exp-I2; if y2j0.5 r2r21; end end lv2r2/50 if r250 r22r221; end pp1 end r11/50 r22/50 plot[150],y2,r; axis[0,50,0,1]; title[m,num2strm]; hold on plot[150],y22; grid on lvr11r22/100