BP神經(jīng)網(wǎng)絡(luò)講座2016年數(shù)模_第1頁
BP神經(jīng)網(wǎng)絡(luò)講座2016年數(shù)模_第2頁
BP神經(jīng)網(wǎng)絡(luò)講座2016年數(shù)模_第3頁
BP神經(jīng)網(wǎng)絡(luò)講座2016年數(shù)模_第4頁
BP神經(jīng)網(wǎng)絡(luò)講座2016年數(shù)模_第5頁
已閱讀5頁,還剩69頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、人工神經(jīng)網(wǎng)絡(luò)人工神經(jīng)網(wǎng)絡(luò) (Artificial Neural Netwroks -ANN) 數(shù)理學(xué)院:唐志剛數(shù)理學(xué)院:唐志剛一.什么是人工神經(jīng)網(wǎng)絡(luò)v人工神經(jīng)網(wǎng)絡(luò)(ANN)具有自學(xué)習(xí)、自組織、較好的容錯(cuò)性和優(yōu)良的非線性逼近能力。v在實(shí)際應(yīng)用中,80%90%的人工神經(jīng)網(wǎng)絡(luò)模型是采用誤差反傳算法或其變化形式的網(wǎng)絡(luò)模型。二.ANN能干什么?擬合 預(yù)測(cè)分類 (函數(shù)逼近)數(shù)學(xué)近似映射三.神經(jīng)網(wǎng)絡(luò)模型和網(wǎng)絡(luò)結(jié)構(gòu)v神經(jīng)元模型v連接方式v學(xué)習(xí)方式v網(wǎng)絡(luò)結(jié)構(gòu)四、建立和應(yīng)用神經(jīng)網(wǎng)絡(luò)的步驟 (1)網(wǎng)絡(luò)結(jié)構(gòu)的確定包含網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)和每個(gè)神經(jīng)元相應(yīng)函數(shù)的選取;(2)權(quán)值和閾值的確定通過學(xué)習(xí)得到,為有指導(dǎo)的學(xué)習(xí),也就是利

2、用已知的一組正確的輸入、輸出數(shù)據(jù),調(diào)整權(quán)和閾值使得網(wǎng)絡(luò)輸出與理想輸出偏差盡量小;(3)工作階段用帶有確定權(quán)重和閾值的神經(jīng)網(wǎng)絡(luò)解決實(shí)際問題的過程,也叫模擬(simulate)。一、神經(jīng)元模型一、神經(jīng)元模型v大腦可視作為1000多億神經(jīng)元組成的神經(jīng)網(wǎng)絡(luò) 圖1 神經(jīng)元的解剖圖v神經(jīng)元的信息傳遞和處理是一種電化學(xué)活動(dòng)樹突由于電化學(xué)作用接受外界的刺激;通過胞體內(nèi)的活動(dòng)體現(xiàn)為軸突電位,當(dāng)軸突電位達(dá)到一定的值則形成神經(jīng)脈沖或動(dòng)作電位;再通過軸突末梢傳遞給其它的神經(jīng)元從控制論的觀點(diǎn)來看;這一過程可以看作一個(gè)多輸入單輸出非線性系統(tǒng)的動(dòng)態(tài)過程神經(jīng)網(wǎng)絡(luò)基本模型神經(jīng)網(wǎng)絡(luò)基本模型細(xì)胞體突觸軸突樹突圖12.2 生物神經(jīng)元

3、功能模型輸入輸出信息處理電脈沖形成傳輸9 神經(jīng)元模型 從神經(jīng)元的特性和功能可以知道,神經(jīng)元相當(dāng)于一個(gè)多輸入單輸出的信息處理單元,而且,它對(duì)信息的處理是非線性的,人工神經(jīng)元的模型如圖所示:神經(jīng)元的n個(gè)輸入對(duì)應(yīng)的連接權(quán)值net=iiwx閾值輸出激活函數(shù)10 上面的神經(jīng)元模型可以用一個(gè)數(shù)學(xué)表達(dá)式進(jìn)行抽象與概括,從而得到神經(jīng)元的數(shù)學(xué)模型:1njjjofw x神經(jīng)元的網(wǎng)絡(luò)輸入記為net,即 net= 1njjjw x11 有時(shí)為了方便起見,常把-也看成是恒等于1的輸入X0 的權(quán)值,這時(shí)上面的數(shù)學(xué)模型可以寫成:0njjjofw x其中, W0=- ; x0=1 12神經(jīng)元的模型具有以下特點(diǎn):神經(jīng)元是一個(gè)多

4、輸入、單輸出單元。它具有非線性的輸入、輸出特性。它具有可塑性,反應(yīng)在新突觸的產(chǎn)生和現(xiàn)有的神經(jīng)突觸的調(diào)整上,其塑性變化的部分主要是權(quán)值w的變化,這相當(dāng)于生物神經(jīng)元的突出部分的變化,對(duì)于激發(fā)狀態(tài),w取正直,對(duì)于抑制狀態(tài),w取負(fù)值。神經(jīng)元的輸出和響應(yīng)是個(gè)輸入值的綜合作用的結(jié)果。興奮和抑制狀態(tài),當(dāng)細(xì)胞膜電位升高超過閾值時(shí),細(xì)胞進(jìn)入興奮狀態(tài),產(chǎn)生神經(jīng)沖動(dòng);當(dāng)膜電位低于閾值時(shí),細(xì)胞進(jìn)入抑制狀態(tài)。激活函數(shù)激活函數(shù)13 神經(jīng)元的描述有多種,其區(qū)別在于采用了不同的激活函數(shù),不同的激活函數(shù)決定神經(jīng)元的不同輸出特性,常用的激活函數(shù)有如下幾種類型:1.1.閾值型閾值型2.S2.S型型3.3.分段線性分段線性4.4.概

