example21a.m

来自「是一个用MATLAB编的一个系统」· M 代码 · 共 46 行

M
46
字号
%Perc1a
%%===============
%%===============
%%%and of pecerptron
figure('name','训练过程图示','numbertitle','off');

P=[0 0 1 1;0 1 0 1];   T=[0 0 0 1];
%initialization
[R,Q]=size(P);   [S,Q]=size(T);
W0=rands(S,R);    B0=rands(S,1);
W=W0;B=B0;
max_epoch=str2num(max_epoch);                 %设置最大循环次数
%expressions
plotpc(W,B); 
A=hardlim(W*P,B);
for epoch=1:max_epoch
   if all(A==T)
      epoch=epoch-1;
      break
   end
%learning
[dW,dB]=learnp(P,A,T);
W=W+dW;
B=B+dB;
%output after learning
A=hardlim(W*P,B);
plotpv(P,T);                   %在输入矢量空间绘制输入矢量和目标矢量的位置
axis([-1 2 -1 2])              %定义横坐标和纵坐标长度
title('Input&Output  Graph');    %写图标题
xlabel('p1');                   %写横轴标题
ylabel('p2');                   %写纵轴标题
hold on                         %当前图形模式打开
plotpc(W,B);                    %绘制分类线

linehandle=findobj(gca,'type','line');
set(linehandle,'LineStyle','--','Color','r');   %设定分类线的线型和颜色

pause

clc
hold on
end 
plotpc(W,B);                    %绘制最终分类线

hold off                        %关闭 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?