神經網絡-感知基“與運算”代碼

close all;
clear;
W = [rand(1) rand(1)];b=0;%隨機設置初始權值與閾值
p = [0 0;0 1;1 0;1 1];%p,t爲給定的訓練樣本,p爲輸入,t爲對應的輸出
t = [0;0;0;1];
a1=[0,0,0,0];i=1;
%訓練過程傳遞函數爲階躍函數
while 1>0
    a = hardlim(p(i,1:2)*W'+b);
    e = t(i,1)-a;
    W = W+e*p(i,1:2);
    b = b+e;
    a1 = hardlim(p(1:4,1:2)*W'+b);
    if all(a1==t)
        break;
    elseif i < 4
        i = i+1;
    else
        i = 1;
    end
end
%網絡輸出
W
a1 = hardlim(p(1:4,1:2)*W'+b)

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章