5、率型概率型141.閾值型激活函數(shù) 閾值型激活函數(shù)是最簡(jiǎn)單的,前面提到的M-P模型就屬于這一類。其輸出狀態(tài)取二值(1、0或+1、-1),分別代表神經(jīng)元的興奮和抑制。激活函數(shù)激活函數(shù)當(dāng)f(x)取0或1時(shí),0001)(xxxf,若,若15當(dāng)f(x)取1或-1時(shí),f(x)為下圖所示的sgn(符號(hào))函數(shù)sgn(x)=10( )0 xf xx, 若-1,若激活函數(shù)激活函數(shù)16激活函數(shù)激活函數(shù)2.S型激活函數(shù) 神經(jīng)元的狀態(tài)與輸入級(jí)之間的關(guān)系是在(0,1)內(nèi)連續(xù)取值的單調(diào)可微函數(shù),稱為S型函數(shù)。雙極性S型函數(shù):x21 e( )1=11xxf xee1( )1xf xe單極性S型函數(shù):173.分段線性激活函數(shù)分

6、段線性激活函數(shù)的定義為:激活函數(shù)激活函數(shù)10( )1110 xf xxxx ,若,若,若184.概率型激活函數(shù) 概率型激活函數(shù)的神經(jīng)元模型輸入和輸出的關(guān)系是不確定的,需要一種隨機(jī)函數(shù)來描述輸出狀態(tài)為1或?yàn)?的概率,設(shè)神經(jīng)元輸出(狀態(tài))為1的概率為:激活函數(shù)激活函數(shù)x/T1P=1e(1)(其中,T為溫度函數(shù))19學(xué)習(xí)機(jī)理學(xué)習(xí)機(jī)理 人工神經(jīng)網(wǎng)絡(luò)信息處理可以用數(shù)學(xué)過程來說明,這個(gè)過程可以分為兩個(gè)階段:執(zhí)行階段和學(xué)習(xí)階段。 學(xué)習(xí)是智能的基本特征之一,人工神經(jīng)網(wǎng)絡(luò)最具有吸引力的特點(diǎn)是它能從環(huán)境中學(xué)習(xí)的能力,并通過改變權(quán)值達(dá)到預(yù)期的目的。神經(jīng)網(wǎng)絡(luò)通過施加于它的權(quán)值和閾值調(diào)節(jié)的交互過程來學(xué)習(xí)它的環(huán)境,人工神

7、經(jīng)網(wǎng)絡(luò)具有近似于與人類的學(xué)習(xí)能力,是其關(guān)鍵的方面之一。 20學(xué)習(xí)方法學(xué)習(xí)方法 按照廣泛采用的分類方法,可以將神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)方法歸為三類: 無導(dǎo)師學(xué)習(xí)灌輸式學(xué)習(xí)有導(dǎo)師學(xué)習(xí)21學(xué)習(xí)方法有導(dǎo)師學(xué)習(xí) 有導(dǎo)師學(xué)習(xí)又稱為有監(jiān)督學(xué)習(xí),在學(xué)習(xí)時(shí)需要給出導(dǎo)師信號(hào)或稱為期望輸出。神經(jīng)網(wǎng)絡(luò)對(duì)外部環(huán)境是未知的,但可以將導(dǎo)師看做對(duì)外部環(huán)境的了解,由輸入-輸出樣本集合來表示。導(dǎo)師信號(hào)或期望響應(yīng)代表了神經(jīng)網(wǎng)絡(luò)執(zhí)行情況的最佳效果,即對(duì)于網(wǎng)絡(luò)輸入調(diào)整權(quán)值,使得網(wǎng)絡(luò)輸出逼近導(dǎo)師信號(hào)或期望輸出。 22學(xué)習(xí)方法無導(dǎo)師學(xué)習(xí) 無導(dǎo)師學(xué)習(xí)也稱無監(jiān)督學(xué)習(xí)。在學(xué)習(xí)過程中,需要不斷地給網(wǎng)絡(luò)提供動(dòng)態(tài)輸入信息(學(xué)習(xí)樣本),而不提供理想的輸出,網(wǎng)絡(luò)根

