国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

BP神經(jīng)網(wǎng)絡(luò)在糧倉平均溫度預測中的應用

2015-09-18 12:43:06師瑞華
軟件導刊 2015年8期
關(guān)鍵詞:神經(jīng)網(wǎng)絡(luò)

師瑞華

摘要:糧倉平均溫度決定糧食變質(zhì)的快慢。經(jīng)研究發(fā)現(xiàn),糧倉平均溫度表現(xiàn)為非線性變化,而BP神經(jīng)網(wǎng)絡(luò)能夠無限逼近任意非線性函數(shù),故可利用BP神經(jīng)網(wǎng)絡(luò)對糧倉平均溫度進行預測。介紹了糧倉平均溫度預測的重要性,闡述了BP神經(jīng)網(wǎng)絡(luò)的預測原理,介紹了BP神經(jīng)網(wǎng)絡(luò)設(shè)計及MATLAB實現(xiàn)。據(jù)此編寫程序進行平均溫度預測,為糧食保質(zhì)工作提供依據(jù)。

關(guān)鍵詞:神經(jīng)網(wǎng)絡(luò);平均溫度預測;BP算法;MATLAB

DOIDOI:10.11907/rjdk.151565

中圖分類號:TP301

文獻標識碼:A 文章編號文章編號:16727800(2015)008004203

0 引言

糧倉平均溫度預測主要是通過系統(tǒng)中前幾日倉庫的平均溫度來預測之后該倉庫的平均溫度。近年來,隨著BP算法在故障預測、臺風暴雨預測、市場股票以及房地產(chǎn)價格指數(shù)預測等領(lǐng)域逐步成熟,其已運用到更多的非線性預測中,可以建立相應的預測模型并在MATLAB中對其進行仿真實驗。

1 糧倉平均溫度預測問題分析

糧食作為農(nóng)作物,其保質(zhì)至關(guān)重要。糧食的平均溫度決定著糧食變質(zhì)速度,關(guān)系著人們采取何種措施進行處理。因此,正確預測平均溫度特別重要。之前,糧倉平均溫度主要是通過直覺和平均溫度曲線的趨勢進行預測,可靠性較低。

糧食的平均溫度受室內(nèi)溫度、濕度、所在倉庫地點等多種因素影響,若要精確地估計未來糧食的溫度,就要綜合考慮不同因素。BP神經(jīng)網(wǎng)絡(luò)算法提供了堅實的理論基礎(chǔ)和可信度。本文利用BP算法對平均溫度進行預測,并在MATLAB中仿真驗證,證明其有效性。

2 神經(jīng)網(wǎng)絡(luò)

人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural NetworkANN),簡稱神經(jīng)網(wǎng)絡(luò)(NN),是對人腦的模擬、簡化與抽象[1]。它是根據(jù)神經(jīng)學、計算機科學、物理學和數(shù)學統(tǒng)計等多種學科發(fā)展起來的一門新技術(shù)[2]。

2.1 人工神經(jīng)網(wǎng)絡(luò)模型

神經(jīng)元模型的3個要素:①有一組類似于生物神經(jīng)元突觸的連接,神經(jīng)元之間的密切度用權(quán)值Wxy表示,Wxy可正可負,正值表示激活,負值則表示抑制;②有一個輸入信號累加器,反映了生物神經(jīng)元空間、時間的整合特性[3];③有一個非線性的激活函數(shù),控制著神經(jīng)元的輸出,且輸出值被限定在允許范圍內(nèi)[3]。

經(jīng)典神經(jīng)元模型見圖1。

圖1 人工神經(jīng)元模型

對于每個輸入量(Xy),均有一個相關(guān)聯(lián)的權(quán)重(Wxy),需要進行處理的單元首先經(jīng)過權(quán)重的輸入量化,然后得到加權(quán)值總和,計算出唯一的輸出量(yx),它就是傳遞函數(shù)的一個權(quán)重和[59],計算公式如下:

Ux=∑yWxyXy(1)

Vx=Ux+θx(2)

F(.)表示激勵函數(shù),yx表示神經(jīng)元x的輸出,則有:

yx=f(∑yWxyXy+θx)(3)

激勵函數(shù)的形式多樣,使用比較多的是Sigmoid函數(shù)。Sigmoid為可微的S型函數(shù),公式定義為:

f(v)=11+exp(-αv)(4)

通過調(diào)節(jié)斜率參數(shù)α的大小,可以得到不同斜率的Sigmoid函數(shù)[4]。

2.2 BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)

BP神經(jīng)網(wǎng)絡(luò)又稱為反向傳播網(wǎng)絡(luò),包括輸入層、隱含層和輸出層。同層節(jié)點間互不相連,而層與層之間全部互聯(lián),輸入層、輸出層的節(jié)點數(shù)通常選取輸入及輸出向量的維數(shù),隱含層沒有明確的規(guī)定,需要根據(jù)實際情況確定[10]。經(jīng)驗證,三層BP神經(jīng)網(wǎng)絡(luò)能夠任意逼近任何一個非線性映射函數(shù),不需要建立數(shù)學解析式模型,因此在預測方面應用最為廣泛。

BP網(wǎng)絡(luò)結(jié)構(gòu)見圖2。

圖2 BP網(wǎng)絡(luò)結(jié)構(gòu)

2.3 BP神經(jīng)網(wǎng)絡(luò)算法

BP神經(jīng)網(wǎng)絡(luò)算法是一種有導師的學習方法,學習過程由信號正向傳播過程與誤差反向傳播過程組成。正向傳播時,從輸入層傳入輸入樣本,經(jīng)各隱含層處理,最后傳向輸出層, 每層神經(jīng)元(節(jié)點)的狀態(tài)只影響下一層神經(jīng)元狀態(tài),若輸出層的實際輸出與期望的輸出不符合要求,則轉(zhuǎn)入誤差的反向傳播階段;誤差反向傳播是將輸出誤差以某一形式通過隱含層向輸入層逐層反向傳播, 將誤差信號按連接通路反向計算,從而獲得各層單元的誤差信號,此誤差信號即為修正各單元的依據(jù)[4] 。由梯度下降法調(diào)整各層神經(jīng)元權(quán)值,使誤差信號減小。這種信號正向傳播過程與誤差反向傳播過程中的各層權(quán)值調(diào)整,周而復始地進行著,網(wǎng)絡(luò)一直學習與訓練,直到網(wǎng)絡(luò)輸出的誤差小到能夠接受的程度或者是學習次數(shù)達到預先設(shè)定的目標為止。

2.4 神經(jīng)網(wǎng)絡(luò)訓練

神經(jīng)網(wǎng)絡(luò)訓練主要分為有導師算法、無導師算法。

(1)有導師學習算法。神經(jīng)網(wǎng)絡(luò)對外界環(huán)境的未知性特點,使得在訓練時既要給出輸入信號,又要給出響應信號。最后根據(jù)實際輸出與要求目標之間的差值來調(diào)整權(quán)值,使系統(tǒng)做出正確有效的回復[7]。

(2)無導師學習算法。學習過程沒有嚴格的外部監(jiān)督機制。訓練數(shù)據(jù)只包含輸入矢量。網(wǎng)絡(luò)根據(jù)自身的功能特性對輸入的模式作出特定的響應,自動適應連接元的權(quán)值并映射到網(wǎng)絡(luò)上,對網(wǎng)絡(luò)變化趨勢作出評價,以實現(xiàn)數(shù)據(jù)壓縮、聯(lián)想學習的功能[8]。

3 BP神經(jīng)網(wǎng)絡(luò)設(shè)計

BP網(wǎng)絡(luò)設(shè)計包括:網(wǎng)絡(luò)的層數(shù)、每層網(wǎng)絡(luò)的神經(jīng)元數(shù)量、輸入輸出節(jié)點個數(shù)和激活函數(shù)等參數(shù)的確定。

3.1 確定網(wǎng)絡(luò)層數(shù)

