BP神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)_第1頁
BP神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)_第2頁
BP神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)_第3頁
BP神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)_第4頁
BP神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

BP神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)王貴騰摘要:人工神經(jīng)網(wǎng)絡(luò)是近年來的熱點研究領(lǐng)域,是人類智能研究的重要組成部分BP神經(jīng)網(wǎng)絡(luò)作為目前應(yīng)用較多的一種神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),具有良好的逼近性能,且結(jié)構(gòu)簡單,性能優(yōu)良。但仍存在收斂速度慢,易陷入局部極小值的問題,通過附加動量項法、自適應(yīng)學(xué)習(xí)率法、數(shù)據(jù)歸一化法、遺傳算法等,可大幅度改善其性能,可廣泛應(yīng)用于多輸入多輸出的非線性系統(tǒng)。關(guān)鍵詞:BP神經(jīng)網(wǎng)絡(luò);BP算法;動量項;自適應(yīng)學(xué)習(xí)率;歸一化;遺傳算法.緒論人工神經(jīng)網(wǎng)絡(luò)概述人工神經(jīng)網(wǎng)絡(luò)(ArtificialNeuralNetwork),簡稱神經(jīng)網(wǎng)絡(luò)(NN,是由大量處理單元(神經(jīng)元)組成的非線性大規(guī)模自適應(yīng)系統(tǒng)。它具有自組織,自適應(yīng)和自學(xué)習(xí)能力,以及具有非線性、非局域性,非定常性和非凸性等特點。它是在現(xiàn)代神經(jīng)科學(xué)研究成果的基礎(chǔ)上提出的,試圖通過模擬大腦神經(jīng)網(wǎng)絡(luò)處理,記憶信息的方式設(shè)計一種新的機(jī)器使之具有人腦那樣的信息處理能力。神經(jīng)網(wǎng)絡(luò)作為計算智能與控制的重要分支,在控制領(lǐng)域具有如下優(yōu)點:1)能逼近任意L2范數(shù)上的非線性函數(shù);2)信息分布式存儲與處理,魯棒性和容錯性強(qiáng);3)便于處理多輸入多輸出問題;4)具有實現(xiàn)高速并行計算的潛力;5)具有學(xué)習(xí)能力,對環(huán)境變化具有自適應(yīng)性,對模型依賴性不強(qiáng),主要用于解決非線性系統(tǒng)的控制問題。同時,神經(jīng)網(wǎng)絡(luò)控制在多種控制結(jié)構(gòu)中得到應(yīng)用,如PID控制、模型參考自適應(yīng)控制、前饋反饋控制、內(nèi)??刂啤⒛嫦到y(tǒng)控制、預(yù)測控制等。目前神經(jīng)網(wǎng)絡(luò)的研究主要集中在三個方面:理論研究、實現(xiàn)技術(shù)研究、應(yīng)用研究。BP神經(jīng)網(wǎng)絡(luò)概述BP神經(jīng)網(wǎng)絡(luò)是1986年由Rumelhart和McClelland一同提出的一種多層前饋神經(jīng)網(wǎng)絡(luò)。該網(wǎng)絡(luò)采用BP算法一一一種誤差反向傳播(BackPropagation)算法,其方法是依據(jù)負(fù)梯度下降方向迭代調(diào)整網(wǎng)絡(luò)的權(quán)值和閥值以實現(xiàn)訓(xùn)練誤差目標(biāo)函數(shù)的最小化。由于BP神經(jīng)網(wǎng)絡(luò)在實際應(yīng)用中存在著收斂速度慢、網(wǎng)絡(luò)結(jié)構(gòu)難以確定、容易陷入局部極小值、泛化能力不強(qiáng)的缺陷,近年來,許多學(xué)者為滿足實際應(yīng)用中需要提出了許多改進(jìn)方法,在網(wǎng)絡(luò)自身性能的改善方面做了大量而有實際意義的工作,并且在BP神經(jīng)網(wǎng)絡(luò)的理論方面的研究和實際問題上應(yīng)用也取得了豐碩的成果。對BP神經(jīng)網(wǎng)絡(luò)的理論研究,概括起來大致分為三個方面:改進(jìn)激勵函數(shù),權(quán)值選取優(yōu)化和網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。本文研究內(nèi)容本文從神經(jīng)網(wǎng)絡(luò)出發(fā),研究其中應(yīng)用最為廣泛的BP神經(jīng)網(wǎng)絡(luò)模型,分析其缺點和不足,提出改進(jìn)措施,并探討其應(yīng)用。具體研究內(nèi)容包括:1)研究人工神經(jīng)網(wǎng)絡(luò)的基本原理;2)對BP神經(jīng)網(wǎng)絡(luò)進(jìn)行分析,探討B(tài)P算法的缺陷;3)提出對BP神經(jīng)網(wǎng)絡(luò)的改進(jìn)和優(yōu)化;4)基于MATLAB的BP神經(jīng)網(wǎng)絡(luò)的建模仿真。.神經(jīng)網(wǎng)絡(luò)基本原理神經(jīng)網(wǎng)絡(luò),主要是模擬人的神經(jīng)系統(tǒng)。其神經(jīng)元特性、網(wǎng)絡(luò)結(jié)構(gòu)、學(xué)習(xí)算法是神經(jīng)網(wǎng)絡(luò)的三要素。神經(jīng)元特性神經(jīng)網(wǎng)絡(luò)是由大量簡單處理單元組成,通過可變權(quán)值連接而成的并行分布式系統(tǒng),神經(jīng)元是神經(jīng)網(wǎng)絡(luò)的基本處理單元。1943年提出的MP模型,經(jīng)不斷改進(jìn)形成了現(xiàn)在廣泛應(yīng)用的BP神經(jīng)元模型,MP模型如圖2-1所示。圖2-1人工神經(jīng)元模型模型基于以下六點假設(shè):1)神經(jīng)元是多輸入單輸出的信息處理單元;2)神經(jīng)元輸入:興奮性輸入和抑制性輸入;3)神經(jīng)元具有空間整合特性和閥值特性;4)輸入和輸出間有固定時滯(突觸延擱);5)忽略時間整合作用和不應(yīng)期;6)突觸時延和突觸強(qiáng)度為常數(shù)(時不變)。神經(jīng)元信號處理特性(轉(zhuǎn)移函數(shù))是決定人工神經(jīng)網(wǎng)絡(luò)整體性能的三大要素之一。包括閥值型轉(zhuǎn)移函數(shù)、連續(xù)非線性轉(zhuǎn)移函數(shù)、分段線性轉(zhuǎn)移函數(shù)、概率型轉(zhuǎn)移函數(shù)等。神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)神經(jīng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)是決定神經(jīng)網(wǎng)絡(luò)特性的第二大要素。包括:1)層次型結(jié)構(gòu)。包括單純型層次網(wǎng)絡(luò)結(jié)構(gòu)、輸出層到輸入層有連接的層次網(wǎng)絡(luò)結(jié)構(gòu)、層內(nèi)有互連的層次網(wǎng)絡(luò)結(jié)構(gòu)。2)互連型結(jié)構(gòu)。包括全互連型、局部互連型、稀疏連接型。按信息流向類型可分為前饋型網(wǎng)絡(luò)和反饋型網(wǎng)絡(luò)。神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)算法神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)方式是決定神經(jīng)網(wǎng)絡(luò)信息處理性能的第三大要素。神經(jīng)網(wǎng)絡(luò)的工作方式分為兩個階段:學(xué)習(xí)期和工作期。神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)類型包括有導(dǎo)師學(xué)習(xí)(有監(jiān)督學(xué)習(xí))、無導(dǎo)師學(xué)習(xí)(無監(jiān)督學(xué)習(xí))、灌輸式學(xué)習(xí)(死記硬背學(xué)習(xí))、再勵式學(xué)習(xí)。.BP神經(jīng)網(wǎng)絡(luò)BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)采用BP算法的神經(jīng)網(wǎng)絡(luò)模型稱為BP神經(jīng)網(wǎng)絡(luò),一般由輸入層、隱層和輸出層組成,隱層可以是一層或者多層,每個層中又包含許多單個神經(jīng)元,在BP神經(jīng)網(wǎng)絡(luò)中,層與層之間的神經(jīng)元是全連接,層內(nèi)部的神經(jīng)元之間是無連接的。各隱層節(jié)點的激活函數(shù)使用Sigmoid函數(shù),其輸入層和輸出層激勵函數(shù)可以根據(jù)應(yīng)用的不同需要而異。因此,BP神經(jīng)網(wǎng)絡(luò)是前向反饋網(wǎng)絡(luò)的一種,其網(wǎng)絡(luò)結(jié)構(gòu)可以采用簡要的形式來描述,如圖3-1輸入層隱層輸出層圖3-1BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)BP算法BP算法即誤差反向傳播(BackPropagation)算法,其主要思想是是把學(xué)習(xí)過程分為兩個階段:第一階段(正向傳播過程),給出輸入信息通過輸入層經(jīng)隱含層處理并計算每個單元的實際輸出值;第二階段(反向過程),若在輸出層未能得到期望的輸出值,則逐層遞歸地計算實際輸出與期望輸出之差值(即誤差),以便根據(jù)此差值調(diào)節(jié)

