神經網絡分類算法 數據挖掘

神經網絡分類介紹:

      神經網絡就是一組相互連接的輸入輸出單元,這些單元之間的每個連接都關聯一個權重。在網絡學習階段,網絡通過調整權重來實現輸入樣本與其相應(正確)類別的對應。由於神經網絡學習主要是針對其中的連接權重進行的,因此神經網絡的學習有時也稱爲連接學習;神經網絡的優點就是對噪聲數據有較好適應能力,並且對未知數據也具有較好的預測分類能力;

多層神經網絡如圖-4.9 所示,它包含兩層處理單元(除輸入層外);同樣包含兩個隱層的神經網絡稱爲三層神經網絡,如此等等。該網絡是前饋的,即每一個反饋只能發送到前面的輸出層或隱含層。它是全連接的,即每一個層中單元均與前面一層的各單元相連接。後傳方法通過不斷處理一個訓練樣本集,並將網絡處理結果與每個樣本已知類別相比較所獲誤差,來幫助完成學習任務。

 

下面就以一個案例爲準就行說明;以第一個訓練元祖X={1,0,1} 其類標號爲 1


第一步:初始化network的所有權重和偏倚;網絡的權重一般初始爲小隨機數(例如 -1.0 到1.0),具體初始數據如下:


第二步:在終止循環條件下循環每個訓練元祖,設X={1,0,1},其類標號Y爲1;

第三步:循環輸入單元,輸入單元的輸入=輸出,及I₁=O₁=1;I₂=O₂=0 ; I₃=O₂=1

第四部:計算隱藏層或輸出層的輸入和輸出;

輸入公式見下方:


故可以求輸入I₄= I₁*W₁₄+I₂*W₂₄+I₃*W₃₄+θ₄=1*0.2+0*0.4+1*(-0.5)+(-0.4)=-0.7

輸出公式見下方:


  O₄=1+(1+E[0.7])=0.332;

按照輸入和輸出公式,可以分別求出4/5/6節點的輸入和輸出見下方:

 

第五部:計算誤差,對於隱藏節點和輸出節點的誤差計算公式不一樣,見下方:

輸出層誤差公式:


隱藏層誤差公式


按照以上公式可以求 :(T爲類標誌)  

Err6 = 0.474*(1-0.474)*(1-0.474)=0.1311

Err4 = 0.332*(1-0.332)*Err6*W46=0.332*(1-0.332)*(-0.1311)*(-0.3)=-0.02087;

計算結果分別如下:


第五部:更新權重和偏倚值,公式如下:


上面就是更新權重的公式,設置 L = 0.9,以W₁₄更新爲例子說明:△W₁₄=0.9*(-0.0087)*1=-0.00783  故 W₁₄=△W₁₄+ W₁₄=0.19217

最後各個更新數據如下:


以上就是一個元祖的過程,訓練時候循環大量元祖,更新權重和偏倚值,當達到跳出循環元祖條件時候,中斷訓練;

中斷訓練的條件如下:









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