perceptronor.m

来自「支持向量机的手写数字识别,绝对原创,识别率100%」· M 代码 · 共 50 行

M
50
字号

samples = [0, 0,-1;                                                 %测试矩阵 
           0, 1, 1;
           1, 0, 1;
           1, 1, 1];                              
w = [1,1,1]';                                                       %初始化权值向量 
answer = samples * w;                                               %测试感知器输出
steps = 0.4;                                                        %初始化步长
while ~all(answer > 0)
    for t = 1:4
        answer(t) = samples(t,:) * w;                   
        if answer(t) <= 0
           w = w + steps *  samples(t,:)';
        end
    end
    answer = samples * w;
end    
if w(2) == 0                                                        % 画图
   Ya = [-2:0.05:2]; 
   Xa = -w(3)/w(1) * ones(1,length(Xa));
else
   Xa = [-2:0.05:2]; 
   Ya = (-w(3) - w(1) * Xa) / w(2);
end
plot(samples(:,1),samples(:,2),'b p');axis([-1 2 -1 2]);
hold on, plot(Xa,Ya,'b--');title('用感知器模拟或运算');























⌨️ 快捷键说明

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