用感知器进行分类

用单层感知器对数据进行分类处理:

%单层感知器
%输入向量
P=[1.24 1.36 1.38 1.38 1.38 1.40 1.48 1.54 1.56 1.14 1.18 1.2 1.26 1.28 1.3;
    1.72 1.74 1.64 1.82 1.9 1.7 1.82 1.82 2.08 1.78 1.96 1.86 2.0 2.0 1.96];
%目标向量
T=[1 1 1 1 1 1 1 1 1 0 0 0 0 0 0];
plotpv(P,T);
%建立感知器
net=newp([0,3;0,3],1);
%初始化感知器
net=init(net);
net.iw{1,1};
net.b{1};
linehandle=plotpc(net.iw{1,1},net.b{1});
E=1;
%修正感知器网络
while(sse(E))
    %返回学习后的网络 Y为输出 E为误差
    [net,Y,E]=adapt(net,P,T);
    %分界线绘制函数
    linehandle=plotpc(net.iw{1},net.b{1},linehandle);
    %更新分割线
    drawnow;
end;
%用训练好的感知器对未知类别样本分类
p=[1.24,1.28,1.4;1.8,1.84,2.04];
%开始模拟
a=sim(net,p);
plotpv(p,a);
ThePoint=findobj(gca,'type','line');
set(ThePoint,'Color','red');
hold on;
plotpv(P,T);
plotpc(net.iw{1},net.b{1});
hold off;
disp('End of percept');

在这里插入图片描述

%单层感知器
%输入向量
P=[1.24 1.36 1.38 1.38 1.38 1.40 1.48 1.54 1.56 1.14 1.18 1.2 1.26 1.28 1.3;
    1.72 1.74 1.64 1.82 1.9 1.7 1.82 1.82 2.08 1.78 1.96 1.86 2.0 2.0 1.96];
%目标向量
T=[1 1 1 1 1 1 1 1 1 0 0 0 0 0 0];
%建立感知器
net=newp([0,3;0,3],1);
%网络训练次数定义
net.adaptParam.passes=100;
%返回自适应的神经网络
net=adapt(net,P,T);
%输出仿真结果
Y=sim(net,P)
%用训练好的感知器对未知类别样本分类
p=[1.24,1.28,1.4;1.8,1.84,2.04];
%开始模拟
a=sim(net,p)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Mr.zwX

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值