應(yīng)用人工神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)油田產(chǎn)量_第1頁(yè)
應(yīng)用人工神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)油田產(chǎn)量_第2頁(yè)
應(yīng)用人工神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)油田產(chǎn)量_第3頁(yè)
應(yīng)用人工神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)油田產(chǎn)量_第4頁(yè)
應(yīng)用人工神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)油田產(chǎn)量_第5頁(yè)
已閱讀5頁(yè),還剩64頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、應(yīng)用人工神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)油田產(chǎn)量前言第68頁(yè) 共69頁(yè)第69頁(yè) 共69頁(yè)應(yīng)用人工神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)油田產(chǎn)量1 前言在石油工業(yè)中,為了確保油田開(kāi)發(fā)生產(chǎn)處于高產(chǎn)穩(wěn)產(chǎn)狀態(tài),可靠預(yù)測(cè)油田原油產(chǎn)量是油田開(kāi)發(fā)的一項(xiàng)關(guān)鍵研究工作。影響油田產(chǎn)量的因素主要分為地質(zhì)因素和人為因素,預(yù)測(cè)油田油產(chǎn)量主要考慮這兩個(gè)方面。當(dāng)前,在我國(guó)的一些老油田大多是非自噴井,需要進(jìn)行注水或蒸汽驅(qū)油,因此油的含水率也是主要的影響因素之一。地下原油的儲(chǔ)量基本上是不變的,因此油田的動(dòng)用儲(chǔ)量也是影響因素。這些參數(shù)和未來(lái)產(chǎn)量之間的關(guān)系是非線性的,并且具有隨機(jī)性和不確定性,用傳統(tǒng)的線性方法很難處理。目前,預(yù)測(cè)油田產(chǎn)量的單變量建模方法主要有遞減曲線法、增長(zhǎng)曲

2、線法和水驅(qū)曲線法等,但油田開(kāi)發(fā)是一個(gè)復(fù)雜的多變量非線性動(dòng)力學(xué)系統(tǒng),單變量模型一般不能充分體現(xiàn)影響油田產(chǎn)量的動(dòng)態(tài)因素,所以其預(yù)測(cè)精度有限。傳統(tǒng)多變量模型的建立,通常由實(shí)際工作經(jīng)驗(yàn)來(lái)選擇一些與油田產(chǎn)量有關(guān)的因素作為建模變量,然后利用多元線性回歸等方法建立預(yù)測(cè)模型。這些方法的不足之處在于過(guò)分依賴輸出變量與輸入變量的線性關(guān)系,當(dāng)部分變量的顯著性不足時(shí)會(huì)在一定程度上影響預(yù)測(cè)精度。為此,國(guó)內(nèi)外許多學(xué)者采用過(guò)基于指數(shù)函數(shù)形式的灰色模型GM、Logistic 模型、Weng 旋回模型以及簡(jiǎn)單的一元回歸模型等來(lái)研究油氣田生產(chǎn)開(kāi)發(fā)系統(tǒng)行為的變化規(guī)律。遺憾的是,這些方法雖具有一定的優(yōu)越性,但因條件的限制常使得效果不

3、夠理想。例如灰色建模及外推預(yù)測(cè)模型在實(shí)際應(yīng)用中,對(duì)某些形似規(guī)則的單調(diào)或波動(dòng)數(shù)列模擬精度較低,甚至有時(shí)出現(xiàn)反常現(xiàn)象,如預(yù)測(cè)值超過(guò)臨界飽和值,變化趨勢(shì)就不合理。由此,論文研究了基于MATLAB的BP神經(jīng)網(wǎng)絡(luò)技術(shù)來(lái)解決油田開(kāi)發(fā)過(guò)程中產(chǎn)量動(dòng)態(tài)變化的預(yù)測(cè)問(wèn)題。選題背景2 選題背景2.1 課題來(lái)源生產(chǎn)/社會(huì)實(shí)際2.2 研究課題的目的和意義在本論文中,結(jié)合眾多具體油田產(chǎn)量預(yù)測(cè)理論和神經(jīng)網(wǎng)絡(luò)理論知識(shí),對(duì)基于BP神經(jīng)網(wǎng)絡(luò)的預(yù)測(cè)方法進(jìn)行分析及對(duì)其在油田產(chǎn)量預(yù)測(cè)中的應(yīng)用研究,建立BP神經(jīng)網(wǎng)絡(luò)的預(yù)測(cè)模型。在神經(jīng)網(wǎng)絡(luò)的實(shí)際應(yīng)用中,百分之八九十的神經(jīng)網(wǎng)絡(luò)模型都是采用BP網(wǎng)絡(luò)及其變化形式。BP網(wǎng)絡(luò)采用誤差反向傳播算法,是神

4、經(jīng)網(wǎng)絡(luò)中最有效、最活躍的一種方法。由實(shí)踐證明,對(duì)于任意閉合區(qū)間連續(xù)函數(shù)都可以用含有一個(gè)隱含層的BP網(wǎng)絡(luò)來(lái)逼近。因而采用三層BP網(wǎng)絡(luò)對(duì)油田產(chǎn)量進(jìn)行預(yù)測(cè)可以有效的刻畫其具有的不確定、多輸入、復(fù)雜的非線性特征。MATLAB神經(jīng)網(wǎng)絡(luò)工具箱就是以人工神經(jīng)網(wǎng)絡(luò)為理論基礎(chǔ),用MATLAB構(gòu)造出神經(jīng)網(wǎng)絡(luò)所涉及的公式計(jì)算、矩陣操作等大部分子程序,用于設(shè)計(jì)和訓(xùn)練,使用戶從繁雜的程序設(shè)計(jì)工作中解脫出來(lái)。因此,研究本論文在理論上可以對(duì)預(yù)測(cè)方法的設(shè)計(jì)和優(yōu)化起到借鑒作用;在實(shí)踐方面,由于本文將具體以油田產(chǎn)量預(yù)測(cè)為實(shí)例來(lái)研究基于BP神經(jīng)網(wǎng)絡(luò)的預(yù)測(cè)方法及應(yīng)用。所以本論文的研究實(shí)際上也為指導(dǎo)油田產(chǎn)量預(yù)測(cè)提供了一種應(yīng)用價(jià)值高、可

5、行性好的新方法,對(duì)實(shí)用預(yù)測(cè)技術(shù)的發(fā)展能起到一定的推進(jìn)作用。2.3 論文應(yīng)完成的內(nèi)容和要求主要內(nèi)容為:理解并分析預(yù)測(cè)油田產(chǎn)量的原理和方法;應(yīng)用BP神經(jīng)網(wǎng)絡(luò)的工作原理;分析和設(shè)計(jì)BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)油田產(chǎn)量的模型;利用MATLAB進(jìn)行仿真并分析結(jié)果;撰寫畢業(yè)設(shè)計(jì)論文。具體要求為:分析油田產(chǎn)量的預(yù)測(cè)原理,理解BP神經(jīng)網(wǎng)絡(luò)的工作原理,應(yīng)用人工神經(jīng)網(wǎng)提出油田產(chǎn)量的預(yù)測(cè)模型。利用MATLAB的NNET進(jìn)行仿真并分析結(jié)果。2.4 神經(jīng)網(wǎng)絡(luò)研究現(xiàn)狀2.4.1 人工神經(jīng)網(wǎng)絡(luò)研究隨著人工神經(jīng)網(wǎng)絡(luò)20世紀(jì)80年代在世界范圍內(nèi)的復(fù)蘇,國(guó)內(nèi)也逐步掀起了研究熱潮。1989年10月和11月,分別在北京和廣州召開(kāi)了神經(jīng)網(wǎng)絡(luò)及其應(yīng)

6、用討論會(huì)和第一屆全國(guó)信號(hào)處理神經(jīng)網(wǎng)絡(luò)學(xué)術(shù)會(huì)議1990年2月由國(guó)內(nèi)八個(gè)學(xué)會(huì)(中國(guó)電子學(xué)會(huì)、人工智能學(xué)會(huì)、自動(dòng)化學(xué)會(huì)、通信學(xué)會(huì)、物理學(xué)會(huì)、生物物理學(xué)會(huì)和心理學(xué)會(huì))聯(lián)合在北京召開(kāi)“中國(guó)神經(jīng)網(wǎng)絡(luò)首屆學(xué)術(shù)會(huì)議”。這次大會(huì)以“八學(xué)會(huì)聯(lián)盟,探智能奧秘”為主題,收到了300多篇學(xué)術(shù)論文,開(kāi)創(chuàng)了中國(guó)人工神經(jīng)網(wǎng)絡(luò)及神經(jīng)計(jì)算機(jī)方面科學(xué)研究的新紀(jì)元。經(jīng)過(guò)十幾年的發(fā)展,中國(guó)學(xué)術(shù)界和工程界在人工神經(jīng)網(wǎng)絡(luò)的理論研究和應(yīng)用方面取得了豐碩成果,學(xué)術(shù)論文!應(yīng)用成果和研究人員逐年增加。在國(guó)際上,1987年,在美國(guó)加洲召開(kāi)了第一屆國(guó)際神經(jīng)網(wǎng)絡(luò)學(xué)會(huì)。此后每年召開(kāi)兩次國(guó)際聯(lián)合神經(jīng)網(wǎng)絡(luò)大會(huì)(IJCNN)。不久,該學(xué)會(huì)創(chuàng)辦了刊物 Journ

