📄 feel_point.m
字号:
%感知神经网络分类器,只有两个输入,一个输出神经元.只能实现两类模式的分类(有奇异点(60,20))
%其输出只能取0或1用于简单的分类问题
%**************************************************
%举实例建立网络分类器
p=[-0.5 -0.5 0.3 -0.1 0.2 0.0 0.6 0.8 60;
-0.5 0.5 -0.5 1.0 0.5 -0.9 0.8 -0.6 20]; %给出训练样本点(注意是样本点(-0.5,-0.5),(-0.5,0.5),(0.3,-0.5)...)
T=[1 1 0 1 1 0 1 0 1]; %不同的样本点归为0,1不同的类别
figure(1);
plotpv(p,T); %在图上描绘不同的样本点
net=newp([-1 60;-1 20],1); %建立两输入样本点在"书上为[-1,1]"之间神经元为1的感知神经网络
handle=plotpc(net.iw{1},net.b{1}); %绘制感知器分类线并返回句柄
%*************************************************
%训练网络使权值和阈值达到一定即满足误差sse(E)为零时则停止训练
E=1;
while(sse(E))
[net,Y,E]=adapt(net,p,T); %训练
handle=plotpc(net.iw{1},net.b{1},handle); %训练后画分类线
end
%************************************************
%奇异点存在原始样本点在图中聚集在一个很小范围,很难分辨,现将其局部放大
figure(2);
plotpv(p,T);
plotpc(net.iw{1},net.b{1});
axis([-2 2 -2 2]);
%************************************************
%解决实际问题输入10个测试样本
testpoints=[-0.5 0.3 -0.9 0.4 -0.1 0.2 -0.6 0.8 0.1 -0.4;
-0.3 -0.8 -0.4 -0.7 0.4 -0.6 0.1 -0.5 -0.5 0.3];
a=sim(net,testpoints);
figure(3);
plotpv(testpoints,a);
plotpc(net.iw{1},net.b{1},handle);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -