對偶傳播神經網路(counter-propagation network,cpn)能儲存二進位制或模擬值的模式對,因此這種網路模型也可用於聯想儲存、模式分類、函式逼近、統計分析和資料壓縮等功能。
對偶傳播神經網路的拓撲結構跟誤差反向傳播(bp)網路的一樣,不同之處在於,cpn採用兩個階段來分別訓練競爭層的內星權向量和外星權向量,即第一階段完全不顧輸出層,採用sofm的方法來訓練競爭層的內星權向量,第二階段採用有導師的widrow-hoff規則(最小均方規則lms)來訓練競爭層的外星權向量。
cpn演算法步驟
第一階段採用競爭學習演算法對輸入層到競爭層的權向量進行訓練。
將內星權值隨機賦予0~1上的值,歸一化;對輸入向量也進行歸一化。
根據輸入向量得到獲勝神經元。
cpn不設優勝領域,只有獲勝神經元的內星權向量可以調整
。獲勝神經元的輸出為1,其他為0.學習率是隨時間下降的退火函式。
如果學習率不為0則回到第1步。
第二階段採用外星學習演算法(由於競爭層的輸出為1,所以widrow-hoff學習演算法退化為外星學習演算法),對競爭層到輸出層的權向量進行訓練。
隨機初始化競爭層到輸出層的權向量。
根據輸入得到輸出,又有期望輸出,可以調整外星權向量:
又因為yj為1,所以widrow-hoff學習演算法退化為外星學習演算法:
兩階段學習的結果,是使內星權向量向當前的輸入模式靠攏,外星權向量向期望輸出靠攏。
雙獲勝神經元cpn網
對標準cpn網中競爭層上只允許有乙個神經元獲勝。作為一種改進,在完成訓練後的執行階段允許隱藏層有兩個神經元同時獲勝,這兩個神經元的輸出均為1,其他為0。這實際上相當於在標準cpn網中兩個輸入模式得到的輸出疊加後的效果。因此雙獲勝神經元cpn網能對復合輸入模式包含的所有訓練樣本對應的輸出進行線性疊加,這種能力對於影象的疊加等應用是十分合適的。
雙向cpn網
將cpn網的輸入層和輸出層各自分為兩組(x1,x2和y1,y2),訓練時還按照一組來訓練。這樣可以得到兩個對映函式:y1=f(x1),y2=f(x2)。當輸入(x1,0)時,得到(y1,0);當輸入(0,x2)時得到(0,y2)。當兩個對映函式互逆時,雙向cpn網路可用於壓縮和解壓縮,也可以用它實現互聯想。
神經網路反向傳播理解
訓練神經網路的目標是 優化代價函式,使得代價函式找到乙個 全域性最小值或者區域性最小值。不管使用何種梯度下降演算法 bgd,sgd adam 都需要先算出各個引數的梯度。反向傳播的作用 就是快速算出所有引數的偏導數。求導數通常可以分為兩類,一類是直接用定義,第二類是公式法 包括鏈式法 定義法 定義法...
神經網路的正向傳播和反向傳播
顧名思義全連線神經網路便是指相鄰網路層的各神經元是全連線的,如下圖 xi 代表輸入層第i個資料 wmn jw j wmnj 代表j層第m位置和j 1層第n位置間的權重,j是第幾層網路 zij z i j zij 代表神經元的輸入和,yij y i j yij 代表第j隱藏層第i個神經元的輸出 k j...
神經網路前向傳播與反向傳播
神經網路 神經網路可以理解為乙個輸入x到輸出y的對映函式,即f x y,其中這個對映f就是我們所要訓練的網路引數w,我們只要訓練出來了引數w,那麼對於任何輸入x,我們就能得到乙個與之對應的輸出y。只要f不同,那麼同乙個x就會產生不同的y,我們當然是想要獲得最符合真實資料的y,那麼我們就要訓練出乙個最...