ann 人工神經前饋網路
實現步驟
學習過程:
1) 設定網路引數
2) 以均勻隨機初始化加權值矩陣w,每個神經結點的偏權值向量 。
3) 輸入乙個訓練樣本的輸入向量x與目標輸出向量t
4) 計算每層網路的輸出值向量y
5) 從輸出層開始計算誤差並反傳
6) 計算加權值矩陣修正量 w
7) 更新加權值矩陣w,偏權值向量
8) 重複步驟3至步驟7,直至收斂或執行一定數目的學習迴圈
**步驟
1) 輸入測試樣本的輸入向量x,得出輸出向量y,得出類別向量y』
2) 比較類別向量y』,目標向量t,得出計算的準確率
matlab實現:
clc;
clear;
traininput=load('f:/dataset/synth.tr');
traintarget=traininput(:,3);
traininput=traininput(:,[1,2]);
traininput=traininput';
traintarget=traintarget';
testinput=load('f:/dataset/synth.te');
testtarget=testinput(:,3);
testinput=testinput(:,[1,2]);
testinput=testinput';
testtarget=testtarget';
net=newff([-1.5 1.5; -1.5 1.5],traintarget,[3,3],,'traingdm');
net.trainparam.goal=0.000001;%神經網路訓練的目標誤差
net.trainparam.epochs=10000; %最大迭代次數
net.trainparam.lr=0.01; %學習效率
net.trainparam.max_fail = 15;
net=train(net,traininput,traintarget);
rst=sim(net,testinput);
[m,n]=size(rst);
success=0;
for i=1:m
for j=1:n
if(rst(i,j)<0.5 && testtarget(i,j)==0)
success=success+1;
endif(rst(i,j)>=0.5 && testtarget(i,j)==1)
success=success+1;
endend
end
accuracy=success/n
神經網路 前饋網路 BP網路 BP演算法
一種單向多層的網路結構,資訊從輸入層開始,逐層向乙個方向傳遞,一直到輸出層結束。前饋是指輸出入方向是前向,此過程不調整權值。神經元之間不存在跨層連線 同層連線,輸入層用於資料的輸入,隱含層與輸出層神經元對資料進行加工。英語 backpropagation,縮寫為bp 是 誤差反向傳播 的簡稱,是一種...
人工神經網路(ANN)
參考資料 從函式上來看,神經網路是回歸方程的級聯疊加,用來逼近目標函式的,本質是一種模擬特徵與目標之間的真實關係函式的模型 乙個有向拓撲,每層有若干節點,節點間有邊,邊上有權值。輸入層隱藏層 多層 後層是前層各節點值的線性組合的函式,即y f x0 w1x1 w2x2 wnxn 線性組合的係數就是邊...
人工神經網路ANN
一 基本概念 ann artificial neural network前饋神經網路的縮寫 二 模型構建 2.1 神經元 2.2 啟用函式 意義 啟用函式是用來讓給神經網路加入非線性因素的,因為線性模型的表達能力不夠。如果沒有啟用函式,那麼該網路僅能表達線性對映,此時即便有再多的隱藏層,其整個網路跟...