8、據(jù)特有的學(xué)習(xí)規(guī)則,在輸入信息流中發(fā)現(xiàn)任何可能存在的模式和規(guī)律,同時(shí)能根據(jù)網(wǎng)絡(luò)的功能和輸入調(diào)整權(quán)值。 灌輸式學(xué)習(xí) 灌輸式學(xué)習(xí)是指將網(wǎng)絡(luò)設(shè)計(jì)成記憶特別的例子,以后當(dāng)給定有關(guān)該例子的輸入信息時(shí),例子便被回憶起來。灌輸式學(xué)習(xí)中網(wǎng)絡(luò)的權(quán)值不是通過訓(xùn)練逐漸形成的,而是通過某種設(shè)計(jì)方法得到的。權(quán)值一旦設(shè)計(jì)好,即一次性“灌輸給神經(jīng)網(wǎng)絡(luò)不再變動(dòng),因此網(wǎng)絡(luò)對(duì)權(quán)值的”“學(xué)習(xí)”是“死記硬背”式的,而不是訓(xùn)練式的。學(xué)習(xí)規(guī)則學(xué)習(xí)規(guī)則 在神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)中,各神經(jīng)元的連接權(quán)值需按一定的規(guī)則調(diào)整,這種權(quán)值調(diào)整規(guī)則稱為學(xué)習(xí)規(guī)則。下面介紹幾種常見的學(xué)習(xí)規(guī)則。 1.Hebb1.Hebb學(xué)習(xí)規(guī)則學(xué)習(xí)規(guī)則2.Delta2.Delta(

9、)學(xué)習(xí)規(guī)則)學(xué)習(xí)規(guī)則3.LMS3.LMS學(xué)習(xí)規(guī)則學(xué)習(xí)規(guī)則4.4.勝者為王學(xué)習(xí)規(guī)則勝者為王學(xué)習(xí)規(guī)則5.Kohonen5.Kohonen學(xué)習(xí)規(guī)則學(xué)習(xí)規(guī)則6.6.概率式學(xué)習(xí)規(guī)則概率式學(xué)習(xí)規(guī)則242.3學(xué)習(xí)規(guī)則1.Hebb學(xué)習(xí)規(guī)則 當(dāng)神經(jīng)元i與神經(jīng)元j同時(shí)處于興奮狀態(tài)時(shí),在神經(jīng)網(wǎng)絡(luò)中表現(xiàn)為連接權(quán)增加 。根據(jù)該假設(shè)定義權(quán)值調(diào)整的方法,稱為Hebb學(xué)習(xí)規(guī)則。Hebb學(xué)習(xí)規(guī)則的數(shù)學(xué)描述: 假設(shè)oi(n)和oj(n)是神經(jīng)元i和j在時(shí)刻n的狀態(tài)反應(yīng),Wij(n)表示時(shí)刻n時(shí),連接神經(jīng)元i和神經(jīng)元j的權(quán)值,Wij(n)表示從時(shí)刻n到時(shí)刻n+1時(shí)連接神經(jīng)元i和神經(jīng)元j權(quán)值的改變量,則 ijijo n on=wnw

10、n+1w=wnnijijij() ( )+( )( ) ( )( ) 其中,是正常數(shù),它決定了在學(xué)習(xí)過程中從一個(gè)步驟到另一個(gè)步驟的學(xué)習(xí)速率,稱為學(xué)習(xí)效率252.3學(xué)習(xí)規(guī)則2.Delta()學(xué)習(xí)規(guī)則 Delta學(xué)習(xí)規(guī)則是最常用的學(xué)習(xí)規(guī)則,其要點(diǎn)是通過改變神經(jīng)元之間的連接權(quán)來減小系統(tǒng)實(shí)際輸出與理想輸出的誤差。假設(shè)n時(shí)刻輸出誤差準(zhǔn)則函數(shù)如下: 2Kkkk = 11E =yon2(- () ) 其中, Ok=f(netk)為實(shí)際輸出;yk代表理想輸出;W是網(wǎng)絡(luò)的所有權(quán)值組成權(quán)矩陣W=(wij);K為輸出個(gè)數(shù)。 使用梯度下降法調(diào)整權(quán)值W,使誤差準(zhǔn)則函數(shù)最小,得到W的修正Delta規(guī)則為:ijijjiwn

11、+1 =wno注:Delta學(xué)習(xí)規(guī)則只適用于線性可分函數(shù),無法用于多層網(wǎng)絡(luò)262.3學(xué)習(xí)規(guī)則3.LMS學(xué)習(xí)規(guī)則 LMS學(xué)習(xí)規(guī)則又稱為最小均方差規(guī)則,其學(xué)習(xí)規(guī)則為: ijijiw=yoo注:LMS學(xué)習(xí)規(guī)則可以看成是Delta學(xué)習(xí)規(guī)則的一個(gè)特殊情況。 該學(xué)習(xí)規(guī)則具有學(xué)習(xí)速度快和精度高的特點(diǎn),權(quán)值可以初始化為任何值。272.3學(xué)習(xí)規(guī)則4.勝者為王學(xué)習(xí)規(guī)則 勝者為王(Winner-Take-All)學(xué)習(xí)規(guī)則是一種競(jìng)爭(zhēng)學(xué)習(xí)規(guī)則,用于無導(dǎo)師學(xué)習(xí)。一般將網(wǎng)絡(luò)的某一層確定為競(jìng)爭(zhēng)層,對(duì)于一個(gè)特定的輸入X,競(jìng)爭(zhēng)層的K個(gè)神經(jīng)元均有輸出響應(yīng),其中響應(yīng)值最大的神經(jīng)元j*為競(jìng)爭(zhēng)中獲勝的神經(jīng)元,即 Tji 1,2,.,WX

12、= maxTiKW X 只有獲勝的神經(jīng)元才有權(quán)調(diào)整其權(quán)向量Wj,調(diào)整量為:jjW =WX其中,為學(xué)習(xí)參數(shù)(01)282.3學(xué)習(xí)規(guī)則5.概率式學(xué)習(xí) 從統(tǒng)計(jì)學(xué)、分子熱力學(xué)和概率論中關(guān)于系統(tǒng)穩(wěn)態(tài)能量的標(biāo)準(zhǔn)出發(fā),進(jìn)行神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)的方式稱為概率是學(xué)習(xí)。神經(jīng)網(wǎng)絡(luò)處于某一狀態(tài)的概率主要取決于在此狀態(tài)下的能量,能量越低,概率越大。概率式學(xué)習(xí)的典型代表是玻爾茲曼(Boltzmann)機(jī)學(xué)習(xí)規(guī)則。這是基于模擬退火的統(tǒng)計(jì)優(yōu)化算法。 29 BP BP神經(jīng)網(wǎng)絡(luò)算法神經(jīng)網(wǎng)絡(luò)算法BP神經(jīng)網(wǎng)絡(luò) BP神經(jīng)網(wǎng)絡(luò)(Back Propagation Neural Network),即誤差后向傳播神經(jīng)網(wǎng)絡(luò),是一種按誤差逆向傳播算法訓(xùn)練

