矩陣論在神經(jīng)網(wǎng)絡(luò)中的應(yīng)用_第1頁
矩陣論在神經(jīng)網(wǎng)絡(luò)中的應(yīng)用_第2頁
矩陣論在神經(jīng)網(wǎng)絡(luò)中的應(yīng)用_第3頁
矩陣論在神經(jīng)網(wǎng)絡(luò)中的應(yīng)用_第4頁
矩陣論在神經(jīng)網(wǎng)絡(luò)中的應(yīng)用_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、河北大學(xué)2014級研究生矩陣論論文 矩陣論論文論文題目:矩陣微分在BP神經(jīng)網(wǎng)絡(luò)中的應(yīng)用姓 名:崔義新學(xué) 號:20140830院(系、部):數(shù)學(xué)與信息技術(shù)學(xué)院專 業(yè):數(shù)學(xué)班 級:2014級數(shù)學(xué)研究生導(dǎo)師:花強(qiáng)完成時間: 2015 年 6 月摘 要矩陣微分是矩陣論中的一部分,是實(shí)數(shù)微分的擴(kuò)展和推廣.因此,矩陣微分具有與實(shí)數(shù)微分的相類似定義與性質(zhì).矩陣微分作為矩陣論中的基礎(chǔ)部分,在許多領(lǐng)域都有應(yīng)用,如矩陣函數(shù)求解,神經(jīng)網(wǎng)絡(luò)等等.BP網(wǎng)絡(luò),即反向傳播網(wǎng)絡(luò)(Back-Propagation Network)是一種多層前向反饋神經(jīng)網(wǎng)絡(luò),它是將W-H學(xué)習(xí)規(guī)則一般化,對非線性可微分函數(shù)進(jìn)行權(quán)值訓(xùn)練的多層網(wǎng)絡(luò).

2、 它使用最速下降法,通過反向傳播來不斷調(diào)整網(wǎng)絡(luò)的權(quán)值和閾值,使網(wǎng)絡(luò)的誤差平方和最小.在其向前傳播的過程中利用了矩陣的乘法原理,反傳的過程中則是利用最速下降法,即沿著誤差性能函數(shù)的負(fù)梯度方向進(jìn)行,因此利用了矩陣微分.關(guān)鍵詞:矩陣微分;BP神經(jīng)網(wǎng)絡(luò);前 言 矩陣微分(Matrix Differential)也稱矩陣求導(dǎo)(Matrix Derivative),在機(jī)器學(xué)習(xí)、圖像處理、最優(yōu)化等領(lǐng)域的公式推導(dǎo)過程中經(jīng)常用到.本文將對各種形式下的矩陣微分進(jìn)行詳細(xì)的推導(dǎo). BP(Back Propagation)神經(jīng)網(wǎng)絡(luò)是1986年由Rumelhart和McCelland為首的科學(xué)家小組提出,是一種按誤差逆?zhèn)?/p>

3、播算法訓(xùn)練的多層前饋網(wǎng)絡(luò),是目前應(yīng)用最廣泛的神經(jīng)網(wǎng)絡(luò)模型之一.BP網(wǎng)絡(luò)能學(xué)習(xí)和存貯大量的輸入-輸出模式映射關(guān)系,而無需事前揭示描述這種映射關(guān)系的數(shù)學(xué)方程.它的學(xué)習(xí)規(guī)則是使用最速下降法,通過反向傳播來不斷調(diào)整網(wǎng)絡(luò)的權(quán)值和閾值,使網(wǎng)絡(luò)的誤差平方和最小.BP神經(jīng)網(wǎng)絡(luò)模型拓?fù)浣Y(jié)構(gòu)包括輸入層(input)、隱層(hiddenlayer)和輸出層(outputlayer). BP (Back Propagation)神經(jīng)網(wǎng)絡(luò),即誤差反傳誤差反向傳播算法的學(xué)習(xí)過程,由信息的正向傳播和誤差的反向傳播兩個過程組成.輸入層各神經(jīng)元負(fù)責(zé)接收來自外界的輸入信息,并傳遞給中間層各神經(jīng)元;中間層是內(nèi)部信息處理層,負(fù)責(zé)信息