7、al Neural Networks,另有十幾種國(guó)際著名的神經(jīng)網(wǎng)絡(luò)學(xué)術(shù)刊物相繼問(wèn)世。至此,神經(jīng)網(wǎng)絡(luò)理論研究在國(guó)際學(xué)術(shù)領(lǐng)域獲得了其應(yīng)有的地位。2.4.2 BP神經(jīng)網(wǎng)絡(luò)BP神經(jīng)網(wǎng)絡(luò)的誤差逆?zhèn)鞑ニ惴ㄒ蛴兄虚g隱含層和相應(yīng)的學(xué)習(xí)規(guī)則,使得它具有很強(qiáng)的非線性映射能力,而且網(wǎng)絡(luò)的中間層數(shù)、各層神經(jīng)元個(gè)數(shù)及網(wǎng)絡(luò)的學(xué)習(xí)系數(shù)等參數(shù)可以根據(jù)實(shí)際情況設(shè)定,有很大的靈活性,且能夠識(shí)別含有噪聲的樣本,經(jīng)過(guò)學(xué)習(xí)能夠把樣本隱含的特征和規(guī)則分布在神經(jīng)網(wǎng)絡(luò)的連接權(quán)上??偟恼f(shuō)來(lái),BP網(wǎng)絡(luò)的優(yōu)點(diǎn)主要有:(1)算法推導(dǎo)清楚,學(xué)習(xí)精度較高;(2)經(jīng)過(guò)訓(xùn)練后的BP網(wǎng)絡(luò),運(yùn)行速度很快,有的可用于實(shí)時(shí)處理;(3)多層(至少三層)BP網(wǎng)絡(luò)具有理

8、論上逼近任意非線性連續(xù)函數(shù)的能力。也就是說(shuō),可以使多層前饋神經(jīng)網(wǎng)絡(luò)學(xué)會(huì)任何可學(xué)習(xí)的東西,而信息處理的大部分問(wèn)題都能歸納為數(shù)學(xué)映射,通過(guò)選擇一定的非線性和連接強(qiáng)度調(diào)節(jié)規(guī)律,BP網(wǎng)絡(luò)就可解決任何一個(gè)信息處理的問(wèn)題。目前,在手寫字體的識(shí)別、語(yǔ)音識(shí)別、文本語(yǔ)言轉(zhuǎn)換、圖像識(shí)別以及生物醫(yī)學(xué)信號(hào)處理方面已有實(shí)際的應(yīng)用。同時(shí)BP算法與其它算法一樣,也存在自身的缺陷:(1)由于該算法采用誤差導(dǎo)數(shù)指導(dǎo)學(xué)習(xí)過(guò)程,在存在較多局部極小點(diǎn)的情況下容易陷入局部極小點(diǎn),不能保證收斂到全局最小點(diǎn);(2)存在學(xué)習(xí)速度與精度之間的矛盾,當(dāng)學(xué)習(xí)速度較快時(shí),學(xué)習(xí)過(guò)程容易產(chǎn)生振蕩,難以得到精確結(jié)果,而當(dāng)學(xué)習(xí)速度較慢時(shí),雖然結(jié)果的精度較高

9、,但學(xué)習(xí)周期太長(zhǎng);(3)算法學(xué)習(xí)收斂速度慢;(4)網(wǎng)絡(luò)學(xué)習(xí)記憶具有不穩(wěn)定性,即當(dāng)給一個(gè)訓(xùn)練好的網(wǎng)絡(luò)提供新的學(xué)習(xí)記憶模式時(shí),將使已有的連接權(quán)值打亂,導(dǎo)致已記憶的學(xué)習(xí)模式的信息消失;(5)網(wǎng)絡(luò)中間層(隱含層)的層數(shù)及它的單元數(shù)的選取無(wú)理論上的指導(dǎo),而是根據(jù)經(jīng)驗(yàn)確定。因此網(wǎng)絡(luò)的設(shè)計(jì)有時(shí)不一定是最佳的方案。2.4.3 人工神經(jīng)網(wǎng)絡(luò)的發(fā)展目前,神經(jīng)網(wǎng)絡(luò)正處于由簡(jiǎn)單的并行處理模型機(jī)制的研究到對(duì)其變換能力、變化機(jī)制進(jìn)行深入的和嚴(yán)格意義數(shù)學(xué)理論分析的研究,許多學(xué)者正在對(duì)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的整體能力和限制進(jìn)行深入的理論分析。以神經(jīng)網(wǎng)絡(luò)為代表的鏈接主義模式,從大規(guī)模并行分布式信息處理和非線性系統(tǒng)的認(rèn)知機(jī)理上來(lái)反映人腦信

10、息處理和思維的本質(zhì),其發(fā)展的推動(dòng)力來(lái)源于它特有的非線性適應(yīng)性信息處理能力。人工神經(jīng)網(wǎng)絡(luò)進(jìn)一步認(rèn)識(shí)智能與機(jī)器的關(guān)系。神經(jīng)網(wǎng)絡(luò)是在現(xiàn)代神經(jīng)科學(xué)研究成果的基礎(chǔ)上提出的,試圖模擬神經(jīng)網(wǎng)絡(luò)加工、記憶信息的方法,是由大量處理單元組成的非線性、自適應(yīng)、自組織系統(tǒng),設(shè)計(jì)一種新的機(jī)器,使之具有人腦風(fēng)格的信息處理能力。可以預(yù)測(cè),在21世紀(jì)初,智能的機(jī)器實(shí)現(xiàn)問(wèn)題的研究將有新的進(jìn)展和突破。雖然當(dāng)前神經(jīng)網(wǎng)絡(luò)已經(jīng)取得不錯(cuò)的發(fā)展,大規(guī)模并行處理也帶來(lái)了計(jì)算上的改進(jìn),但是依然存在諸多需要解決的問(wèn)題。例如,學(xué)習(xí)新樣本模式會(huì)對(duì)舊的已有知識(shí)造成破壞、大多數(shù)學(xué)習(xí)算法還都是局部算法、等等。因此,探索更有效的學(xué)習(xí)新算法是神經(jīng)網(wǎng)絡(luò)當(dāng)前研究

11、的一個(gè)熱點(diǎn),而且也取得了很多成果。首先是神經(jīng)網(wǎng)絡(luò)自身的改進(jìn),主要是產(chǎn)生新型網(wǎng)絡(luò)或者引進(jìn)新的算法。如Amari運(yùn)用微分流形理論創(chuàng)建的信息幾何,首次將非歐氏空間的研究帶入了神經(jīng)網(wǎng)絡(luò)模型的研究。同時(shí),將神經(jīng)網(wǎng)絡(luò)和其他的算法結(jié)合起來(lái)也取得了不錯(cuò)的成果。如神經(jīng)網(wǎng)絡(luò)與遺傳算法、混沌理論等產(chǎn)生了遺傳神經(jīng)網(wǎng)絡(luò)、混沌神經(jīng)網(wǎng)絡(luò)等?;蛘邔⑸窠?jīng)網(wǎng)絡(luò)與各種控制方法有機(jī)結(jié)合,其建模算法和控制系統(tǒng)的穩(wěn)定性等研究也是當(dāng)前的熱點(diǎn)問(wèn)題。在數(shù)學(xué)理論上研究方面,用數(shù)理方法探索智能水平更高的神經(jīng)網(wǎng)絡(luò)模型,深入研究網(wǎng)絡(luò)的算法和性能,如神經(jīng)計(jì)算、進(jìn)化計(jì)算、穩(wěn)定性、收斂性、計(jì)算復(fù)雜性、容錯(cuò)性、魯棒性等,開(kāi)發(fā)新的網(wǎng)絡(luò)數(shù)理理論?,F(xiàn)有的一些神經(jīng)網(wǎng)

12、絡(luò)模型并沒(méi)有攻克組合爆炸問(wèn)題,只是把計(jì)算量轉(zhuǎn)交給了學(xué)習(xí)算法來(lái)完成,具體來(lái)說(shuō),增加處理機(jī)數(shù)目一般不能明顯增加近似求解的規(guī)模??梢哉f(shuō),有些神經(jīng)網(wǎng)絡(luò)模型的計(jì)算(學(xué)習(xí))時(shí)間與神經(jīng)元有多少事實(shí)上關(guān)系不太大,卻與學(xué)習(xí)的樣本有明顯的依賴關(guān)系。值得注意的是,盡管采用大規(guī)模并行處理機(jī)是神經(jīng)網(wǎng)絡(luò)計(jì)算的重要特征,但我們還應(yīng)尋找其它有效方法,建立具有計(jì)算復(fù)雜性、網(wǎng)絡(luò)容錯(cuò)性和堅(jiān)韌性的計(jì)算理論。由于神經(jīng)網(wǎng)絡(luò)的非線性,因此非線性問(wèn)題的研究是神經(jīng)網(wǎng)絡(luò)理論發(fā)展的一個(gè)最大動(dòng)力。特別是人們發(fā)現(xiàn),腦中存在著混沌現(xiàn)象以來(lái),用混沌動(dòng)力學(xué)啟發(fā)神經(jīng)網(wǎng)絡(luò)的研究或用神經(jīng)網(wǎng)絡(luò)產(chǎn)生混沌成為擺在人們面前的一個(gè)新課題,因?yàn)閺纳肀举|(zhì)角度出發(fā)是研究神經(jīng)網(wǎng)

13、絡(luò)的根本手段。神經(jīng)網(wǎng)絡(luò)軟件模擬,硬件實(shí)現(xiàn)的研究以及神經(jīng)網(wǎng)絡(luò)在各個(gè)科學(xué)技術(shù)領(lǐng)域應(yīng)用的研究神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的研究是神經(jīng)網(wǎng)絡(luò)的實(shí)現(xiàn)以及成功地實(shí)現(xiàn)應(yīng)用的前提,又是優(yōu)越的物理前提。它體現(xiàn)了算法和結(jié)構(gòu)的統(tǒng)一,是硬件和軟件的混合體,這種硬軟混合結(jié)構(gòu)模型可以為意識(shí)的作用和基本機(jī)制提供解釋。未來(lái)的研究主要是針對(duì)信息處理功能體,將系統(tǒng)、結(jié)構(gòu)、電路、器件和材料等方面的知識(shí)有機(jī)結(jié)合起來(lái),建構(gòu)有關(guān)的新概念和新技術(shù),如結(jié)晶功能體、最高效應(yīng)功能體、高分子功能體等。目前有些學(xué)者正在研究從硬件技術(shù)到應(yīng)用之間的映射理論,將會(huì)出現(xiàn)一些新的方法。由于神經(jīng)網(wǎng)絡(luò)可以用傳統(tǒng)計(jì)算機(jī)模擬,也可以用集成電路芯片組成神經(jīng)計(jì)算機(jī),甚至還可以用光學(xué)的、生

14、物芯片的方式實(shí)現(xiàn),因此研制純軟件模擬,虛擬模擬和全硬件實(shí)現(xiàn)的電子神經(jīng)網(wǎng)絡(luò)計(jì)算機(jī)潛力巨大。如何使神經(jīng)網(wǎng)絡(luò)計(jì)算機(jī)與傳統(tǒng)的計(jì)算機(jī)和人工智能技術(shù)相結(jié)合也是前沿課題,如何使神經(jīng)網(wǎng)絡(luò)計(jì)算機(jī)的功能向智能化發(fā)展,研制與人腦功能相似的智能計(jì)算機(jī),如光學(xué)神經(jīng)計(jì)算機(jī)和分子神經(jīng)計(jì)算機(jī)等等,將具有十分誘人的前景。2.5 研究課題的思路和步驟本論文主要研究應(yīng)用人工神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)油田產(chǎn)量的方法,并通過(guò)MATLAB仿真實(shí)現(xiàn)直觀結(jié)果;對(duì)預(yù)測(cè)效果進(jìn)行分析,用以證明基于BP神經(jīng)網(wǎng)絡(luò)的預(yù)測(cè)方法的可行性和高效性,以及準(zhǔn)確性。研究步驟為:第一步:理解油田預(yù)測(cè)方法和神經(jīng)網(wǎng)絡(luò)工作原理;第二步:掌握BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)算法;第三步:MATLAB神經(jīng)

15、網(wǎng)絡(luò)工具箱的建模方法; 第四步:在MATLABR2010a的環(huán)境,進(jìn)行BP神經(jīng)網(wǎng)絡(luò)的設(shè)計(jì);第五步:使用具體數(shù)據(jù)進(jìn)行仿真實(shí)驗(yàn),檢驗(yàn)?zāi)P偷男ЧA(yù)測(cè)油田產(chǎn)量概述3 預(yù)測(cè)油田產(chǎn)量概述3.1 預(yù)測(cè)的概念預(yù)測(cè)是指在掌握現(xiàn)有信息的基礎(chǔ)上,依照一定的方法與規(guī)律對(duì)未來(lái)的事情進(jìn)行測(cè)算,以預(yù)先了解事情發(fā)展的結(jié)果,也就是人們對(duì)客觀事物發(fā)展變化的一種認(rèn)識(shí)和估計(jì)。作為一種數(shù)據(jù)分析形式,預(yù)測(cè)是在現(xiàn)有數(shù)據(jù)分析的基礎(chǔ)上預(yù)測(cè)未來(lái)的數(shù)據(jù)趨勢(shì),其實(shí)質(zhì)是利用歷史數(shù)據(jù)找出變化規(guī)律,建立連續(xù)值函數(shù)模型,并由此模型對(duì)未來(lái)數(shù)據(jù)的種類及特征進(jìn)行預(yù)測(cè)。3.1.1 預(yù)測(cè)的原理進(jìn)行正確恰當(dāng)?shù)念A(yù)測(cè)也需要好多理論基礎(chǔ),其中延續(xù)性原理、類推性原理和相關(guān)性原

16、理,從不同角度為人們認(rèn)識(shí)和分析事物的發(fā)展規(guī)律提供了理論依據(jù),也是各種預(yù)測(cè)方法成立的基礎(chǔ),只有承認(rèn)這些原理的有效性,才會(huì)運(yùn)用這些技術(shù)方法去進(jìn)行預(yù)測(cè)。我們都知道世界上任何事物的發(fā)展都與其過(guò)去的行為相關(guān)聯(lián),過(guò)去的行為不僅影響到現(xiàn)在,還會(huì)影響到未來(lái)。這表明任何事物的發(fā)展都有時(shí)間上的延續(xù)性。這種延續(xù)性為預(yù)測(cè)的可行性提供了理論依據(jù)。延續(xù)性往往表現(xiàn)在兩個(gè)方面:一是事物發(fā)展趨勢(shì)的特征(如發(fā)展方向、速度、變化周期等)在一段時(shí)間內(nèi)呈現(xiàn)延續(xù)性,對(duì)此可建立趨勢(shì)外推預(yù)測(cè)模型進(jìn)行預(yù)測(cè)。二是在一定的時(shí)期內(nèi),某些環(huán)境因素的結(jié)構(gòu)和相互關(guān)系按照一定的格局延續(xù)下去,也就是系統(tǒng)的結(jié)構(gòu)模式在這段時(shí)間內(nèi)基本不變,因此也可建立結(jié)構(gòu)外推預(yù)測(cè)

17、模型進(jìn)行預(yù)測(cè)。這就是預(yù)測(cè)的延續(xù)性原理。同時(shí),世界上許多事物在發(fā)展變化時(shí)常有類似的地方,利用事物之間表現(xiàn)形式上存在的某些相似的特點(diǎn),當(dāng)兩事物間的發(fā)展變化確有類似性時(shí),就可以把先發(fā)展事物的表現(xiàn)過(guò)程類推到后發(fā)展事物上去,從而對(duì)后發(fā)展事物的未來(lái)做出預(yù)測(cè)。在預(yù)測(cè)技術(shù)中常用到三種類推:一是依據(jù)歷史上曾發(fā)生過(guò)的事件推測(cè)當(dāng)前或未來(lái);二是依據(jù)其他地區(qū)曾發(fā)生過(guò)的事件進(jìn)行類推;三是根據(jù)局部類推總體。這是預(yù)測(cè)的類推性原理。另外一方面,世界上任何事物的發(fā)展變化都不是孤立的,都與其他事物的發(fā)展存在或多或少的相互影響、相互制約、相互促進(jìn)的關(guān)系。相關(guān)性有多種表現(xiàn)形式,其中應(yīng)用最廣泛的是因果關(guān)系分析。在相關(guān)分析的基礎(chǔ)上,許多研

18、究人員研究開(kāi)發(fā)了多種預(yù)測(cè)模型,如回歸模型、系統(tǒng)動(dòng)力學(xué)模型、多層遞階模型等。這是我們認(rèn)識(shí)問(wèn)題,并做出正確的預(yù)測(cè)尤為重要的相關(guān)性原理。3.1.2 預(yù)測(cè)的方法目前,應(yīng)用廣泛的各種預(yù)測(cè)技術(shù)方法都屬于延續(xù)性原理、類推性原理和相關(guān)性原理的范圍。常用的預(yù)測(cè)方法可粗略歸為基于概率模型的統(tǒng)計(jì)學(xué)的方法、基于機(jī)器學(xué)習(xí)的決策樹(shù)方法以及神經(jīng)網(wǎng)絡(luò)方法等幾類。統(tǒng)計(jì)學(xué)方法是基于概率模型的統(tǒng)計(jì)學(xué)方法是從事物的外在數(shù)量上的表現(xiàn)去推斷該事物可能的規(guī)律性的方法。由于基于統(tǒng)計(jì)學(xué)的預(yù)測(cè)方法不考慮系統(tǒng)的復(fù)雜運(yùn)動(dòng),只是統(tǒng)計(jì)過(guò)程的綜合結(jié)果,因而這種方法易于實(shí)行,在一定條件下也是有效的。然而,這類方法得到的規(guī)律并不完全是真實(shí)的,而且已有的真實(shí)規(guī)

19、律在未來(lái)的演變中也并不全都保持下來(lái),因而它是屬于“現(xiàn)象學(xué)”范疇,同時(shí)統(tǒng)計(jì)建模又明顯帶有主觀性。而且,由于在大多數(shù)現(xiàn)實(shí)世界中的問(wèn)題,如商品的銷售量、股票價(jià)格、產(chǎn)品合格率等,描述這些事件的變化所需的變量以上百計(jì),且這些變量本身往往都是非線性的,所以,很難找到簡(jiǎn)單有效的統(tǒng)計(jì)方法來(lái)預(yù)測(cè)。為此,人們又發(fā)明了許多新的手段來(lái)試圖解決這個(gè)問(wèn)題,如決策樹(shù)、神經(jīng)網(wǎng)絡(luò)等。機(jī)器學(xué)習(xí)是讓計(jì)算機(jī)通過(guò)模擬和實(shí)現(xiàn)人類的學(xué)習(xí)以獲取知識(shí)的過(guò)程,是計(jì)算機(jī)獲取智能的最主要手段?;跈C(jī)器學(xué)習(xí)的決策樹(shù)方法具有精確度比較高、構(gòu)造過(guò)程簡(jiǎn)單的特點(diǎn),常用于構(gòu)造預(yù)測(cè)模型。神經(jīng)網(wǎng)絡(luò)作為一種大規(guī)模并行的非線性動(dòng)力系統(tǒng),具有較強(qiáng)的處理非線性問(wèn)題的能力,

20、因而在預(yù)測(cè)中顯示了很好的應(yīng)用前景。早在19世紀(jì)80年代,國(guó)外的一些科學(xué)家就嘗試將神經(jīng)網(wǎng)絡(luò)應(yīng)用于預(yù)測(cè),并取得了一定的成果。基于神經(jīng)網(wǎng)絡(luò)的預(yù)測(cè)方法可以建立在多種自學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò)模型基礎(chǔ)之上。如使用前饋型誤差反向傳播(BP)網(wǎng)絡(luò)、徑向基函數(shù)(RBF,即Radial Basis Function)網(wǎng)絡(luò)、自適應(yīng)諧振理論網(wǎng)絡(luò)等。3.2 預(yù)測(cè)油田產(chǎn)量的概述中國(guó)加入WTO后,石油企業(yè)將面臨著更大機(jī)遇與挑戰(zhàn),如何提高原油產(chǎn)量,控制原油生產(chǎn)成本,提高油田勘探與開(kāi)發(fā)的經(jīng)濟(jì)效益,將是油田開(kāi)發(fā)中首先解決的問(wèn)題,開(kāi)發(fā)指標(biāo)的預(yù)測(cè)是關(guān)鍵的一步。原油產(chǎn)量油田開(kāi)發(fā)指標(biāo)預(yù)測(cè)主要是對(duì)產(chǎn)量、含水、注水的測(cè)算。油田開(kāi)發(fā)是一個(gè)復(fù)雜的多變量

21、非線性動(dòng)力學(xué)系統(tǒng),為有效地預(yù)測(cè)油田產(chǎn)量,確保油田生產(chǎn)過(guò)程高產(chǎn)穩(wěn)產(chǎn),該文提出采用多元線性回歸與神經(jīng)網(wǎng)絡(luò)相結(jié)合的方法對(duì)油田產(chǎn)量多變量預(yù)測(cè)模型進(jìn)行優(yōu)化。首先基于回歸分析的“后退法”對(duì)影響產(chǎn)量的變量進(jìn)行優(yōu)選,然后通過(guò)神經(jīng)網(wǎng)絡(luò)對(duì)優(yōu)選后的變量進(jìn)行訓(xùn)練得到最終的預(yù)測(cè)模型,從而實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)與多元線性回歸相結(jié)合建立多變量預(yù)測(cè)模型。實(shí)際應(yīng)用結(jié)果表明,優(yōu)化后的模型簡(jiǎn)潔實(shí)用,可以在一定程度上提高模型的預(yù)測(cè)精度,并減少建模預(yù)測(cè)所需數(shù)據(jù)量。從滲流力學(xué)和控制論角度看,油層系統(tǒng)屬于分布參數(shù)系統(tǒng),描述其狀態(tài)的最為根本的物理量是油層壓力場(chǎng)和含水飽和度場(chǎng)(脫氣或注氣情況下還要有含氣飽和度場(chǎng),對(duì)于化學(xué)驅(qū)還要有注入化學(xué)劑濃度場(chǎng)),但在

22、通常情況下這些場(chǎng)描述起來(lái)繁雜,既不易獲得,也不易使用。因此,在工程上人們常用能夠計(jì)量和測(cè)試到的這些狀態(tài)的某種輸出或?qū)С鲋笜?biāo),如油水井地層壓力、產(chǎn)油量、產(chǎn)液量、含水與采收率等量值對(duì)油層開(kāi)采狀態(tài)進(jìn)行表征,這些量值就是人們通常所說(shuō)的開(kāi)發(fā)指標(biāo)。一個(gè)油田開(kāi)采狀況的評(píng)價(jià),油田開(kāi)發(fā)規(guī)劃,油田開(kāi)發(fā)方案設(shè)計(jì)與調(diào)整等決策管理問(wèn)題都是以油田開(kāi)發(fā)指標(biāo)變化特征作為重要依據(jù)的。因此,油田開(kāi)發(fā)指標(biāo)預(yù)測(cè)在油田開(kāi)發(fā)工作中具有極其重要地位,預(yù)測(cè)方法研究是石油科學(xué)重點(diǎn)課題。可以說(shuō),從石油工業(yè)誕生那天起,油田開(kāi)發(fā)指標(biāo)預(yù)測(cè)工作就開(kāi)始了,隨著現(xiàn)代科學(xué)技術(shù)的發(fā)展和油田開(kāi)發(fā)生產(chǎn)的實(shí)際需要,油田開(kāi)發(fā)指標(biāo)預(yù)測(cè)方法得到了長(zhǎng)足的發(fā)展和完善,已成為油

23、藏工程研究的一個(gè)重要內(nèi)容。神經(jīng)網(wǎng)絡(luò)的MATLAB環(huán)境4 神經(jīng)網(wǎng)絡(luò)的MATLAB環(huán)境4.1 MATLAB軟件MATLAB是由美國(guó)MATHWORKS公司發(fā)布的主要面對(duì)科學(xué)計(jì)算、可視化以及交互式程序設(shè)計(jì)的高科技計(jì)算環(huán)境。它將數(shù)值分析、矩陣計(jì)算、科學(xué)數(shù)據(jù)可視化以及非線性動(dòng)態(tài)系統(tǒng)的建模和仿真等諸多強(qiáng)大功能集成在一個(gè)易于使用的視窗環(huán)境中,為科學(xué)研究、工程設(shè)計(jì)以及必須進(jìn)行有效數(shù)值計(jì)算的眾多科學(xué)領(lǐng)域提供了一種全面的解決方案,并在很大程度上擺脫了傳統(tǒng)非交互式程序設(shè)計(jì)語(yǔ)言(如C、Fortran)的編輯模式,代表了當(dāng)今國(guó)際科學(xué)計(jì)算軟件的先進(jìn)水平。4.2 MATLAB環(huán)境下的神經(jīng)網(wǎng)絡(luò)工具箱MATLAB包括擁有數(shù)百個(gè)內(nèi)

24、部函數(shù)的主包和三十幾種工具包。工具包又可以分為功能性工具包和學(xué)科工具包。功能工具包用來(lái)擴(kuò)充MATLAB的符號(hào)計(jì)算,可視化建模仿真,文字處理及實(shí)時(shí)控制等功能。學(xué)科工具包是專業(yè)性比較強(qiáng)的工具包,控制工具包,信號(hào)處理工具包,通信工具包等都屬于此類。開(kāi)放性使MATLAB廣受用戶歡迎。除內(nèi)部函數(shù)外,所有MATLAB主包文件和各種工具包都是可讀可修改的文件,用戶通過(guò)對(duì)源程序的修改或加入自己編寫程序構(gòu)造新的專用工具包。如有Control System Toolbox控制系統(tǒng)工具箱;System Identification Toolbox系統(tǒng)辨識(shí)工具箱;Fuzzy Logic Toolbox模糊邏輯工具箱;

25、Model predictive Control Toolbox模型預(yù)測(cè)控制工具箱;Neural Network Toolbox神經(jīng)網(wǎng)絡(luò)工具箱;Robust Control Toolbox魯棒控制工具箱等等。其中部分用于神經(jīng)網(wǎng)絡(luò)的神經(jīng)網(wǎng)絡(luò)工具箱Neural Network Toolbox中有BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練函數(shù),如表4.1所示:訓(xùn)練方法訓(xùn)練函數(shù)梯度下降法traingd有動(dòng)量的梯度下降法traingdm自適應(yīng)lr梯度下降法traingda自適應(yīng)lr動(dòng)量梯度下降法traingdx彈性梯度下降法trainrpFletcher-Reeves共軛梯度法traincgfPloak-Ribiere共軛梯度

26、法traincgpPowell-Beale共軛梯度法traincgb量化共軛梯度法trainscg擬牛頓算法trainbfg一步正割算法trainossLevenberg-Marquardttrainlm表4.1 BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練函數(shù)其中部分BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練參數(shù)如表4.2所示:訓(xùn)練參數(shù)參數(shù)介紹訓(xùn)練函數(shù)net.trainParam.epochs最大訓(xùn)練次數(shù)(缺省為10)traingd、traingdm、traingda、traingdx、trainrp、traincgf、traincgp、traincgb、trainscg、trainbfg、trainoss、trainlmnet.trainPa

27、ram.goal訓(xùn)練要求精度(缺省為0)traingd、traingdm、traingda、traingdx、trainrp、traincgf、traincgp、traincgb、trainscg、trainbfg、trainoss、trainlmnet.trainParam.lr學(xué)習(xí)率(缺省為0.01)traingd、traingdm、traingda、traingdx、trainrp、traincgf、traincgp、traincgb、trainscg、trainbfg、trainoss、trainlmnet.trainParam.max_fail最大失敗次數(shù)(缺省為5)traingd、

28、traingdm、traingda、traingdx、trainrp、traincgf、traincgp、traincgb、trainscg、trainbfg、trainoss、trainlmnet.trainParam.min_grad最小梯度要求(缺省為1e-10)traingd、traingdm、traingda、traingdx、trainrp、traincgf、traincgp、traincgb、trainscg、trainbfg、trainoss、trainlmnet.trainParam.show顯示訓(xùn)練迭代過(guò)程(NaN表示不顯示,缺省為25)traingd、traingdm、t

29、raingda、traingdx、trainrp、traincgf、traincgp、traincgb、trainscg、trainbfg、trainoss、trainlmnet.trainParam.time最大訓(xùn)練時(shí)間(缺省為inf)traingd、traingdm、traingda、traingdx、trainrp、traincgf、traincgp、traincgb、trainscg、trainbfg、trainoss、trainlmnet.trainParam.mc動(dòng)量因子(缺省0.9)traingdm、traingdxnet.trainParam.lr_inc學(xué)習(xí)率lr增長(zhǎng)比(缺省

30、為1.05)traingda、traingdxnet.trainParam.lr_dec學(xué)習(xí)率lr下降比(缺省為0.7)traingda、traingdxnet.trainParam.max_perf_inc表現(xiàn)函數(shù)增加最大比(缺省為1.04)traingda、traingdxnet.trainParam.delt_inc權(quán)值變化增加量(缺省為1.2)trainrpnet.trainParam.delt_dec權(quán)值變化減小量(缺省為0.5)trainrpnet.trainParam.delt0初始權(quán)值變化(缺省為0.07)trainrpnet.trainParam.deltamax權(quán)值變化最大

31、值(缺省為50.0)trainrpnet.trainParam.searchFcn一維線性搜索方法(缺省為srchcha)traincgf、traincgp、traincgb、trainbfg、trainossnet.trainParam.sigma因?yàn)槎吻髮?dǎo)對(duì)權(quán)值調(diào)整的影響參數(shù)(缺省值5.0e-5)trainscgnet.trainParam.lambdaHessian矩陣不確定性調(diào)節(jié)參數(shù)(缺省為5.0e-7)trainscgnet.trainParam.men_reduc控制計(jì)算機(jī)內(nèi)存/速度的參量,內(nèi)存較大設(shè)為1,否則設(shè)為2(缺省為1)trainlmnet.trainParam.mu的初

32、始值(缺省為0.001)trainlmnet.trainParam.mu_dec的減小率(缺省為0.1)trainlmnet.trainParam.mu_inc的增長(zhǎng)率(缺省為10)trainlmnet.trainParam.mu_max的最大值(缺省為1e10)trainlm表4.2 BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練函數(shù)參數(shù)設(shè)置BP神經(jīng)網(wǎng)絡(luò)算法的不足與改進(jìn)5BP神經(jīng)網(wǎng)絡(luò)的工作原理5.1 應(yīng)用人工神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)油田產(chǎn)量概述油田產(chǎn)量是衡量一個(gè)油田效益的關(guān)鍵因素,也是油田開(kāi)發(fā)的重要任務(wù)之一。若能對(duì)油田產(chǎn)量做出準(zhǔn)確、超前的預(yù)測(cè),并提出提高產(chǎn)量的改進(jìn)方法和措施,勢(shì)必會(huì)減少損失,造福人類。BP神經(jīng)網(wǎng)絡(luò)具有對(duì)非線性系統(tǒng)預(yù)測(cè)

33、的良好特性,可以有效的刻畫其具有的不確定、多輸入、復(fù)雜的非線性特征。它能從己知的數(shù)據(jù)中自動(dòng)的歸納規(guī)則,獲得這些數(shù)據(jù)的內(nèi)在規(guī)律,具有很強(qiáng)的非線性映射能力。BP神經(jīng)網(wǎng)絡(luò)具有高度的并行性和非線性全局作用,具有良好的容錯(cuò)性與聯(lián)想記憶功能力,自適應(yīng)、自學(xué)習(xí)能力強(qiáng)。應(yīng)用人工神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)油田產(chǎn)量是一個(gè)很好的方法。5.2 BP神經(jīng)網(wǎng)絡(luò)的基本原理圖5.1 基本神經(jīng)元模型圖5.2 BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)示意圖BP(Back Propagation)網(wǎng)絡(luò)是1986年由Rumelhart和McCelland為首的科學(xué)家小組提出,是一種按誤差逆?zhèn)鞑ニ惴ㄓ?xùn)練的多層前饋網(wǎng)絡(luò),是目前應(yīng)用最廣泛的神經(jīng)網(wǎng)絡(luò)模型之一。BP網(wǎng)絡(luò)能學(xué)習(xí)和存

34、貯大量的輸入-輸出模式映射關(guān)系,而無(wú)需事前揭示描述這種映射關(guān)系的數(shù)學(xué)方程。它的學(xué)習(xí)規(guī)則是使用最速下降法,通過(guò)反向傳播來(lái)不斷調(diào)整網(wǎng)絡(luò)的權(quán)值和閾值,使網(wǎng)絡(luò)的誤差平方和最小。BP神經(jīng)網(wǎng)絡(luò)模型拓?fù)浣Y(jié)構(gòu)包括輸入層(input)、隱層(hide layer)和輸出層(output layer)(如圖5.2所示)。圖5.3 BP神經(jīng)元5.3 BP神經(jīng)元圖5.3給出了第j個(gè)基本BP神經(jīng)元(節(jié)點(diǎn)),它只模仿了生物神經(jīng)元所具有的三個(gè)最基本也是最重要的功能:加權(quán)、求和與轉(zhuǎn)移。其中x1、x2xixn分別代表來(lái)自神經(jīng)元1、2in的輸入;wj1、wj2wjiwjn則分別表示神經(jīng)元1、2in與第j個(gè)神經(jīng)元的連接強(qiáng)度,即權(quán)值

35、;bj為閾值;f()為傳遞函數(shù);yj為第j個(gè)神經(jīng)元的輸出。第j個(gè)神經(jīng)元的凈輸入值為: (5.1)其中: 若視,即令及包括及,則于是節(jié)點(diǎn)j的凈輸入可表示為: (5.2)凈輸入通過(guò)傳遞函數(shù)(Transfer Function)f ()后,便得到第j個(gè)神經(jīng)元的輸出:(5.3)式中f()是單調(diào)上升函數(shù),而且必須是有界函數(shù),因?yàn)榧?xì)胞傳遞的信號(hào)不可能無(wú)限增加,必有一最大值。5.4 BP神經(jīng)網(wǎng)絡(luò)5.4.1 BP神經(jīng)網(wǎng)絡(luò)傳播BP算法由數(shù)據(jù)流的前向計(jì)算(正向傳播)和誤差信號(hào)的反向傳播兩個(gè)過(guò)程構(gòu)成。正向傳播時(shí),傳播方向?yàn)檩斎雽与[層輸出層,每層神經(jīng)元的狀態(tài)只影響下一層神經(jīng)元。若在輸出層得不到期望的輸出,則轉(zhuǎn)向誤差信

36、號(hào)的反向傳播流程。通過(guò)這兩個(gè)過(guò)程的交替進(jìn)行,在權(quán)向量空間執(zhí)行誤差函數(shù)梯度下降策略,動(dòng)態(tài)迭代搜索一組權(quán)向量,使網(wǎng)絡(luò)誤差函數(shù)達(dá)到最小值,從而完成信息提取和記憶過(guò)程。5.4 三層神經(jīng)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)5.4.2正向傳播設(shè) BP網(wǎng)絡(luò)的輸入層有n個(gè)節(jié)點(diǎn),隱層有q個(gè)節(jié)點(diǎn),輸出層有m個(gè)節(jié)點(diǎn),輸入層與隱層之間的權(quán)值為,隱層與輸出層之間的權(quán)值為,如圖5.4所示。隱層的傳遞函數(shù)為f1(),輸出層的傳遞函數(shù)為f2(),則隱層節(jié)點(diǎn)的輸出為(將閾值寫入求和項(xiàng)中): k=1,2,q (5.4)輸出層節(jié)點(diǎn)的輸出為: j=1,2,m (5.5)至此B-P網(wǎng)絡(luò)就完成了n維空間向量對(duì)m維空間的近似映射。5.4.3 反向傳播反向傳播網(wǎng)

37、絡(luò)(BackPropagation Network,簡(jiǎn)稱BP網(wǎng)絡(luò))是對(duì)非線性可微分函數(shù)進(jìn)行權(quán)值訓(xùn)練的多層網(wǎng)絡(luò)。BP網(wǎng)絡(luò)包含了神經(jīng)網(wǎng)絡(luò)理論中最精華的部分,由于其結(jié)構(gòu)簡(jiǎn)單、可塑性強(qiáng),得到了廣泛的應(yīng)用。特別是它的數(shù)學(xué)意義明確、步驟分明的學(xué)習(xí)算法更使其具有廣泛的應(yīng)用背景。BP網(wǎng)絡(luò)主要用于:(1)函數(shù)逼近:用輸入矢量和相應(yīng)的輸出矢量訓(xùn)練一個(gè)網(wǎng)絡(luò)逼近一個(gè)函數(shù);(2)模式識(shí)別:用一個(gè)特定的輸出矢量將它與輸入矢量聯(lián)系起來(lái);(3)分類:把輸入矢量以所定義的合適方式進(jìn)行分類;(4)數(shù)據(jù)壓縮:減少輸出矢量維數(shù)以便于傳輸或存儲(chǔ)。BP網(wǎng)絡(luò)是基于BP誤差傳播算法的多層前饋網(wǎng)絡(luò),多層BP網(wǎng)絡(luò)不僅有輸入節(jié)點(diǎn)、輸出節(jié)點(diǎn),而且還