具有偏差和最少一個S型隱含層以及線性輸出,就可以逼近任意函數(shù),這是確定BP神經(jīng)網(wǎng)絡(luò)層數(shù)的規(guī)則。增加隱含層的神經(jīng)元個數(shù),其效果比增加層數(shù)更易觀察及調(diào)整[1]。本文預測只需要3層:輸入層、隱含層和輸出層。

3.2 確定隱含層神經(jīng)元數(shù)量

增加隱含層中的神經(jīng)元個數(shù)要比增加隱含層提高精度方便。然而,神經(jīng)元個數(shù)太少,獲取信息的能力就弱。神經(jīng)元個數(shù)太多,獲取信息能力太強,則會反映出非規(guī)律性的內(nèi)容。隱含層神經(jīng)元個數(shù)確定的原則是:以解決問題為前提,增加1~2個神經(jīng)元加快誤差的減小。在此預測中,采用試湊法,先采取較少的神經(jīng)元來訓練,然后逐次增加,最后選取誤差最小時對應的神經(jīng)元數(shù)。本文使用9個隱含層神經(jīng)元[1]。

3.3 輸入輸出節(jié)點數(shù)確定

輸入輸出節(jié)點數(shù)應該由實際情況決定。本文選擇輸入層的節(jié)點數(shù)為5,輸出層的節(jié)點數(shù)為1。

3.4 激勵函數(shù)及訓練函數(shù)確定

此預測中隱含層、輸出層所用到的激勵函數(shù)分別為:Tansig和Pureline,訓練函數(shù)為Traingdx。

4 平均溫度預測在MATLAB中的實現(xiàn)

4.1 BP算法具體流程

算法流程見圖3。

圖3 BP算法流程

4.2 樣本選取與預處理

以2014-3-16至2014-3-26日1號糧倉糧食的平均溫度為依據(jù),進行模型預測。樣本數(shù)據(jù)如表1所示。

利用歸一化方法對初始數(shù)據(jù)進行處理,公式為:

xi=2(xi-xmin)xmax-xmin-1(5)

經(jīng)過處理后的數(shù)據(jù)均分布在[-1,1]上,預測結(jié)束后再將數(shù)據(jù)反歸一化為實際數(shù)據(jù)。

4.3 構(gòu)建BP神經(jīng)網(wǎng)絡(luò)

從2014-03-16開始作為樣本的輸入點,每6日作為一組樣本,其中前5日的數(shù)據(jù)作為輸入,第6日的數(shù)據(jù)作為輸出。利用MATLAB軟件仿真平臺newff構(gòu)建BP神經(jīng)網(wǎng)絡(luò),該神經(jīng)網(wǎng)絡(luò)有5個輸入節(jié)點,9個隱含節(jié)點和1個輸出節(jié)點。分別用tansig、purelin作為隱含節(jié)點、輸出節(jié)點的激勵函數(shù),用traingdx作為訓練函數(shù)進行訓練。

4.4 結(jié)果展示

經(jīng)過訓練后,結(jié)果如圖4、圖5、圖6所示。

圖4 BP神經(jīng)網(wǎng)絡(luò)訓練過程 圖5 輸出值與實際值差異

圖6 BP神經(jīng)網(wǎng)絡(luò)預測誤差曲線

4.5 誤差檢驗

對于平均溫度數(shù)據(jù)構(gòu)建的BP神經(jīng)網(wǎng)絡(luò)進行訓練,得出實際值與輸出值對比表,見表2。

4.6 相關(guān)程序代碼

[pn,minp,maxp,tn,mint,maxt]=premnmx(p,t);

dx=[-1,1];

net=newff(dx,[5,1],{'tansig','purelin'},'traingdx');

net.trainParam.show=300;

net.trainParam.Lr=0.05;

net.trainParam.epochs=3000;

net.trainParam.goal=1e-6;

net=train(net,pn,tn);

an=sim(net,pn);

a=postmnmx(an,mint,maxt)

5 結(jié)語