13、的多層前饋網(wǎng)絡(luò),是目前應(yīng)用最廣泛的網(wǎng)絡(luò)模型之一。 BP網(wǎng)絡(luò)能學(xué)習(xí)和儲(chǔ)存大量輸入-輸出模式的映射關(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)中出了有輸入層、輸出層外,還至少有一層隱藏層,每一層的神經(jīng)元輸出均傳送到下一層,而每層內(nèi)神經(jīng)元之間無連接。30 BP BP神經(jīng)網(wǎng)絡(luò)算法神經(jīng)網(wǎng)絡(luò)算法 BP神經(jīng)元的結(jié)構(gòu)模型,如下圖:注:BP網(wǎng)絡(luò)的激活函數(shù)f()要求是可微的,所以不能用二值函數(shù),常用S型的對(duì)數(shù)、正切函數(shù)或線性函數(shù)。31 BP BP神經(jīng)網(wǎng)絡(luò)算法神經(jīng)網(wǎng)絡(luò)算法BP算法 BP算法由數(shù)據(jù)流

14、的正向傳播和誤差信號(hào)的反向傳播兩個(gè)過程構(gòu)成。1)正向傳播 設(shè)BP網(wǎng)絡(luò)的輸入層有n個(gè)節(jié)點(diǎn),隱藏層有q個(gè)節(jié)點(diǎn),輸出層有m個(gè)節(jié)點(diǎn),輸入層與隱藏層之間的權(quán)值為vki ,隱藏層與輸出層的權(quán)值為wjk,隱藏層的激活函數(shù)為f1(),輸出層的激活函數(shù)為 f2(),則隱藏層節(jié)點(diǎn)的輸出為nk1kiii=0z =fv xk=1,2.q , BP BP神經(jīng)網(wǎng)絡(luò)算法神經(jīng)網(wǎng)絡(luò)算法輸出層節(jié)點(diǎn)的輸出為:qj2jkkk=0o =fw zj=1,2.m , 至此,BP網(wǎng)絡(luò)完成了n維空間向量對(duì)m維空間的近似映射。33BPBP神經(jīng)網(wǎng)絡(luò)算法神經(jīng)網(wǎng)絡(luò)算法2)反向傳播 BP算法的實(shí)質(zhì)是求取誤差函數(shù)的最小值問題,這種算法采用的是非線性規(guī)劃中

15、的最速下降法,按誤差函數(shù)的負(fù)梯度方向修改權(quán)值。設(shè)訓(xùn)練樣本總數(shù)為P,用X1,X2,.,Xp來表示。第P個(gè)樣本輸入所得到實(shí)際輸出和理想輸出分別記為采用理想輸出和實(shí)際輸出值差的平方和為誤差函數(shù),于是得到第P個(gè)樣本的誤差:ppjjoyj=1, 2 .m和,m2pppjjj=11E =yo234BPBP神經(jīng)網(wǎng)絡(luò)算法神經(jīng)網(wǎng)絡(luò)算法則P個(gè)樣本的總誤差為:ppm2ppjjpp=1 j=1p=11E=yo=E2網(wǎng)絡(luò)誤差是各層權(quán)值的函數(shù),按照最速下降法,可得輸出層各神經(jīng)元的權(quán)值和第n次輸出層權(quán)值的迭代公式分別為:jkjkw =z jkjkjkjkjkwn =wn-1wn =wn-1n z35 BP BP神經(jīng)網(wǎng)絡(luò)算法

16、神經(jīng)網(wǎng)絡(luò)算法隱藏層各神經(jīng)元的權(quán)值和第n次隱藏層權(quán)值的迭代公式分別為:kikiv =x kikikikikivn =vn-1vn =vn-1n xppipjpi pjijEaiaiw 因而11ppijpi pjpi pjijEwaiiw pipiik pkpjkijijijoNetaaw iaiwww 則,piij pipipijNetw ioaNetb令111PPpijpi pjppijEwiw:pppiijpiijEEowow復(fù)合求導(dǎo)21,()()2ppkpkpipipikpjpiEtotooo 其中1:ppijijEww 按梯度法公式求解的過程36 BP BP神經(jīng)網(wǎng)絡(luò)算法神經(jīng)網(wǎng)絡(luò)算法BP網(wǎng)

17、絡(luò)學(xué)習(xí)算法的具體步驟如下:Step1 從訓(xùn)練樣本集中取某一樣本,把它的輸入信息輸入到網(wǎng)絡(luò)中。Step2 由網(wǎng)絡(luò)正向計(jì)算出各層節(jié)點(diǎn)的輸出。Step3 計(jì)算網(wǎng)絡(luò)的實(shí)際輸出和期望輸出的誤差。Step4 從輸出層開始反向計(jì)算到第一個(gè)隱藏層,按一定的原則向減少誤差方向調(diào)整整個(gè)網(wǎng)絡(luò)的各個(gè)連接權(quán)值。Step5 對(duì)訓(xùn)練樣本集中的每一個(gè)樣本重復(fù)上述步驟,直到對(duì)整個(gè)網(wǎng)絡(luò)訓(xùn)練樣本集的誤差達(dá)到要求為止。 1、BP網(wǎng)絡(luò)建模方法和步驟網(wǎng)絡(luò)建模方法和步驟vBP網(wǎng)絡(luò)建模特點(diǎn):網(wǎng)絡(luò)建模特點(diǎn):v非線性映照能力v并行分布處理方式v自學(xué)習(xí)和自適應(yīng)能力v數(shù)據(jù)融合的能力v多變量系統(tǒng)1)原始數(shù)據(jù)的輸入;)原始數(shù)據(jù)的輸入;2)數(shù)據(jù)歸一化;數(shù)

18、據(jù)歸一化;3)網(wǎng)絡(luò)建立以及訓(xùn)練;)網(wǎng)絡(luò)建立以及訓(xùn)練;4)對(duì)原始數(shù)據(jù)進(jìn)行仿真;)對(duì)原始數(shù)據(jù)進(jìn)行仿真;5)將原始數(shù)據(jù)仿真的結(jié)果與已知樣本進(jìn)行對(duì))將原始數(shù)據(jù)仿真的結(jié)果與已知樣本進(jìn)行對(duì)比;比;6)對(duì)新數(shù)據(jù)進(jìn)行仿真。)對(duì)新數(shù)據(jù)進(jìn)行仿真。v1.樣本數(shù)據(jù)處理樣本數(shù)據(jù)處理(1)樣本分類:訓(xùn)練樣本、檢驗(yàn)樣本、測(cè)試樣本)樣本分類:訓(xùn)練樣本、檢驗(yàn)樣本、測(cè)試樣本(2)預(yù)處理)預(yù)處理歸一化歸一化方法:標(biāo)準(zhǔn)化、極差變換等方法:標(biāo)準(zhǔn)化、極差變換等原則:有效避開原則:有效避開Sigmoid函數(shù)的飽和區(qū),一般要求輸入數(shù)據(jù)的函數(shù)的飽和區(qū),一般要求輸入數(shù)據(jù)的值在值在01之間(之間(0.20.8最好)最好)注意:預(yù)處理的數(shù)據(jù)訓(xùn)練完成

19、后,網(wǎng)絡(luò)輸出的結(jié)果要進(jìn)行反變注意:預(yù)處理的數(shù)據(jù)訓(xùn)練完成后,網(wǎng)絡(luò)輸出的結(jié)果要進(jìn)行反變換才能得到實(shí)際值。換才能得到實(shí)際值。v2.建立建立BP網(wǎng)絡(luò)網(wǎng)絡(luò)(1)確定輸入和輸出)確定輸入和輸出(2)確定網(wǎng)絡(luò)結(jié)構(gòu)(幾個(gè)隱層?隱層神經(jīng)元個(gè)數(shù))確定網(wǎng)絡(luò)結(jié)構(gòu)(幾個(gè)隱層?隱層神經(jīng)元個(gè)數(shù)多少?)多少?)為盡可能避免訓(xùn)練時(shí)出現(xiàn)“過擬合”現(xiàn)象,保證足夠高的網(wǎng)絡(luò)性能和泛化能力,確定隱層節(jié)點(diǎn)數(shù)的最基本原則是:在滿足精度要求的前提下取盡可能緊湊的結(jié)構(gòu),即取盡可能少的隱層節(jié)點(diǎn)數(shù)。 在確定隱層節(jié)點(diǎn)數(shù)時(shí)必須滿足下列條件:(1)隱層節(jié)點(diǎn)數(shù)必須小于N-1(其中N為訓(xùn)練樣本數(shù)),否則,網(wǎng)絡(luò)模型的系統(tǒng)誤差與訓(xùn)練樣本的特性無關(guān)而趨于零,即建立

20、的網(wǎng)絡(luò)模型沒有泛化能力,也沒有任何實(shí)用價(jià)值。同理可推得:輸入層的節(jié)點(diǎn)數(shù)(變量數(shù))必須小于N-1。(2) 訓(xùn)練樣本數(shù)必須多于網(wǎng)絡(luò)模型的連接權(quán)數(shù),一般為210倍,否則,樣本必須分成幾部分并采用“輪流訓(xùn)練”的方法才可能得到可靠的神經(jīng)網(wǎng)絡(luò)模型。 兩種確定隱含層節(jié)點(diǎn)數(shù)的方法v1. ,其中 為隱含層節(jié)點(diǎn)數(shù), 為輸入層節(jié)點(diǎn)數(shù), 為輸出層節(jié)點(diǎn)數(shù), 為 1, 10之間的常數(shù);v2. ,其中 為隱含層節(jié)點(diǎn)數(shù), 為輸入層節(jié)點(diǎn)數(shù);1nnma1nnma12lognn1nnv3.設(shè)置網(wǎng)絡(luò)參數(shù)設(shè)置網(wǎng)絡(luò)參數(shù)v1)設(shè)置設(shè)置初始連接權(quán)值初始連接權(quán)值 BP算法決定了誤差函數(shù)一般存在多個(gè)局部極小點(diǎn),算法決定了誤差函數(shù)一般存在多個(gè)局部

21、極小點(diǎn),不同的網(wǎng)絡(luò)初始權(quán)值直接決定了不同的網(wǎng)絡(luò)初始權(quán)值直接決定了BP算法收斂于哪算法收斂于哪個(gè)局部極小點(diǎn)或是全局極小點(diǎn)。因此,要求計(jì)算個(gè)局部極小點(diǎn)或是全局極小點(diǎn)。因此,要求計(jì)算程序必須能夠自由改變網(wǎng)絡(luò)初始連接權(quán)值程序必須能夠自由改變網(wǎng)絡(luò)初始連接權(quán)值.v由于由于Sigmoid轉(zhuǎn)換函數(shù)的特性,一般要求初始權(quán)轉(zhuǎn)換函數(shù)的特性,一般要求初始權(quán)值分布在值分布在-0.50.5之間比較有效之間比較有效.v2)設(shè)置設(shè)置BP(改進(jìn))算法的參數(shù)(改進(jìn))算法的參數(shù)應(yīng)用最廣的帶動(dòng)量的梯度下降法或是LM算法為避免陷入局部極小值,學(xué)習(xí)率和動(dòng)量系數(shù)的選擇一般要求:學(xué)習(xí)率通常在0.010.8之間;動(dòng)量系數(shù)通常在01之間,而且一