38、有一層或多層隱含節(jié)點(diǎn)。三層BP網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)如圖5.4。包括輸入層、輸出層和一個(gè)隱含層。各神經(jīng)元與下一層所有的神經(jīng)元聯(lián)結(jié),同層各神經(jīng)元之間無(wú)聯(lián)結(jié),用箭頭表示信息的流動(dòng)。1)定義誤差函數(shù)輸入個(gè)學(xué)習(xí)樣本,用來(lái)表示。第個(gè)樣本輸入到網(wǎng)絡(luò)后得到輸出(j=1,2,m)。采用平方型誤差函數(shù),于是得到第p個(gè)樣本的誤差Ep: (5.6)式中:為期望輸出。對(duì)于個(gè)樣本,全局誤差為: (5.7)2)輸出層權(quán)值的變化采用累計(jì)誤差BP算法調(diào)整,使全局誤差變小,即 (5.8)式中:學(xué)習(xí)率定義誤差信號(hào)為: (5.9)其中第一項(xiàng): (5.10)第二項(xiàng): (5.11)是輸出層傳遞函數(shù)的偏微分。于是:(5.12)由鏈定理得: (5

39、.13)于是輸出層各神經(jīng)元的權(quán)值調(diào)整公式為:(5.14)3)隱層權(quán)值的變化 (5.15)定義誤差信號(hào)為:(5.16)其中第一項(xiàng): (5.17)依鏈定理有: (5.18)第二項(xiàng):(5.19)是隱層傳遞函數(shù)的偏微分。于是: (5.20)由鏈定理得:(5.21)從而得到隱層各神經(jīng)元的權(quán)值調(diào)整公式為: (5.22)5.5 BP神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)過(guò)程5.5.1 BP神經(jīng)網(wǎng)絡(luò)算法流程BP網(wǎng)絡(luò)的產(chǎn)生歸功于BP算法的獲得,BP算法屬于算法,是一種監(jiān)督式的學(xué)習(xí)算法。其主要思想為:對(duì)于q個(gè)輸入學(xué)習(xí)樣本:,已知與其對(duì)應(yīng)的輸出樣本為:學(xué)習(xí)的目的是用網(wǎng)絡(luò)的實(shí)際輸出與目標(biāo)矢量之間的誤差來(lái)修改其權(quán)值,使A與期望的T盡可能接近。B

40、P算法是由兩部分組成:信息的正向傳遞與誤差的反向傳播。在正向傳播過(guò)程中,輸入信息從輸入經(jīng)隱含層逐層計(jì)算傳向輸出層,每一層神經(jīng)元的狀態(tài)只影響下一層神經(jīng)元的狀態(tài)。如果在輸出層沒(méi)有得到期望輸出,則計(jì)算輸出層的誤差變化值,然后轉(zhuǎn)向反向傳播,通過(guò)網(wǎng)絡(luò)將誤差信號(hào)沿原來(lái)的連接通路反傳回來(lái)修改各神經(jīng)元的權(quán)值直至達(dá)到期望目標(biāo)。其算法流程如圖5.5所示:圖5.5 BP算法框圖5.5.2解釋BP網(wǎng)絡(luò)的傳播現(xiàn)以如圖1所示的三層BP網(wǎng)絡(luò)為例,進(jìn)行算法推導(dǎo)。設(shè)輸入節(jié)點(diǎn):;隱節(jié)點(diǎn):;輸出節(jié)點(diǎn):;輸入節(jié)點(diǎn)與隱節(jié)點(diǎn)之間的網(wǎng)絡(luò)權(quán)值為,隱節(jié)點(diǎn)與輸出節(jié)點(diǎn)間的連接權(quán)值為,期望輸出為。隱含層的激活函數(shù)為,輸出層的激活函數(shù)為。(1)隱含層

41、中第i個(gè)神經(jīng)元輸出為:(5.23)其中:(2)輸出層第k個(gè)神經(jīng)元的輸出為:(5.24)其中:(3)定義誤差函數(shù)為:(5.25)5.5.3求網(wǎng)絡(luò)權(quán)值變化及誤差(1)輸出層的權(quán)值變化對(duì)從第i個(gè)輸入到第k個(gè)輸出的權(quán)值有:(5.26)其中: 則: (5.27)其中:(2)輸出層閾值的變化對(duì)從第i個(gè)輸入到第k個(gè)輸出的閾值有:(5.28)其中:則: (5.29)其中:(3)隱含層權(quán)值的變化對(duì)第j個(gè)輸入到第i個(gè)輸出的權(quán)值,有:(5.30)其中:(5.31)其中: ,(4)隱含層的閾值變化:對(duì)第j個(gè)輸入到第i個(gè)輸出的閾值,有:(5.32)其中:(5.33)其中: ,5.6 誤差傳播的流程與圖形解釋誤差反向傳播

42、的過(guò)程實(shí)際上是通過(guò)計(jì)算輸出層的誤差,然后將其與輸出層激活函數(shù)的一階倒數(shù)相乘來(lái)求得。由于隱含層中沒(méi)有直接給出目標(biāo)矢量,所以利用輸出層的進(jìn)行誤差反向傳遞來(lái)求出隱含層權(quán)值的變化量。然后計(jì)算,并同樣通過(guò)與該層函數(shù)的一階倒數(shù)相乘,而求得,依次求出前層權(quán)值的變化量。如果前面還有隱含層,同樣以此方法類推,一直將輸出誤差一層一層的反推算到第一層為止。其流程如圖5.6所示。k=l,2,s2;i=l,2,sl;j=12r圖5.6 誤差反向傳播的圖形解釋6 BP神經(jīng)網(wǎng)絡(luò)算法的不足與改進(jìn)6.1 BP算法的不足之處6.1.1 收斂速度緩慢BP算法的收斂速度與許多因素有關(guān),其中包括:(1)算法參數(shù)的選擇;(2)BP算法本

43、身的局限性,如BP算法的誤差曲面存在平坦區(qū)域,在這些區(qū)域中,誤差梯度變化較小,即使權(quán)值的調(diào)整置很大,誤差依然下降緩慢等。6.1.2 容易陷入局部最小值在學(xué)習(xí)過(guò)程中有時(shí)會(huì)發(fā)現(xiàn),當(dāng)學(xué)習(xí)反復(fù)進(jìn)行到一定次數(shù)后,網(wǎng)絡(luò)的全局誤差減小的非常緩慢或是根本不再減小了,而此時(shí)網(wǎng)絡(luò)的實(shí)際輸出與期望輸出還有很大的誤差,這種情況就是陷入了局部極小點(diǎn)。導(dǎo)致這種現(xiàn)象的原因是由于網(wǎng)絡(luò)采用的激活函數(shù)是一種非線性的函數(shù),這個(gè)函數(shù)激活后的值是全局誤差的輸入,因此導(dǎo)致全局誤差會(huì)存在多個(gè)極小值,而網(wǎng)絡(luò)收斂時(shí)很有可能陷入其中的某一個(gè)而不是全局的最小值。圖6.1 多個(gè)極小值點(diǎn)的連接權(quán)空間在圖5中,若初始時(shí)在a或c點(diǎn)的位置,網(wǎng)絡(luò)誤差按梯度下

44、降法調(diào)整,只能達(dá)到局部極小值點(diǎn);若在b點(diǎn)的位置,網(wǎng)絡(luò)誤差才能達(dá)到全局最小值。所以,要設(shè)法使收斂過(guò)程跳過(guò)局部極小值點(diǎn)。6.1.3 難以確定隱層數(shù)和節(jié)點(diǎn)數(shù)結(jié)構(gòu)參數(shù)(包括隱層數(shù)、隱層神經(jīng)元數(shù))和運(yùn)算參數(shù)(如步長(zhǎng)、非線性函數(shù)等)的選擇缺乏理論上的指導(dǎo),通常只能根據(jù)經(jīng)驗(yàn)來(lái)選擇。6.2 BP算法的改進(jìn)方案6.2.1 利用動(dòng)量法改進(jìn)BP算法標(biāo)準(zhǔn)BP算法實(shí)質(zhì)上是一種簡(jiǎn)單的最速下降靜態(tài)尋優(yōu)方法,在修正W(K)時(shí),只按照第K步的負(fù)梯度方向進(jìn)行修正,而沒(méi)有考慮到以前積累的經(jīng)驗(yàn),即以前時(shí)刻的梯度方向,從而常常使學(xué)習(xí)過(guò)程發(fā)生振蕩,收斂緩慢。動(dòng)量法權(quán)值調(diào)整算法的具體做法是:將上一次權(quán)值調(diào)整量的一部分迭加到按本次誤差計(jì)算所

45、得的權(quán)值調(diào)整量上,作為本次的實(shí)際權(quán)值調(diào)整量,即:(6.1)其中:為動(dòng)量系數(shù),通常00.9;學(xué)習(xí)率,范圍在0.00110之間。這種方法所加的動(dòng)量因子實(shí)際上相當(dāng)于阻尼項(xiàng),它減小了學(xué)習(xí)過(guò)程中的振蕩趨勢(shì),從而改善了收斂性。動(dòng)量法降低了網(wǎng)絡(luò)對(duì)于誤差曲面局部細(xì)節(jié)的敏感性,有效的抑制了網(wǎng)絡(luò)陷入局部極小。6.2.2 自適應(yīng)調(diào)整學(xué)習(xí)速率標(biāo)準(zhǔn)BP算法收斂速度緩慢的一個(gè)重要原因是學(xué)習(xí)率選擇不當(dāng),學(xué)習(xí)率選得太小,收斂太慢;學(xué)習(xí)率選得太大,則有可能修正過(guò)頭,導(dǎo)致振蕩甚至發(fā)散。(6.2)調(diào)整的基本指導(dǎo)思想是:在學(xué)習(xí)收斂的情況下,增大,以縮短學(xué)習(xí)時(shí)間;當(dāng)偏大致使不能收斂時(shí),要及時(shí)減小,直到收斂為止。此方法可以保證網(wǎng)絡(luò)總是以

