📄 perception.m
字号:
%%%%%%%%%%%%%%感知器算法%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% command window中输出:每步迭代之后更新得到的权向量,
% 以及最终得到正确分类的权向量.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clc;
clear;
x1=[0 1 1 1;
0 0 0 1;
0 0 1 0]; %w1类样本
x2=[0 0 0 -1;
0 -1 -1 -1;
-1 -1 0 -1]; %w2类样本
x1=[x1;ones(1,size(x1,2))];
x2=[x2;-ones(1,size(x2,2))];
x=[x1,x2];
C=1; %校正增量
N=size(x,2); %样本总数
w=[0 0 0 0]'; %初始权向量
n=0;
index=1;
count=0;
while n<N
count=count+1;
if w'*x(:,index)<=0
w=w+C*x(:,index);
n=0;
index=mod((index),N)+1;
else
n=n+1;
index=mod((index),N)+1;
end
fprintf('The %d iteration:\n',count);
w
end
fprintf('Iteration is finished.\nThe result is:\n');
w
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -