神經(jīng)網(wǎng)絡預測編碼器的設計及應用
1 BP網(wǎng)絡結構及其算法
反向傳播算法又稱誤差后向傳播算法(Error Back Propagation Algorithm),它是用來訓練多層前饋網(wǎng)絡的一種學習算法。是一種有監(jiān)督的學習算法。通常稱用誤差反向傳播算法訓練的網(wǎng)絡叫BP網(wǎng)絡。如圖1所示,該BP網(wǎng)絡具有一個輸入層,兩個隱含層(也稱中間層)和一個輸出層組成,各層之間實行全連接。BP神經(jīng)網(wǎng)絡的隱含層通常具有多個,其傳輸函數(shù)常常采用sigmoid函數(shù),而輸入輸出層則采用線性傳輸函數(shù)。
誤差反向傳播算法的主要思想是把學習過程分為兩個階段:第一階段(正向傳播過程),給出輸入信息通過輸入層經(jīng)隱含層逐層處理并計算每個單元的實際輸出值;第二階段(反向傳播過程),若在輸出層未能得到期望的輸出值,則逐層遞歸地計算實際輸出與期望輸出之差值(即誤差),以便根據(jù)此誤差調節(jié)權值。誤差反向傳播算法的性能函數(shù)是均方誤差。其算法流程如圖2所示。
2 神經(jīng)網(wǎng)絡預測編碼器的設計及應用
2.1 預測器層數(shù)
kolmogorov定理(即映射網(wǎng)絡存在定理),一個隱含層的網(wǎng)絡,如果隱含層的功能函數(shù)是連續(xù)函數(shù),則網(wǎng)絡輸出可以逼近一個連續(xù)函數(shù)。具體的說,設網(wǎng)絡有p個輸入,q個輸出,則其作用可以看作是由p維歐式空間到q維歐式空間的一個非線性映射。
Kolmogorov定理表明含一個隱含層的BP前饋網(wǎng)絡是一種通用的函數(shù)逼近器,為逼近一個連續(xù)函數(shù),一個隱含層是足夠的。當要學習不連續(xù)函數(shù)時,則需要兩個隱含層,即隱含層數(shù)最多兩層即可,Lippmann等也給出了同樣的結論。通過參考以上定理、規(guī)則,并結合試驗最終確定本文實現(xiàn)的神經(jīng)網(wǎng)絡預測器采用兩個隱含層,一個輸入層和一個輸出層的BP網(wǎng)絡。
2.2 節(jié)點數(shù)
網(wǎng)絡的輸入與輸出節(jié)點數(shù)是由實際問題的本質決定的,與網(wǎng)絡性能無關。而當像素間距離超過5時,像素之間的相關性就很小,并且在圖像的某一個區(qū)域內,色度信息不會突變,因此,本文設計的BP神經(jīng)網(wǎng)絡預測器利用與當前像素相鄰的9個像素來預測當前像素,這樣不僅可以利用同一色分量內像素之間的相關性,也可以利用不同色通道之間像素的相關性進行預測。鄰域像素的選擇如圖3所示。
評論