46、網(wǎng)絡(luò)可以接受的最大的學(xué)習(xí)速率進(jìn)行訓(xùn)練。當(dāng)一個(gè)較大的學(xué)習(xí)速率仍能夠使網(wǎng)絡(luò)穩(wěn)定學(xué)習(xí),使其誤差繼續(xù)下降,則增加學(xué)習(xí)速率,使其以更大的學(xué)習(xí)速率進(jìn)行學(xué)習(xí)。一旦學(xué)習(xí)速率調(diào)的過(guò)大,而不能保證誤差繼續(xù)減少,則減少學(xué)習(xí)速率直到使其學(xué)習(xí)過(guò)程穩(wěn)定為止。如圖6.2所示:圖6.2 自適應(yīng)學(xué)習(xí)6.2.3 動(dòng)量自適應(yīng)學(xué)習(xí)速率調(diào)整算法采用動(dòng)量法時(shí),BP算法可以找到更優(yōu)的解;采用自適應(yīng)學(xué)習(xí)速率法時(shí),BP算法可以縮短訓(xùn)練時(shí)間。將以上兩種方法結(jié)合起來(lái),就得到動(dòng)量-自適應(yīng)學(xué)習(xí)速率調(diào)整算法。(6.3)其中: 表示在訓(xùn)練模式集的所有模式上求和的梯度信息,(t)表示t時(shí)刻??梢钥闯觯瑥椥訠P算法的權(quán)值更新遵循一個(gè)很簡(jiǎn)單的規(guī)則:如故導(dǎo)數(shù)是正

47、(增加誤差),權(quán)值降低,如果導(dǎo)數(shù)是負(fù),權(quán)值提高。彈性BP方法的主要優(yōu)點(diǎn)是學(xué)習(xí)規(guī)律清楚簡(jiǎn)單,和標(biāo)準(zhǔn)BP算法相比,在計(jì)算上僅有少量的耗費(fèi),基本上不影響收斂。L-M學(xué)習(xí)規(guī)則應(yīng)用L-M(Levenberg-Marquardt)算法比前述幾種使用梯度下降法的BP算法要快得多,但對(duì)于復(fù)雜問(wèn)題,這種方法需要相當(dāng)大的存儲(chǔ)空間。L-M(Levenberg-Marquardt)優(yōu)化方法的權(quán)值調(diào)整率選為: (6.4)其中:e誤差向量;J網(wǎng)絡(luò)誤差對(duì)權(quán)值導(dǎo)數(shù)的雅可比(Jacobian)矩陣;標(biāo)量,當(dāng)很大時(shí)上式接近于梯度法,當(dāng)很小時(shí)上式變成了Gauss-Newton法,在這種方法中,也是自適應(yīng)調(diào)整的。BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型

48、及方法7 BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型及方法7.1 BP神經(jīng)網(wǎng)絡(luò)的基本模型本文借助于MATLAB神經(jīng)網(wǎng)絡(luò)工具箱來(lái)實(shí)現(xiàn)多層前饋BP網(wǎng)絡(luò)(Multi-layer feed-forward back-propagation network)的顏色空間轉(zhuǎn)換,免去了許多編寫計(jì)算機(jī)程序的煩惱。神經(jīng)網(wǎng)絡(luò)的實(shí)際輸出值與輸入值以及各權(quán)值和閾值有關(guān),為了使實(shí)際輸出值與網(wǎng)絡(luò)期望輸出值相吻合,可用含有一定數(shù)量學(xué)習(xí)樣本的樣本集和相應(yīng)期望輸出值的集合來(lái)訓(xùn)練網(wǎng)絡(luò)。訓(xùn)練時(shí)仍然使用本課題中所述的實(shí)測(cè)樣本數(shù)據(jù)。另外,目前尚未找到較好的網(wǎng)絡(luò)構(gòu)造方法。確定神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)和權(quán)系數(shù)來(lái)描述給定的映射或逼近一個(gè)未知的映射,只能通過(guò)學(xué)習(xí)方式得到滿足要

49、求的網(wǎng)絡(luò)模型。神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)可以理解為:對(duì)確定的網(wǎng)絡(luò)結(jié)構(gòu),尋找一組滿足要求的權(quán)系數(shù),使給定的誤差函數(shù)最小。設(shè)計(jì)多層前饋網(wǎng)絡(luò)時(shí),主要側(cè)重試驗(yàn)、探討多種模型方案,在實(shí)驗(yàn)中改進(jìn),直到選取一個(gè)滿意方案為止,可按下列步驟進(jìn)行:對(duì)任何實(shí)際問(wèn)題先都只選用一個(gè)隱層;使用很少的隱層節(jié)點(diǎn)數(shù);不斷增加隱層節(jié)點(diǎn)數(shù),直到獲得滿意性能為止;否則再采用兩個(gè)隱層重復(fù)上述過(guò)程。訓(xùn)練過(guò)程實(shí)際上是根據(jù)目標(biāo)值與網(wǎng)絡(luò)輸出值之間誤差的大小反復(fù)調(diào)整權(quán)值和閾值,直到此誤差達(dá)到預(yù)定值為止。大量實(shí)踐表明,增加隱含層的數(shù)目可以提高BP網(wǎng)絡(luò)的非線性映射能力,但是隱含層的數(shù)目超過(guò)一定值,反而會(huì)使網(wǎng)絡(luò)的性能降低。1989年,HechtNielson證明

50、了對(duì)于任何閉區(qū)間內(nèi)的一個(gè)連續(xù)函數(shù)都可以用一個(gè)隱含層的BP網(wǎng)絡(luò)來(lái)逼近40,也就是一個(gè)三層的BP網(wǎng)絡(luò)可以完成任意的n維向量到m維向量的映射。因此本文將采用含有一層隱含層的三層BP網(wǎng)絡(luò)。BP網(wǎng)絡(luò)的輸入、輸出層的神經(jīng)元數(shù)目完全由使用者的要求來(lái)決定。輸入層的神經(jīng)元數(shù)由影響因素確定。具體模型如圖7.1所示:圖7.1 BP神經(jīng)網(wǎng)絡(luò)模型7.2 確定BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)7.2.1 BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的要求確定了網(wǎng)絡(luò)層數(shù)、每層節(jié)點(diǎn)數(shù)、傳遞函數(shù)、初始權(quán)系數(shù)、學(xué)習(xí)算法等也就確定了BP網(wǎng)絡(luò)。確定這些選項(xiàng)時(shí)有一定的指導(dǎo)原則,但更多的是靠經(jīng)驗(yàn)和試湊。對(duì)于石油產(chǎn)量預(yù)測(cè)問(wèn)題,常用的BP網(wǎng)絡(luò)結(jié)構(gòu)是比較特殊的,網(wǎng)絡(luò)只有一個(gè)輸入節(jié)點(diǎn)。該節(jié)

51、點(diǎn)代表時(shí)間間隔p=t-t0。在實(shí)踐中我們發(fā)現(xiàn),此類結(jié)構(gòu)的神經(jīng)網(wǎng)絡(luò)很難收斂,而且即使收斂后其擬合效果也比較差。出現(xiàn)這種情況的一個(gè)主要原因在于:輸入模式?jīng)]有提供足夠的信息供神經(jīng)網(wǎng)絡(luò)學(xué)習(xí),輸入模式空間是線性的一維空間,為此,需要擴(kuò)展輸入模式空間,增強(qiáng)輸入模式的表達(dá)。一個(gè)方法就是引入函數(shù)連接,把原來(lái)的模式表達(dá)變換到另一個(gè)有更高維數(shù)的增強(qiáng)表達(dá)式,使一維空間中不可分的問(wèn)題能在更高維數(shù)的空間中可分。對(duì)于函數(shù)連接,選擇適當(dāng)?shù)臄U(kuò)展函數(shù)是重要的,本文中將原單輸入P改為P,P2,P3,P4的4個(gè)神經(jīng)元的輸入模式。這樣就增強(qiáng)了模式表達(dá),提高了神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)效率,但卻沒(méi)有在原輸入模式中引入新的增量。網(wǎng)絡(luò)訓(xùn)練精度的提高,

52、可以通過(guò)采用一個(gè)隱含層,而增加其神經(jīng)元個(gè)數(shù)的方法來(lái)獲得。這在結(jié)構(gòu)實(shí)現(xiàn)上,要比增加更多的隱含層要簡(jiǎn)單的多,那么究竟選取多少個(gè)隱含層節(jié)點(diǎn)合適隱含層的單元數(shù)直接影響網(wǎng)絡(luò)的非線性性能,它與所解決問(wèn)題的復(fù)雜性有關(guān)。但問(wèn)題的復(fù)雜性無(wú)法量化,因而也不能有很好的解析式來(lái)確定隱含層單元數(shù)。一般對(duì)于三層靜向網(wǎng)絡(luò)隱含層節(jié)點(diǎn)數(shù)有如下經(jīng)驗(yàn)公式:(7.1)式中,k為樣本數(shù),j為隱含層節(jié)點(diǎn)數(shù),n為輸入層節(jié)點(diǎn)數(shù),如ij, (7.2)式中,m為輸出層節(jié)點(diǎn)數(shù),n為輸入層節(jié)點(diǎn)數(shù),a為110的常數(shù)。(7.3)式中,n為輸入層節(jié)點(diǎn)數(shù)。上述公式根據(jù)不同的應(yīng)用領(lǐng)域來(lái)選。7.2.2 隱層數(shù)的確定1998年Robert Hecht-Niels