4、變換,根據(jù)信息變化能力的需求,中間層可以設(shè)計為單隱層或者多隱層結(jié)構(gòu);最后一個隱層傳遞到輸出層各神經(jīng)元的信息,經(jīng)進(jìn)一步處理后,完成一次學(xué)習(xí)的正向傳播處理過程,由輸出層向外界輸出信息處理結(jié)果.當(dāng)實(shí)際輸出與期望輸出不符時,進(jìn)入 誤差的反向傳播階段. 誤差通過輸出層,按誤差梯度下降的方式修正各層權(quán)值,向隱層、輸入層逐層反傳.周而復(fù)始的信息正向傳播和 誤差反向傳播過程,是各層權(quán)值不斷調(diào)整的過程,也是神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)訓(xùn)練的過程,此過程一直進(jìn)行到網(wǎng)絡(luò)輸出的誤差減少到可以接受的程度,或者預(yù)先設(shè)定的學(xué)習(xí)次數(shù)為止.1 矩陣的微分1.1 相對于向量的微分的定義定義1 對于n維向量函數(shù),設(shè)函

5、數(shù) 是以向量X為自變量的數(shù)量函數(shù),即以n個變量 xi為自變量的數(shù)量函數(shù).我們將列向量 叫做數(shù)量函數(shù)f對列向量X的導(dǎo)數(shù), 記作 (1.1)例1求函數(shù) 對X的導(dǎo)數(shù) 解:根據(jù)定義 即 1.2相對于矩陣的微分的定義定義2設(shè)函數(shù)是以P×m矩陣A的P×m元素為自變量的數(shù)量函數(shù),簡稱以矩陣A為自變量的數(shù)量函數(shù).例如 定義:P×m矩陣 (1.2)稱為數(shù)量函數(shù)f對矩陣A的導(dǎo)數(shù),記作.例2:求對矩陣的導(dǎo)數(shù),其中向量是定常的,是對稱的.解:根據(jù)定義有即 定義3如果矩陣的每個元素都是t的可微函數(shù),則A(t)關(guān)于t的導(dǎo)數(shù)(微商)定義為: (1.3)1.3復(fù)合函數(shù)的微分公式1 設(shè),則 (1.

6、4)證明:由給定條件有和將上式結(jié)合起來公式2 設(shè),則 (1.5)2 人工神經(jīng)網(wǎng)絡(luò)2.1 人工神經(jīng)網(wǎng)絡(luò)的定義定義4 人工神經(jīng)網(wǎng)絡(luò)是由大量處理單元互聯(lián)組成的非線性、自適應(yīng)信息處理系統(tǒng).它是在現(xiàn)代神經(jīng)科學(xué)研究成果的基礎(chǔ)上提出的,試圖通過模擬大腦神經(jīng)網(wǎng)絡(luò)處理、記憶信息的方式進(jìn)行信息處理.人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Networks, ANN)是一種模仿動物神經(jīng)網(wǎng)絡(luò)行為特征,進(jìn)行分布式并行信息處理的算法數(shù)學(xué)模型.這種網(wǎng)絡(luò)依靠系統(tǒng)的復(fù)雜程度,通過調(diào)整內(nèi)部大量節(jié)點(diǎn)之間相互連接的關(guān)系,從而達(dá)到處理信息的目的.人工神經(jīng)網(wǎng)絡(luò)具有自學(xué)習(xí)和自適應(yīng)的能力,可以通過預(yù)先

7、提供的一批相互對應(yīng)的輸入輸出數(shù)據(jù),分析掌握兩者之間潛在的規(guī)律,最終根據(jù)這些規(guī)律,用新的輸入數(shù)據(jù)來推算輸出結(jié)果,這種學(xué)習(xí)分析的過程被稱為“訓(xùn)練”.2.2 人工神經(jīng)網(wǎng)絡(luò)的模型 由于人工神經(jīng)網(wǎng)絡(luò)是受生物神經(jīng)網(wǎng)絡(luò)的啟發(fā)構(gòu)造而成的,所以在開始討論人工神經(jīng)網(wǎng)絡(luò)之前,有必要首先考慮人腦皮層神經(jīng)系統(tǒng)的組成. 科學(xué)研究發(fā)現(xiàn),人的大腦中大約有100億個生物神經(jīng)元,它們通過60萬億個聯(lián)接聯(lián)成一個系統(tǒng).每個神經(jīng)元具有獨(dú)立的接受、處理和傳遞電化學(xué)信號的能力.這種傳遞經(jīng)由構(gòu)成大腦通信系統(tǒng)的神經(jīng)通路所完成.單個神經(jīng)元處理一個事件需要s,而在硅芯片中處理一事件只需s.但人腦是一個非常高效的結(jié)構(gòu),大腦中每秒每個動作的