22、般比學(xué)習(xí)率要大。4.網(wǎng)絡(luò)訓(xùn)練網(wǎng)絡(luò)訓(xùn)練v目的是什么?怎么實(shí)現(xiàn)的?目的是什么?怎么實(shí)現(xiàn)的?vBP網(wǎng)絡(luò)的訓(xùn)練就是通過應(yīng)用誤差反傳原理不斷調(diào)整網(wǎng)絡(luò)權(quán)值使網(wǎng)絡(luò)模型輸出值與已知的訓(xùn)練樣本輸出值之間的誤差平方和達(dá)到最小或小于某一期望值。vBP算法是局部?jī)?yōu)化算法,容易陷入局部極小點(diǎn),找不到最優(yōu)值。(梯度下降法等)v在給定有限個(gè)(訓(xùn)練)樣本的情況下,如何設(shè)計(jì)一個(gè)合理的BP網(wǎng)絡(luò)模型并通過向所給的有限個(gè)樣本的學(xué)習(xí)(訓(xùn)練)來滿意地逼近樣本所蘊(yùn)含的規(guī)律(函數(shù)關(guān)系)的問題,經(jīng)驗(yàn)很重要“藝術(shù)創(chuàng)造的過程”v5.仿真并分析網(wǎng)絡(luò)模型的泛化能力仿真并分析網(wǎng)絡(luò)模型的泛化能力v 訓(xùn)練神經(jīng)網(wǎng)絡(luò)的首要和根本任務(wù)是確保訓(xùn)練好的網(wǎng)絡(luò)模型對(duì)非訓(xùn)

23、練樣本具有好的泛化能力(推廣性),即有效逼近樣本蘊(yùn)含的內(nèi)在規(guī)律,而不是看網(wǎng)絡(luò)模型對(duì)訓(xùn)練樣本的擬合能力。v 因此,僅給出訓(xùn)練樣本誤差大小而不給出非訓(xùn)練樣本(檢驗(yàn)樣本、測(cè)試樣本)誤差大小是沒有任何意義的。2、程序?qū)崿F(xiàn)、程序?qū)崿F(xiàn)MATLAB神經(jīng)網(wǎng)絡(luò)工具箱的應(yīng)用神經(jīng)網(wǎng)絡(luò)工具箱的應(yīng)用(Neural Networks Toolbox for Matlab)BP網(wǎng)絡(luò)函數(shù)網(wǎng)絡(luò)函數(shù)數(shù)據(jù)歸一化mapminmax; mapstd使用格式:Y,PS = mapminmax(X);Y,PS = mapminmax(X,FP);Y = mapminmax(apply,X,PS);X = mapminmax(reverse

24、,Y,PS) ;用實(shí)例來講解,測(cè)試數(shù)據(jù) x1 = 1 2 4; y,ps = mapminmax(x1);y = -1.0000 -0.3333 1.0000;ps = name: mapminmax xrows: 1 xmax: 4 xmin: 1 xrange: 3 yrows: 1 ymax: 1 ymin: -1 yrange: 2創(chuàng)建BP網(wǎng)絡(luò)newffnet=newff(P,T,S1 S2 S(N-1),TF1 TF2TFN,BTF,BLF,PF,IPF,OPF,DDF)其中,P,T為由每組輸入元素的最大值和最小值組成的R2維的矩陣; 為第i層的長(zhǎng)度,共計(jì)N-1層; 為第i層的傳遞函

25、數(shù),默認(rèn)為“transig”;BTF為BP網(wǎng)絡(luò)的訓(xùn)練函數(shù),默認(rèn)為“trainlm”;BLF為權(quán)值和閾值的BP學(xué)習(xí)算法,默認(rèn)為“l(fā)earngdm”;PF為網(wǎng)絡(luò)的性能函數(shù),默認(rèn)為“mse”;IPF為行輸入的處理單元矩陣,默認(rèn)為“fixunknows”,“removeconstantrows”,“mapminmax”;OPF為行輸出的處理單元矩陣,默認(rèn)為“removeconstantrows”或“mapminmax”;DDF為函數(shù)的定義,其默認(rèn)為“dividerand”。iSiTF初始化init仿真 sim;訓(xùn)練算法trainlm(速度快,需存儲(chǔ)空間大)學(xué)習(xí)規(guī)則learngdm網(wǎng)絡(luò)訓(xùn)練trainv例

26、:例:BP算法實(shí)現(xiàn)的簡(jiǎn)單例子(采用算法實(shí)現(xiàn)的簡(jiǎn)單例子(采用LM算法訓(xùn)練)算法訓(xùn)練)v% 定義訓(xùn)練樣本定義訓(xùn)練樣本 P=-1, -2, 3, 1; -1, 1, 5, -3; % P 為輸入矢量為輸入矢量 T=-1, -1, 1, 1; % T 為輸出(目標(biāo))矢量為輸出(目標(biāo))矢量 v% 定義檢驗(yàn)樣本定義檢驗(yàn)樣本Pn=1 2;4 3;%輸入輸入Tn=-1 1;%輸出輸出v% 創(chuàng)建一個(gè)新的前向神經(jīng)網(wǎng)絡(luò)創(chuàng)建一個(gè)新的前向神經(jīng)網(wǎng)絡(luò) net=newff(minmax(P),3,1,tansig,purelin,trainlm);v% 設(shè)置訓(xùn)練參數(shù)設(shè)置訓(xùn)練參數(shù) net.trainParam.show = 5

