您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 实验2、感知器神经网络实验指导
-1-实验二、感知器神经网络一、实验目的及要求1、掌握感知器网络的基本概念和训练方法。2、掌握感知器网络的基本应用。3、掌握Matlab对感知器网络的构建与训练方法。4、掌握利用程序设计语言对感知器网络进行实现的方法。二、实验原理1、感知器网络模型⑴拓扑结构对于一个样本:网络输入:12TnXxxx网络输出:12TmOooo实际输出12TmDddd期望输出(导师信号)网络权值:12m121,2Tjjjnj阈值:1,2jTjm⑵转移函数10()sgn10jjjjnetfnetnetnet(符号函数)或者10()00jjjnetfnetnet(阈值函数)-2-⑶学习规则(Perceptron)权值和阈值的变化量1,2jjjWdoXjm'1,2jjjTdojm即:jjjjjjTTT2、Matlab对感知器网络的构建与训练例一、多个感知器神经元的分类问题建立一个具有两个输入,两个感知器神经元(二维输出)的感知器神经网络,区分四类输入向量。110.11,1.20XO,220.71,1.80XO,330.81,1.60XO;440.80,0.60XO,551.00,0.80XO;660.31,0.51XO,770.01,0.21XO,880.31,0.81XO;990.50,1.51XO,10101.50,1.31XO;-3-测试数据图X=[0.10.70.80.81.00.30.0-0.3-0.5-1.5;1.21.81.60.60.80.50.20.8-1.5-1.3];O=[1110011100;0000011111];net=newp([-1.51;-1.51],2);net.trainParam.epochs=20;%设置网络最大训练次数为20次net=train(net,X,O);%使用训练函数对创建的网络进行训练figure;%创建一个新的绘图窗口plotpv(X,O);%在坐标图中绘制测试数据plotpc(net.iw{1,1},net.b{1,1});%在坐标轴中绘制分类线-4-训练误差曲线训练后的分类例二、奇异样本对感知器神经网络训练的影响-5-给出输入向量和期望输出向量:110.5,10.5XO,220.5,10.5XO,330.3,00.5XO;440.1,01.0XO,5530,140XO测试数据图X=[-0.5-0.50.3-0.1-30;-0.50.5-0.51.040];O=[11001];net=newp([-301;-0.540],1);net.trainParam.epochs=30;%设置网络最大训练次数为30次net=train(net,X,O);%使用训练函数对创建的网络进行训练figure;%创建一个新的绘图窗口plotpv(X,O);%在坐标图中绘制测试数据plotpc(net.iw{1,1},net.b{1,1});%在坐标轴中绘制分类线-6-训练误差曲线训练后的分类net=newp([-301;-0.540],1,’hardlim’,’learnpn’);%使用标准化感知器学习规则-7-误差曲线例三、线性不可分的输入向量给出输入向量和期望输出向量:110.5,10.5XO,220.5,10.5XO;330.3,00.4XO,440,01.1XO,550.6,00.1XO-8-测试数据图X=[-0.5-0.50.30-0.6;-0.50.5-0.41.10.1];O=[11000];net=newp([-0.51;-0.51],1);net.trainParam.epochs=50;net=train(net,X,O);figure;plotpv(X,O);plotpc(net.iw{1,1},net.b{1,1});-9-误差曲线训练后的分类3、程序设计语言实现感知器网络的类图-10-三、原理实现与结果1、将上述代码自行敲入Matlab编程环境,切勿采用拷贝方式,否则效果很差!观察实验结果将自身感受写入实验报告中。2、根据类图写出实现代码并判断下列样本的线性可分问题。第一类样本:151X、273X、332X、454X第二类样本:500X、613X、72.53X、830X、922X、100.71X1143X
本文标题:实验2、感知器神经网络实验指导
链接地址:https://www.777doc.com/doc-4255764 .html