8、能量約為J,而當(dāng)今性能最好的計算機(jī)進(jìn)行相應(yīng)的操作需要J.圖1所示是生物神經(jīng)元及其相互聯(lián)接的典型結(jié)構(gòu).圖1:生物神經(jīng)元及其相互聯(lián)接的典型結(jié)構(gòu)  (1) 生物神經(jīng)元主要由樹突、軸突、突觸和細(xì)胞體組成.其中樹突是由細(xì)胞體向外伸出的,有不規(guī)則的表面和許多較短的分支.樹突相當(dāng)于信號的輸入端,用于接受神經(jīng)沖動.(2)軸突是由細(xì)胞體向外伸出的最長的一條分支,即神經(jīng)纖維,相當(dāng)于信號的輸出電纜. (3)突觸是神經(jīng)元之間通過軸突(輸出)和樹突(輸入)相互聯(lián)結(jié)點(diǎn).(4)細(xì)胞體完成電化學(xué)信號整合與處理,當(dāng)胞體中接受的累加刺激超過一個閾值時,胞體就被激發(fā),此時它沿軸突通過樹突向其它神經(jīng)元發(fā)

9、出信號.我們要構(gòu)造一個人工神經(jīng)網(wǎng)絡(luò)系統(tǒng),要從以下三個方面對生物神經(jīng)網(wǎng)絡(luò)進(jìn)行模擬:(1)人工神經(jīng)元(也簡稱為節(jié)點(diǎn))本身的處理能力;(2)節(jié)點(diǎn)與節(jié)點(diǎn)之間連接(人工神經(jīng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu));(3)節(jié)點(diǎn)與節(jié)點(diǎn)之間連接的強(qiáng)度(通過學(xué)習(xí)算法來調(diào)整). 因此,首要任務(wù)是構(gòu)造人工神經(jīng)元模型.對于每一個人工神經(jīng)元來說,它可以接受一組來自系統(tǒng)中其它神經(jīng)元的輸入信號,每圖2:人工神經(jīng)網(wǎng)絡(luò)基本模型個輸入對應(yīng)一個權(quán),所有輸入的加權(quán)和決定該神經(jīng)元的激活狀態(tài).這里,每個權(quán)就相當(dāng)于突觸的“聯(lián)接強(qiáng)度”.基本模型如下圖2.圖中是第i個神經(jīng)元的輸出,它可與其他多個神經(jīng)元通過權(quán)連接:分別指與第i個神經(jīng)元連接的其他神經(jīng)元輸出;分別

10、是指其他神經(jīng)元與第i個神經(jīng)元連接的權(quán)值;是指第i個神經(jīng)元的閾值;是第i個神經(jīng)元的凈輸入;是非線性函數(shù),稱為輸出函數(shù)或激活函數(shù).激活函數(shù)常有以下幾種行放大處理或限制在一個適當(dāng)?shù)姆秶鷥?nèi).典型的激活函數(shù)有符號函數(shù)、階躍函數(shù)、S型函數(shù)等. 目前,已有的人工神經(jīng)網(wǎng)絡(luò)模型至少有幾十種,其分類方法也有多種.例如,若按網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),可分為無反饋網(wǎng)絡(luò)與有反饋網(wǎng)絡(luò);若按網(wǎng)絡(luò)的學(xué)習(xí)方法,可分為有導(dǎo)師的學(xué)習(xí)網(wǎng)絡(luò)和無導(dǎo)師的學(xué)習(xí)網(wǎng)絡(luò);若按網(wǎng)絡(luò)的性能,可分為連續(xù)型網(wǎng)絡(luò)與離散型網(wǎng)絡(luò),或分為確定性網(wǎng)絡(luò)與隨機(jī)型網(wǎng)絡(luò);若按突觸連接的性質(zhì),可分為一階線性關(guān)聯(lián)網(wǎng)絡(luò)與高階非線性關(guān)聯(lián)網(wǎng)絡(luò).2.3 BP人工神經(jīng)網(wǎng)絡(luò)模型1986年Rumelh

11、art,Hinton和Williams完整而簡明地提出一種ANN的誤差反向傳播訓(xùn)練算法(簡稱BP算法),系統(tǒng)地解決了多層網(wǎng)絡(luò)中隱含單元連接權(quán)的學(xué)習(xí)問題,由此算法構(gòu)成的網(wǎng)絡(luò)我們稱為BP網(wǎng)絡(luò).BP網(wǎng)絡(luò)是前向反饋網(wǎng)絡(luò)的一種,也是當(dāng)前應(yīng)用最為廣泛的一種網(wǎng)絡(luò).誤差反傳算法的主要思想是把學(xué)習(xí)過程分為兩個階段:第一階段(正向傳播過程),給出輸入信息通過輸入層經(jīng)隱含層處理并計算每個單元的實(shí)際輸出值;第二階段(反向過程),若在輸出層未能得到期望的輸出值,則逐層遞歸地計算實(shí)際輸出與期望輸出之差值(即誤差),以便根據(jù)此差值調(diào)節(jié)權(quán)值,具體來說,就是可對每一權(quán)重計算出接收單元的誤差值與發(fā)送單元的激活值的積. 

12、基于BP算法的多層前饋型網(wǎng)絡(luò)的結(jié)構(gòu)如圖3所示.圖3:基于BP算法的多層前饋型網(wǎng)絡(luò)的結(jié)構(gòu) 誤差反傳(學(xué)習(xí)算法)期望輸出向量(導(dǎo)師信號)+隱 藏 層信 號 流2.4 BP人工神經(jīng)網(wǎng)絡(luò)基本算法公式推導(dǎo)為了方便理解,不妨設(shè)含有共L層和n個節(jié)點(diǎn)的任意一個三層BP神經(jīng)網(wǎng)絡(luò),每層單位元只接受前一層的輸出信息并輸出給下一層各單元,各單位元的特性為Sigmoid型(它是連續(xù)可微的,且值域在0-1之間).設(shè)給定N個樣本,任一節(jié)點(diǎn)i的輸出為,對某一個輸入為,網(wǎng)絡(luò)的輸出為,節(jié)點(diǎn)i的輸出為。正向傳播過程,對于輸入層單位元一般無計算能力,只是作為傳輸和儲存.現(xiàn)在研究隱藏層,設(shè)輸入層到隱藏層連接矩陣為,當(dāng)輸入第k

13、 個樣本,節(jié)點(diǎn)j的輸入為 (2.1)隱藏層的第j個單元,當(dāng)輸入第k 個樣本時,節(jié)點(diǎn)j的輸出為 其中,f為非線性激活函數(shù),一般取為(0,1)內(nèi)連續(xù)取值Sigmoid函數(shù);為l層神經(jīng)單位元的閾值,表示隱藏層,輸入第k個樣本時,第j個單元節(jié)點(diǎn)的輸入.類似的,輸出層的輸入為 (2.2)對于輸出層的輸出,激活函數(shù)有時采用Sigmoid函數(shù),但有時也會采用純線性函數(shù),在此,我們以純線性函數(shù)為例,則輸出層的輸出為 (2.3)采用的誤差函數(shù)為 (2.4) 其中為單元j的實(shí)際輸出.總誤差為 (2.5) 定義 于是 (2.6)下面分兩種情況來討論: (1)若節(jié)點(diǎn)j為輸出單元,則 (2.7) (2)若節(jié)點(diǎn)j不是輸出

14、單元,則 (2.8)式中是送到下一層(l+1)層的輸入,計算要從(l+1)層算回來.在(l+1)層第m個單元時 (2.9)將式(2.9)代入式(2.8)中,則得 (2.10)總結(jié)上述結(jié)果,有 (2.11)誤差的反向傳播,即首先由輸出層開始逐層計算各層神經(jīng)元的輸出誤差,然后根據(jù)誤差梯度下降法來調(diào)節(jié)各層的權(quán)值和閾值,使修改后的網(wǎng)絡(luò)的最終輸出能接近期望值.根據(jù)誤差梯度下降法依次修正輸出層權(quán)值的修正量,輸出層閾值的修正量,隱含層權(quán)值的修正量,隱含層閾值的修正量.輸出層權(quán)值和閾值調(diào)整公式 隱藏層權(quán)值和閾值調(diào)整公式 2.5 BP人工神經(jīng)網(wǎng)絡(luò)基本算法 BP算法不僅有輸入層節(jié)點(diǎn),輸出層節(jié)點(diǎn),而且有一層或多層隱