本文利用訓練好的BP神經(jīng)網(wǎng)絡(luò),對倉庫未來的平均溫度進行了預測。BP神經(jīng)網(wǎng)絡(luò)算法理論堅實、推導過程嚴謹、通用性強,但是BP算法是基于梯度的下降方法,故不可避免地存在一些問題,比如訓練容易陷入局部最小值、學習過程收斂速度慢、網(wǎng)絡(luò)結(jié)構(gòu)不易確定等,這些因素都會使預測出現(xiàn)少許偏差,這也是今后需要研究的方向。

參考文獻:

[1] 戴丹.BP神經(jīng)網(wǎng)絡(luò)用于市場預測的研究[D].武漢:武漢理工大學,2006.

[2] 孟祥澤,劉新勇,車海平,等.基于遺傳算法的模糊神經(jīng)網(wǎng)絡(luò)股市建模與預測[J]. 信息與控制,1997(5):6973.

[3] 胡章明.基于神經(jīng)網(wǎng)絡(luò)房地產(chǎn)價格指數(shù)的預測研究[J]. 中山大學研究生學刊:社會科學版,2006(2):100115.

[4] 吳昌友. 神經(jīng)網(wǎng)絡(luò)的研究及應用[D].哈爾濱:東北農(nóng)業(yè)大學,2007.

[5] 朱凱,王正林.精通MATLAB神經(jīng)網(wǎng)絡(luò)[M].北京:電子工業(yè)出版社,2010:100110.

[6] 袁洪.基于神經(jīng)網(wǎng)絡(luò)的分銷競爭力評價方法與研究[D].廣州:華南理工大學,2007.

[7] 方江曉.短期風速和風電功率預測模型的研究[D].北京:北京交通大學,2011.

[8] 黃加亮.RBF神經(jīng)網(wǎng)絡(luò)在船用低速等故障診斷中的應用研究[D].大連:大連海事大學,2000.

[9] 高雅.短時交通預測模型及預測方法的研究[D].上海:華東師范大學,2011.

[10] 馬丹丹,于占龍,劉越.BP神經(jīng)網(wǎng)絡(luò)在大學畢業(yè)生就業(yè)率預測中的研究與應用[J]. 佳木斯大學學報:自然科學版,2014(5):751753.

(責任編輯:杜能鋼)

猜你喜歡
神經(jīng)網(wǎng)絡(luò)
BP神經(jīng)網(wǎng)絡(luò)在路標識別上的應用研究
基于HPSO-BP神經(jīng)網(wǎng)絡(luò)的個人信用評估
神經(jīng)網(wǎng)絡(luò)抑制無線通信干擾探究
電子制作(2019年19期)2019-11-23 08:42:00
基于神經(jīng)網(wǎng)絡(luò)的中小學生情感分析
電子制作(2019年24期)2019-02-23 13:22:36
基于Q-Learning算法和神經(jīng)網(wǎng)絡(luò)的飛艇控制
基于神經(jīng)網(wǎng)絡(luò)的拉矯機控制模型建立
重型機械(2016年1期)2016-03-01 03:42:04
復數(shù)神經(jīng)網(wǎng)絡(luò)在基于WiFi的室內(nèi)LBS應用
基于支持向量機回歸和RBF神經(jīng)網(wǎng)絡(luò)的PID整定
基于神經(jīng)網(wǎng)絡(luò)分數(shù)階控制的逆變電源
基于GA-BP神經(jīng)網(wǎng)絡(luò)的光伏陣列MPPT研究
電測與儀表(2014年2期)2014-04-04 09:04:04
蚌埠市| 富平县| 高青县| 綦江县| 武隆县| 大丰市| 西畴县| 北安市| 策勒县| 新余市| 兴文县| 阿克陶县| 东阳市| 福鼎市| 四会市| 湛江市| 龙口市| 文成县| 凌源市| 无极县| 马公市| 霸州市| 景谷| 三台县| 洪湖市| 宿迁市| 屏山县| 岳西县| 同德县| 建平县| 武陟县| 曲麻莱县| 阳谷县| 旺苍县| 两当县| 仙桃市| 合江县| 九龙县| 湄潭县| 罗定市| 凤台县|