27、0; %兩次顯示之間的訓(xùn)練步數(shù)兩次顯示之間的訓(xùn)練步數(shù)net.trainParam.lr = 0.05; %訓(xùn)練速率或者學(xué)習(xí)率訓(xùn)練速率或者學(xué)習(xí)率net.trainParam.mc = 0.9; %動(dòng)量因子動(dòng)量因子net.trainParam.epochs = 100; %訓(xùn)練次數(shù),最大值為訓(xùn)練次數(shù),最大值為100net.trainParam.goal = 0.1;%訓(xùn)練目標(biāo),默認(rèn)為訓(xùn)練目標(biāo),默認(rèn)為0v% 調(diào)用調(diào)用 TRAINLM 算法訓(xùn)練算法訓(xùn)練 BP 網(wǎng)絡(luò)網(wǎng)絡(luò) net,tr=train(net,P,T); v% 仿真仿真,分析網(wǎng)絡(luò)的性能(逼近能力)分析網(wǎng)絡(luò)的性能(逼近能力)A = sim(ne

28、t,P); % 計(jì)算仿真誤差計(jì)算仿真誤差 (訓(xùn)練樣本的訓(xùn)練樣本的)E = T - A ;MSE = mse(E); %訓(xùn)練樣本的誤差訓(xùn)練樣本的誤差 An=sim(net,Pn); %對(duì)檢驗(yàn)樣本仿真對(duì)檢驗(yàn)樣本仿真En = Tn - An;MSEn = mse(En); %檢驗(yàn)樣本的誤差檢驗(yàn)樣本的誤差err=MSE MSEn%對(duì)比訓(xùn)練樣本的誤差和檢驗(yàn)樣對(duì)比訓(xùn)練樣本的誤差和檢驗(yàn)樣本的誤差本的誤差v% 顯示網(wǎng)絡(luò)的權(quán)值和閾值顯示網(wǎng)絡(luò)的權(quán)值和閾值 inputWeights=net.IW1,1 ; % 當(dāng)前輸入層權(quán)值當(dāng)前輸入層權(quán)值inputbias=net.b1 ; % 當(dāng)前輸入層閾值當(dāng)前輸入層閾值 lay

29、erWeights=net.LW2,1; % 當(dāng)前隱含層權(quán)值當(dāng)前隱含層權(quán)值 layerbias=net.b2 % 當(dāng)前隱含層閾值當(dāng)前隱含層閾值v% 圖形可視化顯示結(jié)果圖形可視化顯示結(jié)果X=1 2 3 4 5 6;T=T Tn;A=A Tn-En;plot(X,T,r-,X,A,b-o); 結(jié)果(1) err=MSE MSEn= 0.0002 0.0576inputWeights = -0.1900 -1.2924 -1.7664 0.5561 0.8433 -1.0786inputbias = 2.9940 0.3951 2.6200layerWeights = 0.0188 -1.0473

30、-0.0728layerbias =0.0112結(jié)果(2) err=MSE MSEn= 0.0304 2.0068inputWeights = -0.5619 1.5524 -0.4331 -1.1875 -0.4367 -0.0635inputbias = 1.6300 1.0987 -2.7565layerWeights =-0.9905 -1.1043 -0.8624layerbias = 0.0296利用利用BP網(wǎng)絡(luò)預(yù)測(cè)公路運(yùn)量問題網(wǎng)絡(luò)預(yù)測(cè)公路運(yùn)量問題1.問題的描述問題的描述 公路運(yùn)量主要包括公路的公路運(yùn)量主要包括公路的客運(yùn)量客運(yùn)量和公路和公路貨運(yùn)貨運(yùn)量量?jī)蓚€(gè)方面。據(jù)研究,某地區(qū)的公路

31、運(yùn)量主兩個(gè)方面。據(jù)研究,某地區(qū)的公路運(yùn)量主要與要與該地區(qū)的人數(shù)該地區(qū)的人數(shù)、機(jī)動(dòng)車數(shù)量和公路面積機(jī)動(dòng)車數(shù)量和公路面積有關(guān),表有關(guān),表1給出了給出了20年得公路運(yùn)量相關(guān)數(shù)據(jù),年得公路運(yùn)量相關(guān)數(shù)據(jù),表中單位分別為萬人表中單位分別為萬人/萬輛萬輛/萬平方千米萬平方千米/萬噸萬噸/萬人。萬人。v根據(jù)有關(guān)部門數(shù)據(jù),該地區(qū)根據(jù)有關(guān)部門數(shù)據(jù),該地區(qū)2010年和年和2011年的人年的人數(shù)分別為數(shù)分別為73.39和和75.55萬人,機(jī)動(dòng)車數(shù)量分別為萬人,機(jī)動(dòng)車數(shù)量分別為3.9635和和4.0975萬輛,公路面積將分別為萬輛,公路面積將分別為0.9880和和1.0268萬平方米。萬平方米。v請(qǐng)利用請(qǐng)利用BP神經(jīng)網(wǎng)

32、絡(luò)預(yù)測(cè)該地區(qū)神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)該地區(qū)2010年年2011年得年得公路客運(yùn)量和公路貨運(yùn)量。公路客運(yùn)量和公路貨運(yùn)量。 某地區(qū)20年公路運(yùn)量數(shù)據(jù) 年份 人口數(shù)量 機(jī)動(dòng)車數(shù)量 公路面積 公路客運(yùn)量 公路貨運(yùn)量1990 20.55 0.6 0.09 5126 12371991 22.44 0.75 0.11 6217 13791992 25.37 0.85 0.11 7730 13851993 27.13 0.90 0.14 9145 13991994 29.45 1.05 0.20 10460 16631995 30.1 1.35 0.23 11387 17141996 30.96 1.45 0.23 12