15、含節(jié)點(diǎn).對于輸入信息,首先向前傳播到隱含層的節(jié)點(diǎn)上,經(jīng)過各單元的激活函數(shù)(又稱作用函數(shù)、轉(zhuǎn)換函數(shù))運(yùn)算后,把隱含節(jié)點(diǎn)的輸出信息傳播到輸出節(jié)點(diǎn),最后給出輸出結(jié)果.網(wǎng)絡(luò)的學(xué)習(xí)過程由正向和反向傳播兩部分組成.在正向傳播過程中,每一層的神經(jīng)元的狀態(tài)只影響下一層神經(jīng)元網(wǎng)絡(luò).如果輸出層不能得到期望輸出,就是實(shí)際輸出值與期望輸出值之間有誤差,那么轉(zhuǎn)向反向傳播過程,將誤差信號沿原來的連接通路返回,通過修改各層神經(jīng)元的權(quán)值,逐次地向輸入層傳播去進(jìn)行計算,再經(jīng)過正向傳播過程,這兩個過程的反復(fù)運(yùn)用,使得誤差信號最小.實(shí)際上,誤差達(dá)到人們所希望的要求時,網(wǎng)絡(luò)的學(xué)習(xí)過程就結(jié)束.BP算法是在導(dǎo)師指導(dǎo)下,適合于多層神經(jīng)元網(wǎng)

16、絡(luò)的一種學(xué)習(xí),它是建立在梯度下降法的基礎(chǔ)上的.理論證明,含有一個隱含層的BP網(wǎng)絡(luò)可以實(shí)現(xiàn)以任意精度近似任何連續(xù)非線性函數(shù). 具體步驟如下:第一步,數(shù)據(jù)歸一并進(jìn)行網(wǎng)絡(luò)初始化 根據(jù)系統(tǒng)輸入輸出序列(X,Y)確定網(wǎng)絡(luò)輸入層節(jié)點(diǎn)數(shù)n,輸出層節(jié)點(diǎn)數(shù)l,輸入層輸出層的神經(jīng)元個數(shù)分別由函數(shù)輸入和輸出的維數(shù)確定.由實(shí)驗(yàn)經(jīng)驗(yàn)隱含層節(jié)點(diǎn)個數(shù)需要大于輸入層隱層節(jié)點(diǎn)數(shù),設(shè)為m,初始化輸入層、隱層、輸出層之間的連接權(quán)值,初始化隱層閾值,輸出層閾值,給定學(xué)習(xí)速率以及學(xué)習(xí)誤差error;訓(xùn)練次數(shù)maxEpoch,可以根據(jù)訓(xùn)練需要改動;第二步,輸入樣本計算隱含層的輸出值,計算公式為將其作為輸出層的輸入;第三步,計算輸出層的輸出 ;第四步,利用公式計算全局誤差e;第五步,判斷誤差是否達(dá)到預(yù)先設(shè)定的要求或者訓(xùn)練次數(shù)是否達(dá)到最大值,如果是,算法結(jié)束;否則,進(jìn)行第六步.第六步,計算輸出層到隱含層的誤差信號 ;第七步,計算隱含層到輸入層的誤差信號;第八步,調(diào)整計算輸出層到隱含層的權(quán)值和閾值;第九步,調(diào)整計算隱含層到輸入層的權(quán)值和閾值;第十步,輸入下一樣本,依次循環(huán).結(jié)束語人工神經(jīng)網(wǎng)絡(luò),是由大量處理單元(神經(jīng)元)組成的非線性大規(guī)模自適應(yīng)動力系統(tǒng).它具有自組織,自適應(yīng)和自學(xué)習(xí)能力,以及具有非線性、非局域性,非定常性和非凸性等特點(diǎn).它是在現(xiàn)代神經(jīng)科學(xué)研究成果的基礎(chǔ)上提出的,試圖通

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論