權(quán)值。BP算法的基本步驟如下:1)設(shè)置初始權(quán)值W(0)為較小的隨機(jī)非零值2)給定輸入/輸出樣本集合{Up,dp}p,L1/1、2誤差指標(biāo)Ep二r(dip-yip)2誤差指標(biāo)2iP…?E=E總誤差指標(biāo)匚圳Epp=1重復(fù)下列過程直至滿足收斂條件(£圳M8)a)對于任意一個樣本p,計算正向過程Up,IH'_1Opl,Xp11,1Vp二-dip-Vip'f'"pl1.l1.l1mp.wmi?f'X,1lL反向過程::Ep反向過程::Ep=l-1二wij6ipb)修正權(quán)值b)修正權(quán)值wj仕+1)=wj(t"-:E口?二wij包括兩種學(xué)習(xí)方式:模式(Pattern)學(xué)習(xí)方式:TOC\o"1-5"\h\zlwijt1-1wijt-0jj三wj訓(xùn)練(Epoch)學(xué)習(xí)方式:llEWijt1=Wijt-0二WjBP神經(jīng)網(wǎng)絡(luò)存在的缺陷由于BP神經(jīng)網(wǎng)絡(luò)是基于負(fù)梯度下降算法的網(wǎng)絡(luò)模型,就不可避免的存在著一些缺陷和不足:BP學(xué)習(xí)算法采用梯度下降法來收斂實際輸出與期望輸出之間誤差。因為誤差是高維權(quán)向量的復(fù)雜非線性函數(shù),故易陷入局部極小值;2)網(wǎng)絡(luò)在學(xué)習(xí)過程收斂速度慢;3)在網(wǎng)絡(luò)訓(xùn)練過程中容易發(fā)生振蕩,導(dǎo)致網(wǎng)絡(luò)無法收斂;4)網(wǎng)絡(luò)的結(jié)構(gòu)難以確定(包括隱層數(shù)及各隱層節(jié)點數(shù)的確定);5)在學(xué)習(xí)新樣本時有遺忘以學(xué)過樣本的趨勢,因為每輸入一個樣本,網(wǎng)絡(luò)的權(quán)值就要修改一次;6)學(xué)習(xí)樣本的數(shù)量和質(zhì)量影響學(xué)習(xí)效果(主要是泛化能力)和學(xué)習(xí)速度。.BP算法的改進(jìn)標(biāo)準(zhǔn)的BP算法是基于梯度下降法,通過計算目標(biāo)函數(shù)對網(wǎng)絡(luò)權(quán)值和閾值進(jìn)行修正的。改進(jìn)算法一種是在標(biāo)準(zhǔn)梯度下降法的基礎(chǔ)上,只用到目標(biāo)函數(shù)對權(quán)值和閾值的一階導(dǎo)數(shù)(梯度)信息附加動量項法它的實質(zhì)就是改變學(xué)習(xí)率”來提高網(wǎng)絡(luò)性能,其網(wǎng)絡(luò)連接權(quán)的迭代關(guān)系式由傳統(tǒng)BP算法TOC\o"1-5"\h\z?,,i,EWijt1=Wijt---,0:Wj變成llEWjt1)Wjt---二Wjt-Wjt-1

三Wj其中a為動量因子,0^a<1o動量項wWij(t)-Wj(t-1)1的作用在于記憶上一時刻的連接權(quán)的變化方向(即變化量的值),這樣就可以用較大的學(xué)習(xí)速率系數(shù)”以提高學(xué)習(xí)速度。附加動量項利用其“慣性效應(yīng)”來抑制網(wǎng)絡(luò)訓(xùn)練中可能出現(xiàn)的振蕩,起到了緩沖平滑的作用。止匕外,附加動量項還有利于脫離平坦區(qū)。自適應(yīng)學(xué)習(xí)率法該方法被認(rèn)為是一種最簡單最有效的方法。在BP算法中,連接權(quán)的調(diào)整決定于學(xué)習(xí)速率和梯度,但是,在基本BP算法中,學(xué)習(xí)速率是不變的。實際上學(xué)習(xí)速率對收斂速度的影響也很大,通過對它的在線調(diào)整,可以大大提高收斂速度。學(xué)習(xí)速率的調(diào)整原則上是使它在每一步保持盡可能大的值,而又不致使學(xué)習(xí)過程失去穩(wěn)定性。學(xué)習(xí)速率可以根據(jù)誤差變化的信息和誤差函數(shù)對連接權(quán)梯度變化的信息進(jìn)行啟發(fā)式調(diào)整,也可以根據(jù)誤差函數(shù)對學(xué)習(xí)速率的梯度直接進(jìn)行調(diào)整。對于批處理可以根據(jù)總誤差變化的信息進(jìn)行啟發(fā)式調(diào)整,其規(guī)則是:1)若總誤差EM減小,則學(xué)習(xí)率增加。2)若總誤差£訓(xùn)增加,則學(xué)習(xí)率減小。當(dāng)新誤差與老誤差之比超過一定值,則學(xué)習(xí)率快速下降。上述規(guī)則可用如下迭代方程來描述:^a?(n-1),ifEan-w(n)]<Eah-w(n-1)],a>1〈b”(n-1),ifEall-w(n)]>kEall-w(n-1)\b<1In-1,else輸入輸出數(shù)據(jù)歸一化各輸入數(shù)據(jù)往往具有不同的物理含義和量綱,取值范圍差異可能較大,歸一化將避免取值較小的輸入分量的作用被淹沒;對于S型轉(zhuǎn)移函數(shù),歸一化可防止因神經(jīng)元凈輸入過大而使其輸出飽和,避免進(jìn)入誤差曲面平坦區(qū);對輸出進(jìn)行歸一化,可使各神經(jīng)元輸出在誤差指標(biāo)中具有等量的作用。利用遺傳算法優(yōu)化遺傳算法優(yōu)化神經(jīng)網(wǎng)絡(luò)主要包括三方面:網(wǎng)絡(luò)結(jié)構(gòu)優(yōu)化、權(quán)值優(yōu)化、學(xué)習(xí)規(guī)則優(yōu)化,這里主要討論的是權(quán)值優(yōu)化。首先,用遺傳算法對初始權(quán)值分布進(jìn)行優(yōu)化,在解空間中找出一個較好的搜索空間;然后,再用BP算法在這個較小的解空間中搜索出最優(yōu)解。用改進(jìn)的遺傳算法優(yōu)化神經(jīng)網(wǎng)絡(luò)權(quán)值,能夠更好地防止搜索陷入局部極小值。遺傳算法優(yōu)化神經(jīng)網(wǎng)絡(luò)權(quán)值的主要步驟如圖4-1所示。.基于MATLAB勺建模仿真MATLAB中的神經(jīng)網(wǎng)絡(luò)工具箱由許多子程序組成,這些子程序已完成了神經(jīng)網(wǎng)絡(luò)算法中所涉及的許多運算和操作,使用者根據(jù)需要調(diào)用相關(guān)函數(shù)即可。對于一個實際問題,選用哪種BP算法很難判斷,它取決于很多因素,包括問題的復(fù)雜程度、學(xué)習(xí)樣本的多少、隱層的節(jié)點數(shù)目、誤差目標(biāo)等。例:創(chuàng)建一個含一個隱層(含3個神經(jīng)元)的單輸出BP神經(jīng)網(wǎng)絡(luò),采用各種不同的算法訓(xùn)練該網(wǎng)絡(luò),并對一位整數(shù)奇偶性判別問題進(jìn)行測試。訓(xùn)練樣本為p=[0123456789],t=[0101010101]。選取的BP網(wǎng)絡(luò)有10個輸入層神經(jīng)元,4個隱含層神經(jīng)元,1個

