单层感知器的MATLAB实现

P= [-0.4 -0.5 0.6; 0.9 0 0.1]; %给定训练样本数据

T= [1 1 0]; %给定样本数据所对应的类别,用10来表示两种类别

%创建一个有两个输入、样本数据的取值范围都在[-11]之间,并且

%网络只有一个神经元的感知器神经网络

net=newp([-1 1;-1 1],1); 

net.trainParam.epochs = 20; %设置网络的最大训练次数为20

net=train(net,P,T);        %使用训练函数对创建的网络进行训练

Y=sim(net,P)               %对训练后的网络进行仿真

E1=mae(Y-T)        %计算网络的平均绝对误差,表示网络错误分类

Q=[0.6 0.9 -0.1; -0.1 -0.5 0.5]; %检测训练好的神经网络的性能

Y1=sim(net,Q)        %对网络进行仿真,仿真输出即为分类的结果

figure;              %创建一个新的绘图窗口

plotpv(Q,Y1);        %在坐标图中绘制测试数据

plotpc(net.iw{1},net.b{1}) %在坐标图中绘制分类线



转载自 http://blog.csdn.net/henhen2002/article/details/5416574

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值