33、353 1834 1997 34.06 1.60 0.32 15750 43221998 36.42 1.70 0.32 18304 81321999 38.09 1.85 0.34 19836 89362000 39.13 2.15 0.36 21024 11099年份 人口數(shù)量 機(jī)動(dòng)車數(shù)量 公路面積 公路客運(yùn)量 公路貨運(yùn)量2001 39.99 2.20 0.36 19490 112032002 41.93 2.25 0.38 20433 105242003 44.59 2.35 0.49 22598 111152004 47.30 2.50 0.56 25107 133202005 52.

34、89 2.60 0.59 33442 167622006 55.73 2.70 0.59 36836 186732007 56.76 2.85 0.67 40548 207242008 59.17 2.95 0.69 42927 208032009 60.63 3.10 0.79 43462 21804v2.BP網(wǎng)絡(luò)求解過程網(wǎng)絡(luò)求解過程v為了了解利用為了了解利用BP網(wǎng)絡(luò)求解問題的過程,可把網(wǎng)絡(luò)求解問題的過程,可把問題分為成以下步驟:?jiǎn)栴}分為成以下步驟:1)原始數(shù)據(jù)的輸入;)原始數(shù)據(jù)的輸入;2)數(shù)據(jù)歸一化;數(shù)據(jù)歸一化;3)網(wǎng)絡(luò)建立以及訓(xùn)練;)網(wǎng)絡(luò)建立以及訓(xùn)練;4)對(duì)原始數(shù)據(jù)進(jìn)行仿真;對(duì)原始數(shù)據(jù)進(jìn)

35、行仿真;5)將原始數(shù)據(jù)仿真的)將原始數(shù)據(jù)仿真的結(jié)果與已知樣本進(jìn)行對(duì)比;結(jié)果與已知樣本進(jìn)行對(duì)比;6)對(duì)新數(shù)據(jù)進(jìn)行)對(duì)新數(shù)據(jù)進(jìn)行仿真。仿真。v在進(jìn)行歸一化處理時(shí)和把仿真的到的數(shù)據(jù)還在進(jìn)行歸一化處理時(shí)和把仿真的到的數(shù)據(jù)還原為原始數(shù)據(jù)的數(shù)量級(jí)時(shí),在下面的程序中,原為原始數(shù)據(jù)的數(shù)量級(jí)時(shí),在下面的程序中,都是利用系統(tǒng)函數(shù)進(jìn)行的。都是利用系統(tǒng)函數(shù)進(jìn)行的。v下面是每個(gè)程序塊的具體程序,并在程序中下面是每個(gè)程序塊的具體程序,并在程序中添加注釋添加注釋(1)原始數(shù)據(jù)的輸入,具體程序?yàn)椋簊qrts=20.55 22.44 25.37 27.13 29.45 30.10 30.96 34.06 36.42 38.09

36、 39.13 39.99 41.93 44.59 47.30 52.89 55.73 56.76 59.17 60.63;%人數(shù)(單位:萬人)sqjdcs=0.6 0.75 0.85 0.91 1.05 1.35 1.45 1.6 1.7 1.85 2.15 2.2 2.25 2.35 2.5 2.6 2.7 2.85 2.95 3.1;%機(jī)動(dòng)車數(shù)(單位:萬輛)sqglmj=0.09 0.11 0.11 0.14 0.20 0.23 0.23 0.32 0.32 0.34 0.36 0.36 0.38 0.49 0.56 0.59 0.59 0.67 0.69 0.79;%公路面積glkyl=

37、5126 6217 7730 9145 10460 11387 12353 15750 18304 19836 21024 19490 20433 22598 25107 33442 36836 40548 42927 43462%公路客運(yùn)量glhyl=1237 1379 1385 1399 1663 1714 1834 4322 8132 8936 11099 11203 10524 11115 13320 16762 18673 20724 20803 21804;%公路貨運(yùn)量p=sqrts;sqjdcs;sqglmj;%輸入數(shù)據(jù)矩陣t=glkyl;glhyl;%目標(biāo)數(shù)據(jù)矩陣(2)對(duì)輸入數(shù)

38、據(jù)矩陣和目標(biāo)矩陣的數(shù)據(jù)進(jìn)行歸一化處理,具體程序如下為%利用函數(shù)premnmx對(duì)數(shù)據(jù)進(jìn)行歸一化處理pn,minp,maxp,tn,mint,maxt=premnmx(p,t);%對(duì)輸入矩陣p和t進(jìn)行歸一化處理dx=-1 1;-1 1;-1 1;%歸一化處理后最小值為-1 ,最大值為1(3)利用處理好的數(shù)據(jù)對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,具體程序%BP網(wǎng)絡(luò)訓(xùn)練net=newff(dx,3,7 2,tansig,tansig,purelin,traindx);net.trainParam.show=1000;net.trainParam.lr=0.05;net.trainParam.goal=0.65*103;ne

39、t.trainParam.epochs=50000;net,tr=train(net,pn,tn);(4)利用訓(xùn)練好的BP網(wǎng)絡(luò)對(duì)原始數(shù)據(jù)進(jìn)行仿真,具體程序如下:an=sim(net,pn);a=postmnmax(an,mint,maxt)%把仿真得到的數(shù)據(jù)還原為原始的數(shù)量級(jí)(5)用原始數(shù)據(jù)仿真的結(jié)果與已知數(shù)據(jù)進(jìn)行對(duì)比x=1990:2009;newk=a(1,:);newh=a(2,:);figure(2);subplot(2,1,1);plot(x,neewk,r-o,xglkyl,b-+);legendxlabeltitlesubplot(2,1,2);plot(x,newh,r-o,x,glhyl,b-+);(6)利用訓(xùn)練好的BP網(wǎng)絡(luò)對(duì)新數(shù)據(jù)進(jìn)行仿真,具體程序如下:pnew=7

溫馨提示

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

評(píng)論

0/150

提交評(píng)論