輸出層神經(jīng)元。以p作為網(wǎng)絡(luò)輸入,t作為網(wǎng)絡(luò)輸出,并對網(wǎng)絡(luò)進(jìn)行初始化。通過大量的仿真試驗,分別對基本BP算法、附加動量項法、自適應(yīng)學(xué)習(xí)率法對該網(wǎng)絡(luò)進(jìn)行訓(xùn)練,通過大量的仿真實驗,得到網(wǎng)絡(luò)訓(xùn)練的誤差曲線如圖5-1~圖5-3所示。10-SE-Rleos6=°?6匚'£豆1110-SE-Rleos6=°?6匚'£豆11Performanceis0-000998266,Goalis0.001002000050StopTraining圖5-1基本BP算法的訓(xùn)練誤差曲線

圖5-2附加動量項法的訓(xùn)練誤差曲線XCJE-叩-E09當(dāng)一mo)uc?10>PEm—-ECIS中=圖5-2附加動量項法的訓(xùn)練誤差曲線XCJE-叩-E09當(dāng)一mo)uc?10>PEm—-ECIS中=0?6左匚名」11Performanceis□.000964764,Goalis0.00110°1010-202040EO80WO120140160180200StopTrainingI202Epochs圖5-3自適應(yīng)學(xué)習(xí)率法的訓(xùn)練誤差曲線從圖中可以看出,采用附加動量之后,其所加入的動量項實際上相當(dāng)于阻尼項,它減小了學(xué)習(xí)過程的震蕩趨勢,從而改變了收斂性,因此它經(jīng)過3633次學(xué)習(xí)后訓(xùn)練結(jié)束,網(wǎng)絡(luò)訓(xùn)練步數(shù)減少,訓(xùn)練速度加快,而誤差的收斂速度也加快了很多;圖5-3的自適應(yīng)學(xué)習(xí)率法具有較快的收斂速度,經(jīng)過202次學(xué)習(xí)后即停止訓(xùn)練,比普通的訓(xùn)練算法快10倍以上。.結(jié)束語本文以神經(jīng)網(wǎng)絡(luò)中目前應(yīng)用最廣、最具代表性的BP神經(jīng)網(wǎng)絡(luò)為研究對象,分析了其基本特征和缺陷,探討了優(yōu)化改進(jìn)思路,并用MATLAB進(jìn)行了仿真驗證。BP神經(jīng)網(wǎng)絡(luò)能同時描述多個控制或預(yù)測量的非線性系統(tǒng)。其多種改進(jìn)算法適用于不同網(wǎng)絡(luò)結(jié)構(gòu),適用于關(guān)系復(fù)雜的多

溫馨提示

  • 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

提交評論