53、on證明了對(duì)任何在閉區(qū)間內(nèi)的連續(xù)函數(shù),都可以用一個(gè)隱層的BP網(wǎng)絡(luò)來(lái)逼近,因而一個(gè)三層的BP網(wǎng)絡(luò)可以完成任意的n維到m維的映照。因此我們從含有一個(gè)隱層的網(wǎng)絡(luò)開(kāi)始進(jìn)行訓(xùn)練。7.2.3 BP網(wǎng)絡(luò)常用傳遞函數(shù)圖7.2 BP神經(jīng)網(wǎng)絡(luò)傳遞函數(shù)BP網(wǎng)絡(luò)的傳遞函數(shù)有多種。Log-sigmoid型函數(shù)的輸入值可取任意值,輸出值在0和1之間;tan-sigmod型傳遞函數(shù)tansig的輸入值可取任意值,輸出值在-1到+1之間;線性傳遞函數(shù)purelin的輸入與輸出值可取任意值。BP網(wǎng)絡(luò)通常有一個(gè)或多個(gè)隱層,該層中的神經(jīng)元均采用sigmoid型傳遞函數(shù),輸出層的神經(jīng)元?jiǎng)t采用線性傳遞函數(shù),整個(gè)網(wǎng)絡(luò)的輸出可以取任意值。

54、各種傳遞函數(shù)如圖5.6所示。只改變傳遞函數(shù)而其余參數(shù)均固定,用本章5.2節(jié)所述的樣本集訓(xùn)練BP網(wǎng)絡(luò)時(shí)發(fā)現(xiàn),傳遞函數(shù)使用tansig函數(shù)時(shí)要比logsig函數(shù)的誤差小。于是在以后的訓(xùn)練中隱層傳遞函數(shù)改用tansig函數(shù),輸出層傳遞函數(shù)仍選用purelin函數(shù)。7.2.4 每層節(jié)點(diǎn)數(shù)的確定使用神經(jīng)網(wǎng)絡(luò)的目的是實(shí)現(xiàn)攝像機(jī)輸出RGB顏色空間與CIE-XYZ色空間轉(zhuǎn)換,因此BP網(wǎng)絡(luò)的輸入層和輸出層的節(jié)點(diǎn)個(gè)數(shù)分別為3。下面主要介紹隱層節(jié)點(diǎn)數(shù)量的確定。對(duì)于多層前饋網(wǎng)絡(luò)來(lái)說(shuō),隱層節(jié)點(diǎn)數(shù)的確定是成敗的關(guān)鍵。若數(shù)量太少,則網(wǎng)絡(luò)所能獲取的用以解決問(wèn)題的信息太少;若數(shù)量太多,不僅增加訓(xùn)練時(shí)間,更重要的是隱層節(jié)點(diǎn)過(guò)多還

55、可能出現(xiàn)所謂“過(guò)渡吻合”(Overfitting)問(wèn)題,即測(cè)試誤差增大導(dǎo)致泛化能力下降,因此合理選擇隱層節(jié)點(diǎn)數(shù)非常重要。關(guān)于隱層數(shù)及其節(jié)點(diǎn)數(shù)的選擇比較復(fù)雜,一般原則是:在能正確反映輸入輸出關(guān)系的基礎(chǔ)上,應(yīng)選用較少的隱層節(jié)點(diǎn)數(shù),以使網(wǎng)絡(luò)結(jié)構(gòu)盡量簡(jiǎn)單。本論文中采用網(wǎng)絡(luò)結(jié)構(gòu)增長(zhǎng)型方法,即先設(shè)置較少的節(jié)點(diǎn)數(shù),對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,并測(cè)試學(xué)習(xí)誤差,然后逐漸增加節(jié)點(diǎn)數(shù),直到學(xué)習(xí)誤差不再有明顯減少為止。7.3 選取預(yù)測(cè)模型的學(xué)習(xí)參數(shù)7.3.1 初始權(quán)值的選取由于系統(tǒng)是非線性的,初始值對(duì)于學(xué)習(xí)是否達(dá)到局部最小、是否能夠收斂以及訓(xùn)練時(shí)間的長(zhǎng)短關(guān)系很大。如果初始值太大,使得加權(quán)后的輸入落在激活函數(shù)的飽和區(qū),從而導(dǎo)致其導(dǎo)

56、數(shù)非常小,而在計(jì)算權(quán)值修正公式中,因?yàn)檎扔冢?dāng)0時(shí),則有占0,使得,從而使得調(diào)節(jié)過(guò)程幾乎停頓下來(lái)。所以,一般總是希望初始加權(quán)后的每個(gè)神經(jīng)元的輸出值都接近于零,這樣可以保證每個(gè)神經(jīng)元的權(quán)值都能夠在他們的S型激活函數(shù)變化最大之處進(jìn)行調(diào)節(jié)。所以,一般取初始權(quán)值在(-1,1)之間的隨機(jī)數(shù)。另外,為了防止上述現(xiàn)象的發(fā)生,已有學(xué)者在分析了兩層網(wǎng)絡(luò)是如何對(duì)一個(gè)函數(shù)進(jìn)行訓(xùn)練后,提出了一種選定初始權(quán)值的策略:選擇權(quán)值的量級(jí)為,其中s1為第一層神經(jīng)元數(shù)目。利用這種方法,可以在較少的訓(xùn)練次數(shù)下得到較滿意的結(jié)果。7.3.2 學(xué)習(xí)速率的選取學(xué)習(xí)速率決定每一次循環(huán)中所產(chǎn)生的權(quán)值變化量。大的學(xué)習(xí)速率可能導(dǎo)致系統(tǒng)的不穩(wěn)定,

57、但小的學(xué)習(xí)速率將會(huì)導(dǎo)致學(xué)習(xí)時(shí)間較長(zhǎng),可能收斂速度很慢,不過(guò)能保證網(wǎng)絡(luò)的誤差值不跳出誤差表面的低谷而最終趨于最小誤差值。所以在一般情況下,傾向于選取較小的學(xué)習(xí)速率以保證系統(tǒng)的穩(wěn)定性。學(xué)習(xí)速率的范圍一般選取在00107之間。和初始權(quán)值的選取過(guò)程一樣,在一個(gè)神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)中,網(wǎng)絡(luò)要經(jīng)過(guò)幾個(gè)不同的學(xué)習(xí)速率的訓(xùn)練,通過(guò)觀察每一次訓(xùn)練后的誤差平方和的下降速率來(lái)判斷所選定的學(xué)習(xí)速率是否合適。如果下降很快,則說(shuō)明學(xué)習(xí)速率合適,若出現(xiàn)震蕩現(xiàn)象,則說(shuō)明學(xué)習(xí)速率過(guò)大。對(duì)于每一個(gè)具體的網(wǎng)絡(luò)都存在一個(gè)合適的學(xué)習(xí)速率。但對(duì)于較復(fù)雜的網(wǎng)絡(luò),在誤差曲面的不同部位可能需要不同的學(xué)習(xí)速率。為了減少尋找學(xué)習(xí)速率的訓(xùn)練次數(shù)以及訓(xùn)練時(shí)間

58、,本文采用變化的自適應(yīng)學(xué)習(xí)速率,使網(wǎng)絡(luò)的訓(xùn)練在不同的階段自動(dòng)設(shè)置不同學(xué)習(xí)速率的大小。7.3.3 誤差的選取在神經(jīng)網(wǎng)絡(luò)訓(xùn)練過(guò)程中選擇均方誤差MSE較為合理,原因如下:(1)標(biāo)準(zhǔn)BP算法中,誤差定義為:(7.4)每個(gè)樣本作用時(shí),都對(duì)權(quán)矩陣進(jìn)行了一次修改。由于每次權(quán)矩陣的修改都沒(méi)有考慮權(quán)值修改后其它樣本作用的輸出誤差是否也減小,因此將導(dǎo)致迭代次數(shù)增加。(2)累計(jì)誤差BP算法的全局誤差定義為: (7.5)這種算法是為了減小整個(gè)訓(xùn)練集的全局誤差,而不針對(duì)某一特定樣本,因此如果作某種修改能使全局誤差減小,并不等于說(shuō)每一個(gè)特定樣本的誤差也都能同時(shí)減小。它不能用來(lái)比較P和m不同的網(wǎng)絡(luò)性能。因?yàn)閷?duì)于同一網(wǎng)絡(luò)來(lái)說(shuō)

59、,P越大,E也越大; P值相同,m越大E也越大。(3)均方誤差MSE: (7.6)其中:輸出節(jié)點(diǎn)的個(gè)數(shù),訓(xùn)練樣本數(shù)目,網(wǎng)絡(luò)期望輸出值,網(wǎng)絡(luò)實(shí)際輸出值。均方誤差克服了上述兩種算法的缺點(diǎn),所以選用均方誤差算法較合理。7.4 處理樣本數(shù)據(jù)因?yàn)樗惺占臄?shù)據(jù)往往不是在同一個(gè)數(shù)量級(jí),我們將所收集的數(shù)據(jù)映射到-1,l之間,進(jìn)行歸一化處理,這樣有利于提高神經(jīng)網(wǎng)絡(luò)的訓(xùn)練速度。具體算法是:(7.7)式中,P是所收集的一組數(shù)據(jù),分別是這組數(shù)據(jù)的最小值和最大值,是映射后的數(shù)據(jù)。MATLAB中提供了對(duì)數(shù)據(jù)進(jìn)行歸一化處理的函數(shù):pn,minp,maxp=premnmx(p) (7.8)訓(xùn)練后相應(yīng)的處理函數(shù)為:p=pos

60、tmnmx(p,min p,max p) (7.9)執(zhí)行的算法是:p=0.5(pn+1)*(maxmin p)+minp (7.10)本文所使用的數(shù)據(jù)是羅馬什金油田19521979年產(chǎn)量的比較表,取1952年一1979年的數(shù)據(jù)作為神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)訓(xùn)練樣本,2000年的數(shù)據(jù)作為預(yù)測(cè)樣本。表7.1列出了19521979的數(shù)據(jù)。年份/年實(shí)際年產(chǎn)量年份/年實(shí)際年產(chǎn)量1952200196668001953300196770001954500196876001955100019697900195614001970815019571900197180001958240019728000195930501973

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論