① 神經網路演算法三大類
具體如下:
1、多層感知機,一種前饋人工神經網路模型,其將輸入的多個數據集映射到單一的輸出的數據集上,也稱做喚攜為全連接神經網路。2、卷積神經網路核心是卷積層,是一類包含卷積計算且具有深度結構的前饋神經網路演算法之一。
3、殘差收縮網路,殘差收縮網路是卷積神經網路的改進,引入了軟閾值純伏化,更適合強噪數據。屬鏈毀於深度殘差網路(DeepResialNetwork,ResNet)的新型改進形式。人工神經網路(ArtificialNeuralNetwork,即ANN),是20世紀80年代以來人工智慧領域興起的研究熱點。它從信息處理角度對人腦神經元網路進行抽象,建立某種簡單模型,按不同的連接方式組成不同的網路。在工程與學術界也常直接簡稱為神經網路或類神經網路。
② 神經網路——BP演算法
對於初學者來說,了解了一個演算法的重要意義,往往會引起他對演算法本身的重視。BP(Back Propagation,後向傳播)算陸襲法,具有非凡的歷史意義和重大的現實意義。
1969年,作為人工神經網路創始人的明斯基(Marrin M insky)和佩珀特(Seymour Papert)合作出版了《感知器》一書,論證了簡單的線性感知器功能有限,不能解決如「異或」(XOR )這樣的基本問題,而且對多層網路也持悲觀態度。這些論點給神經網路研究以沉重的打擊,很多科學家紛紛離開這一領域,神經網路的研究走向長達10年的低潮時期。[1]
1974年哈佛大學的Paul Werbos發明BP演算法時,正值神經外網路低潮期,並未受到應有的重視。[2]
1983年,加州理工學院的物理學家John Hopfield利用神經網路,在旅行商這個NP完全問題的求解上獲得當時最好成績,引起了轟動[2]。然而,Hopfield的研究成果仍未能指出明斯基等人論點的錯誤所在,要推動神培判經網路研究的全面開展必須直接解除對感知器——多層網路演算法的疑慮。[1]
真正打破明斯基冰封魔咒的是,David Rumelhart等學者出版的《平行分布處理:認知的微觀結構探索》一書。書中完整地提出了BP演算法,系統地解決了多層網路中隱單元連接權的學習問題,並在數學上給出了完整的推導。這是神經網路發展史上的里程碑,BP演算法迅速走紅,掀起了神經網路的第二次高潮。[1,2]
因此,BP演算法的歷史意義:明確地否定了明斯基等人的錯誤觀點,對神經網路第二次高潮具有決定性意義。
這一點是說BP演算法在神經網路領域中的地位和意義。
BP演算法是迄今最成功的神經網路學習演算法,現實任務中使用神經網路時,大多是在使用BP演算法進行訓練[2],包括最近炙手可熱的深度學習概念下的卷積神經網路(CNNs)。
BP神經網路是這樣一種神經網路模型,它是由一個輸入層、一個輸出層和一個或多個隱層構成,它的激活函數採用sigmoid函數,採用BP演算法訓練的多層前饋神經網路。
BP演算法全稱叫作誤差反向傳播(error Back Propagation,或早中兄者也叫作誤差逆傳播)演算法。其演算法基本思想為:在2.1所述的前饋網路中,輸入信號經輸入層輸入,通過隱層計算由輸出層輸出,輸出值與標記值比較,若有誤差,將誤差反向由輸出層向輸入層傳播,在這個過程中,利用梯度下降演算法對神經元權值進行調整。
BP演算法中核心的數學工具就是微積分的 鏈式求導法則 。
BP演算法的缺點,首當其沖就是局部極小值問題。
BP演算法本質上是梯度下降,而它所要優化的目標函數又非常復雜,這使得BP演算法效率低下。
[1]、《BP演算法的哲學思考》,成素梅、郝中華著
[2]、《機器學習》,周志華著
[3]、 Deep Learning論文筆記之(四)CNN卷積神經網路推導和實現
2016-05-13 第一次發布
2016-06-04 較大幅度修改,完善推導過程,修改文章名
2016-07-23 修改了公式推導中的一個錯誤,修改了一個表述錯誤
③ 多層前饋網路模型及BP演算法
多層前饋網中,以單隱層網的應用最為普遍,如圖6.1所示。習慣上將其稱為三層前饋網或三層感知器,所謂三層即輸入層、隱層和輸出層。
圖6.1 三層前饋神經網路結構
Fig.6.1 BP neural network structure
三層前饋網中,輸入向量為X=(x1,x2,…,xi,…,xn)T,如加入x0=-1,可為輸出層神經元引入閾值;隱層輸出向量為Y=(y1,y2,…,yl,…,ym)T,如加入y0=-1,可為輸出層神經元引入閾值;輸出層輸出向量為O=(o1,o2,…,ok,…,ol)T。輸入層到隱層之間的權值陣用V表示,V=(V1,V2,…,Vj,…,Vm),其中列向量Vj為隱層第j個神經元對應的權向量;隱層到輸出層之間的權值矩陣用W 表示,W=(W1,W2,…,Wk,…,Wl),其中列向量Wk為輸出層第k個神經元對應的權向量。下面分析各層信號之間的數學關系。
輸出層:
ok=f(netk)k=1,2,…,ι(6-1)
煤層開采頂板導水裂隙帶高度預測理論與方法
隱層:
yj=f(netj)j=1,2,…,m(6-3)
煤層開采頂板導水裂隙帶高度預測理論與方法
以上兩式中,轉移函數f(x)均為單極性Sigmoid函數
煤層開采頂板導水裂隙帶高度預測理論與方法
f(x)具有連續、可導的特點,且有
煤層開采頂板導水裂隙帶高度預測理論與方法
根據應用需要,也可以採用雙極性Sigmoid函數(或稱雙曲線正切函數)
煤層開采頂板導水裂隙帶高度預測理論與方法
式6-1~式6-6共同構成了三層前饋網的數學模型。
BP學習演算法中按以下方法調整其權重與誤差:
當網路輸出與期望輸出不相等時,存在輸出誤差E,定義如下:
煤層開采頂板導水裂隙帶高度預測理論與方法
將以上誤差定義式展開到隱層,
煤層開采頂板導水裂隙帶高度預測理論與方法
進一步展開到輸入層,
煤層開采頂板導水裂隙帶高度預測理論與方法
由上式可以看出,網路輸入誤差是各層權值ωjk、υij的函數,因此調整權值可改變誤差E。
顯然,調整權值的原則是使誤差不斷減小,因此權值的調整量與誤差的負梯度成正比,即
煤層開采頂板導水裂隙帶高度預測理論與方法
煤層開采頂板導水裂隙帶高度預測理論與方法
式中負號表示梯度下降,常數η∈(0,1)表示比例系數,在訓練中反映了學習速率。可以看出BP法屬於δ學習規則類,這類演算法常被稱為誤差的梯度下降(GradientDescent)演算法。