• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于遺傳BP神經(jīng)網(wǎng)絡(luò)組合模型的中藥銷售預(yù)測(cè)研究

      2013-11-28 11:45:40健,盛
      關(guān)鍵詞:誤差率權(quán)值適應(yīng)度

      馬 健,盛 魁

      (亳州職業(yè)技術(shù)學(xué)院信息工程系,安徽 亳州236800)

      中藥是中國(guó)的國(guó)粹之一,數(shù)千年來用于預(yù)防保健、治病救人,為人類做出了巨大的貢獻(xiàn)。隨著國(guó)家對(duì)中醫(yī)藥產(chǎn)業(yè)重視程度的不斷提高,人們對(duì)傳統(tǒng)中醫(yī)有了新的認(rèn)識(shí),到醫(yī)院治療服用中藥的人數(shù)增多。這就要求醫(yī)院保證庫(kù)存中藥能夠?yàn)榕R床使用提供合理的供應(yīng)量,同時(shí)要保證藥品的質(zhì)量。本文采用遺傳算法對(duì)BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)方法進(jìn)行改進(jìn),從而有效解決基于BP學(xué)習(xí)方法的學(xué)習(xí)過程較長(zhǎng)、收斂速度緩慢等問題。將改進(jìn)后的BP神經(jīng)網(wǎng)絡(luò)組合模型應(yīng)用于中藥銷售預(yù)測(cè)研究,并結(jié)合某醫(yī)院的中藥實(shí)際銷售數(shù)據(jù),進(jìn)行實(shí)證研究。準(zhǔn)確的中藥銷售預(yù)測(cè)對(duì)于醫(yī)院減少庫(kù)存、科學(xué)管理中藥及提供科學(xué)決策等具有重要意義。

      1 BP神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)的構(gòu)建

      1.1 BP神經(jīng)網(wǎng)絡(luò)定義

      BP結(jié)構(gòu)神經(jīng)網(wǎng)絡(luò)是目前在數(shù)值預(yù)測(cè)中應(yīng)用較為廣泛的算法之一,Rumelhart帶領(lǐng)的研究小組在1985年最先給出了BP算法的準(zhǔn)確定義,目前有多種變化形式。非線性映射能力是其突出特點(diǎn),通過有導(dǎo)師的訓(xùn)練模式來學(xué)習(xí)樣本中包含的特有規(guī)律,然后將規(guī)律映射到神經(jīng)網(wǎng)絡(luò)各層的連接權(quán)值和閾值,經(jīng)過信息正向傳播和誤差反向傳播不斷調(diào)整,從而使網(wǎng)絡(luò)預(yù)測(cè)輸出同期望輸出逐步接近,最終使誤差趨向于最小。

      作為一種前饋型神經(jīng)網(wǎng)絡(luò),其網(wǎng)絡(luò)結(jié)構(gòu)包括3部分:輸入層、隱藏層和輸出層,隱藏層的數(shù)量取決于問題的復(fù)雜程度,一般只有在當(dāng)前的隱藏層神經(jīng)元數(shù)量較多而不能進(jìn)一步改善網(wǎng)絡(luò)性能時(shí)考慮增加隱藏層。[1]本文主要通過長(zhǎng)期大量樣本的訓(xùn)練來預(yù)測(cè)中藥應(yīng)用的變化,為中藥應(yīng)用走勢(shì)提供輔助參考,因此單隱藏層可以滿足預(yù)測(cè)的精度需要。網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)如圖1所示。

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

      在圖1中,a1,a2…,an為BP神經(jīng)網(wǎng)絡(luò)的輸入樣本,b1,b2,…bm為BP神經(jīng)網(wǎng)絡(luò)的輸出結(jié)果,輸入層與隱藏層之間的權(quán)值為εij,隱藏層與輸出層的權(quán)值為εik,作為典型的非線性函數(shù),BP神經(jīng)網(wǎng)絡(luò)反映的是一種函數(shù)映射關(guān)系。[2]

      1.2 BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練步驟

      BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練一般包括以下步驟:

      (1)網(wǎng)絡(luò)初始值的設(shè)定。網(wǎng)絡(luò)初始值包括學(xué)習(xí)速率、網(wǎng)絡(luò)訓(xùn)練次數(shù)、誤差精度的設(shè)定、各層之間的連接權(quán)值和閾值的初始化。

      (2)隱藏層輸出設(shè)定。根據(jù)輸入樣本,結(jié)合輸入層和隱藏層間連接權(quán)值以及隱藏層閾值,得到隱藏層輸出公式:

      (3)輸出層輸出設(shè)定。由上一步隱藏層輸出結(jié)果,結(jié)合本層的連接權(quán)值和閾值,計(jì)算輸出層的輸出結(jié)果公式為:

      (4)預(yù)測(cè)誤差計(jì)算。根據(jù)網(wǎng)絡(luò)模型的輸出結(jié)果來對(duì)比期望輸出值之間的誤差:

      (5)根據(jù)網(wǎng)絡(luò)預(yù)測(cè)誤差進(jìn)一步調(diào)節(jié)閾值和網(wǎng)絡(luò)連接權(quán)值。

      (6)判斷算法迭代是否結(jié)束,若沒有結(jié)束,返回步驟。

      1.3 BP神經(jīng)網(wǎng)絡(luò)存在不足

      BP神經(jīng)網(wǎng)絡(luò)作為一種演算過程清晰、具有復(fù)雜非線性映射功能的成熟算法,目前在人工神經(jīng)網(wǎng)絡(luò)中應(yīng)用廣泛。理論上,在擁有足夠隱藏層和隱藏節(jié)點(diǎn)前提下可以逼近任意的非線性映射關(guān)系,同時(shí)具備良好的泛化能力和容錯(cuò)性。但BP神經(jīng)網(wǎng)絡(luò)作為典型的前饋型神經(jīng)網(wǎng)絡(luò),缺點(diǎn)也同樣明顯:其梯度下降法的本質(zhì)確定了學(xué)習(xí)過程較長(zhǎng),收斂速度緩慢;在收斂的同時(shí)可能會(huì)產(chǎn)生局部極小值或部分靜態(tài)點(diǎn),從而導(dǎo)致系統(tǒng)存在較大誤差;初始權(quán)值和閾值設(shè)定隨意性較大;對(duì)隱藏層和隱藏層節(jié)點(diǎn)的設(shè)定無成熟理論指導(dǎo),需依靠經(jīng)驗(yàn)和實(shí)驗(yàn)。

      以上缺點(diǎn)的存在,加上病人人員變化情況,單純使用BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)中藥銷售的精度達(dá)不到預(yù)期,因此考慮加入遺傳算法來對(duì)BP神經(jīng)網(wǎng)絡(luò)進(jìn)行優(yōu)化,使其能夠更準(zhǔn)確得出初始權(quán)值及閾值。

      2 遺傳BP組合網(wǎng)絡(luò)模型構(gòu)建

      2.1 遺傳算法

      遺傳算法是根據(jù)生物演變的進(jìn)化規(guī)律得來的,美國(guó)的J.H.Holland教授通過實(shí)驗(yàn)發(fā)現(xiàn),學(xué)習(xí)通過一個(gè)種群的進(jìn)化適應(yīng)實(shí)現(xiàn)比單個(gè)生物體的適應(yīng)完成的要好,Holland在研究遺傳算法中發(fā)現(xiàn)自適應(yīng)是從所處的環(huán)境中得到反饋的函數(shù)關(guān)系,這種遺傳算法是在一個(gè)固定種群中,個(gè)體使用固定的基因鏈,用適應(yīng)度來隨即選擇雙親,并按交叉和變異算子來產(chǎn)生新的種群。該算法主要通過編碼、選擇、交叉和變異操作對(duì)群體中的對(duì)象一一篩選,保留適應(yīng)度高的個(gè)體,使群體繼承優(yōu)點(diǎn)的同時(shí)優(yōu)于前代,這樣通過一代又一代優(yōu)化使種群更適應(yīng)環(huán)境,末代種群中的最優(yōu)個(gè)體可以作為問題的近似最優(yōu)解。[3]

      遺傳算法的基本運(yùn)算流程如下:

      (1)確立編碼方式:遺傳算法的編碼機(jī)制仿照生物基因排序,需要將解空間映射到編碼空間,對(duì)象按照設(shè)定規(guī)則排列成串,數(shù)據(jù)處理后需要進(jìn)行種群的初始化。

      (2)初始化參數(shù):在遺傳算法的實(shí)際操作時(shí),需要在運(yùn)行初始化時(shí)確定一些參數(shù)的值。這些參數(shù)包括串長(zhǎng)、每一代群體的大小、交叉率、變異率、遺傳代數(shù)等。

      (3)設(shè)定適應(yīng)度函數(shù):該函數(shù)用于計(jì)算個(gè)體適應(yīng)度值,是進(jìn)行優(yōu)勝劣汰的遺傳操作的主要衡量指標(biāo)。

      (4)遺傳操作:遵循自然界遺傳規(guī)律,由選擇、交叉和變異3種操作構(gòu)成。選擇操作是根據(jù)個(gè)體適應(yīng)度的高低來篩選出符合條件的優(yōu)秀個(gè)體,淘汰適應(yīng)度值低的個(gè)體;交叉是將群體中的個(gè)體交換部分自帶基因,從而產(chǎn)生一定概率的優(yōu)秀基因組合;變異操作是模仿自然界生物體的基因突變,實(shí)現(xiàn)對(duì)算法搜索范圍的擴(kuò)展。3種操作共同作用于群體,從而產(chǎn)生出新一代的種群。

      (5)結(jié)束條件:算法的結(jié)束取決于算法是否執(zhí)行完規(guī)定的迭代次數(shù)或者經(jīng)過多代進(jìn)化的種群是否在性能上滿足要求。

      2.2 遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)

      基于遺傳算法來優(yōu)化BP神經(jīng)網(wǎng)絡(luò)主要有3種方式:一種對(duì)BP網(wǎng)絡(luò)結(jié)構(gòu)的優(yōu)化來消除多余節(jié)點(diǎn)和網(wǎng)絡(luò)連接權(quán);一種是利用遺傳算法遺傳操作優(yōu)化出適應(yīng)度最高的權(quán)值,來提高BP網(wǎng)絡(luò)的學(xué)習(xí)效率,從而最大限度降低初始權(quán)值對(duì)網(wǎng)絡(luò)結(jié)構(gòu)的不利影響;還有一種是將上述兩種方式結(jié)合。本例中主要利用遺傳算法來優(yōu)化BP網(wǎng)絡(luò)的初始權(quán)值及閾值。設(shè)計(jì)步驟主要包括以下部分:

      (1)建立3層BP網(wǎng)絡(luò)模型

      由于3層BP模型可以涵蓋映射大部分連續(xù)函數(shù),為避免網(wǎng)絡(luò)結(jié)構(gòu)過于復(fù)雜和減少權(quán)值訓(xùn)練時(shí)間,本實(shí)驗(yàn)采用的是單隱藏層的3層網(wǎng)絡(luò)結(jié)構(gòu)。

      (2)初始化種群

      在缺少經(jīng)驗(yàn)的前提下,以隨機(jī)的方式在遺傳算法的解空間中產(chǎn)生初始種群,雖然該方法會(huì)導(dǎo)致初始群體在解空間分散不均,但該方法適應(yīng)面廣。個(gè)體編碼采取實(shí)數(shù)編碼,由輸入層、隱藏層及輸出層的連接權(quán)值和閾值來組成每個(gè)個(gè)體的實(shí)數(shù)串。

      (3)進(jìn)行適應(yīng)度函數(shù)的計(jì)算

      遺傳算法依據(jù)種群中個(gè)體的適應(yīng)度,向種群中適應(yīng)度最高的方向搜索,選擇合適的適應(yīng)度函數(shù)將有利于尋求最優(yōu)解。一般適應(yīng)度函數(shù)通過對(duì)目標(biāo)函數(shù)進(jìn)行線性尺度映射變換而成。

      在上式中,n為初始種群的大小。為避免初始權(quán)值和閾值的隨機(jī)性對(duì)適應(yīng)度函數(shù)計(jì)算的影響,在對(duì)每一個(gè)個(gè)體計(jì)算適應(yīng)度函數(shù)值時(shí),均采用遺傳算法對(duì)BP神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值進(jìn)行優(yōu)化。

      (4)遺傳操作

      這一步需要將遺傳代數(shù)、交叉概率、變異概率根據(jù)多次實(shí)驗(yàn)測(cè)試結(jié)果設(shè)定,利用Matlab軟件中的GAOT工具箱完成遺傳操作。

      重復(fù)步驟(2)至步驟(4),直到優(yōu)化結(jié)果達(dá)到預(yù)測(cè)要求,結(jié)束循環(huán),將優(yōu)化后的參數(shù)值帶入BP神經(jīng)網(wǎng)絡(luò)繼續(xù)仿真。遺傳算法優(yōu)化BP網(wǎng)絡(luò)流程如圖2所示。

      圖2 遺傳算法優(yōu)化BP網(wǎng)絡(luò)流程示意圖

      3 中藥銷售的預(yù)測(cè)及分析

      某醫(yī)院在臨床治療過程中,患者對(duì)中醫(yī)診治和中藥使用備受親睞。由于使用中藥治療避免了西藥對(duì)人體的副作用,更有利于人們的身體健康,近幾年中藥的使用已經(jīng)達(dá)到藥品使用量的15%。為了更準(zhǔn)確地掌握醫(yī)院中藥的銷售情況,對(duì)2010-2012年醫(yī)院中藥的銷售數(shù)據(jù)進(jìn)行科學(xué)分析,能夠?yàn)榻窈筢t(yī)院中藥的銷售情況進(jìn)行預(yù)測(cè)。

      3.1 數(shù)據(jù)采集

      對(duì)某醫(yī)院數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行整理,收集了2010-2012年的中藥處方,并對(duì)處方中的中藥進(jìn)行分類和歸納,數(shù)據(jù)見表1和表2。

      表1 2010-2012各年中藥總體使用情況

      表2 2010-2012年銷售排前10位中藥銷售量

      3.2 數(shù)據(jù)分析

      依據(jù)表1和表2中的數(shù)據(jù),分別利用BP網(wǎng)絡(luò)和GMBP網(wǎng)絡(luò)2種算法進(jìn)行參數(shù)設(shè)定。主要涉及到兩個(gè)方面:一方面包括BP網(wǎng)絡(luò)中隱藏層節(jié)點(diǎn)數(shù)和初始化參數(shù)的設(shè)定;另一方面包括遺傳算法中遺傳代數(shù)等參數(shù)的設(shè)定。

      3.2.1 BP中隱藏層參數(shù)的確定

      對(duì)于BP網(wǎng)絡(luò)而言,由問題復(fù)雜程度來決定設(shè)定層數(shù),本文選用包含輸入層、隱藏層和輸出層3層基本結(jié)構(gòu),通過增減神經(jīng)元數(shù)量來實(shí)現(xiàn)改善網(wǎng)絡(luò)性能。隱藏層神經(jīng)元個(gè)數(shù)的設(shè)定對(duì)系統(tǒng)影響較大,如果節(jié)點(diǎn)數(shù)過少網(wǎng)絡(luò)將不能建立復(fù)雜的映射關(guān)系,網(wǎng)絡(luò)預(yù)測(cè)誤差較大,但是節(jié)點(diǎn)數(shù)過多又會(huì)出現(xiàn) “過擬合”現(xiàn)象。目前對(duì)于隱藏層節(jié)點(diǎn)數(shù)的設(shè)定沒有較為科學(xué)的方法,因此本文使用常見的經(jīng)驗(yàn)公式來給隱藏層神經(jīng)元個(gè)數(shù)劃定范圍,再通過對(duì)同一樣本的訓(xùn)練來比較評(píng)估,綜合訓(xùn)練精度和收斂速度兩個(gè)量化指標(biāo)來確立最優(yōu)隱藏節(jié)點(diǎn)個(gè)數(shù)。[4]在實(shí)驗(yàn)中,通過經(jīng)驗(yàn)公式的計(jì)算將隱藏層節(jié)點(diǎn)個(gè)數(shù)范圍作了適當(dāng)放大,在4~12之間逐一嘗試,通過結(jié)果對(duì)比,將參數(shù)設(shè)定在6或7時(shí)誤差最小,同時(shí)收斂速度也比較快。

      3.2.2 BP中初始參數(shù)設(shè)定

      本文使用Matlab工具箱中的newff來構(gòu)造BP神經(jīng)網(wǎng)絡(luò),程序如下:

      net=newff(minmax(p),[x,y],{'tansig','purelin'},'trainlm');x為網(wǎng)絡(luò)輸入節(jié)點(diǎn)數(shù),y為網(wǎng)絡(luò)輸出節(jié)點(diǎn)數(shù),tansig為網(wǎng)絡(luò)的訓(xùn)練函數(shù)另外根據(jù)對(duì)隱藏層節(jié)點(diǎn)數(shù)的測(cè)試結(jié)果分析,一般在2 000以內(nèi)無法收斂,超過2 000以后收斂概率較小,且預(yù)測(cè)精度不高,因此將學(xué)習(xí)次數(shù)設(shè)定為2 000。另外根據(jù)多次實(shí)驗(yàn)測(cè)試的結(jié)果,將目標(biāo)誤差設(shè)定在0.001,學(xué)習(xí)速率設(shè)定為0.4。

      主要程序如下:

      net.trainParam.show=100;

      net.trainParam.epochs=2000;

      net.trainParam.goal=1e-3;

      net.trainParam.lr=0.4

      [net,tr]=train(net,p,t);

      3.2.3 遺傳算法參數(shù)設(shè)定

      根據(jù)前面分析,對(duì)遺傳算法的參數(shù)設(shè)定主要包括對(duì)迭代次數(shù)、種群規(guī)模、交叉概率和變異概率4個(gè)方面。參數(shù)設(shè)定如下:迭代次數(shù)100次、種群規(guī)模為50、交叉概率為0.3、變異概率為0.2,得出對(duì)各中藥使用數(shù)量的BP預(yù)測(cè)值和GMBP預(yù)測(cè)值,如表3所示。

      表3 2010-2012各年中藥使用情況的兩種預(yù)測(cè)比較

      3.3 結(jié)果分析

      根據(jù)表3的數(shù)據(jù)計(jì)算出兩種預(yù)測(cè)的誤差率,例如,2010年白術(shù)的BP預(yù)測(cè)的誤差率是3.634%,而GMBP預(yù)測(cè)的誤差率是1.532%;棗仁的BP預(yù)測(cè)的誤差率是-6.100%,而GMBP預(yù)測(cè)的誤差率是-1.738%;2011年黨參的BP預(yù)測(cè)的誤差率是3.755%,而GMBP預(yù)測(cè)的誤差率是1.068%;防風(fēng)的BP預(yù)測(cè)的誤差率是-7.086%,而GMBP預(yù)測(cè)的誤差率是-1.459%;2012年茯苓的BP預(yù)測(cè)的誤差率是3.462%,而GMBP預(yù)測(cè)的誤差率是0.770%;砂仁的BP預(yù)測(cè)的誤差率是-5.495%,而GMBP預(yù)測(cè)的誤差率是-1.195%。從2010-2012年隨機(jī)取得預(yù)測(cè)的誤差率可知,GMBP的預(yù)測(cè)值要比BP預(yù)測(cè)的值精準(zhǔn)。

      4 小 結(jié)

      本文在傳統(tǒng)BP神經(jīng)網(wǎng)絡(luò)算法的基礎(chǔ)上,引入遺傳算法改進(jìn)BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型,解決了網(wǎng)絡(luò)收斂速度慢、易陷入局部極小的缺陷,能有效提高算法的精度,提高了網(wǎng)絡(luò)學(xué)習(xí)能力。分別采用傳統(tǒng)的BP神經(jīng)網(wǎng)絡(luò)和改進(jìn)BP神經(jīng)網(wǎng)絡(luò)對(duì)中藥銷售進(jìn)行仿真實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果表明,改進(jìn)的BP神經(jīng)網(wǎng)絡(luò)對(duì)中藥銷售的預(yù)測(cè)精度較高,為醫(yī)院今后的中藥管理提供了科學(xué)依據(jù)。

      [1]劉紅,任坤,陳文凱.神經(jīng)網(wǎng)絡(luò)的BP訓(xùn)練算法和遺傳優(yōu)化訓(xùn)練算法的對(duì)比研究[J].北京工業(yè)職業(yè)技術(shù)學(xué)院學(xué)報(bào),2008,7(02):31-34.

      [2]馬新強(qiáng).基于BP神經(jīng)網(wǎng)絡(luò)的用藥品銷售預(yù)測(cè)模型設(shè)計(jì)[J].重慶文理學(xué)院學(xué)報(bào),2008,27(02):64

      [3]段玉倩,賀家李.遺傳算法及其改進(jìn)[J].電力系統(tǒng)及其自動(dòng)化學(xué)報(bào),1998,10(01):39-52

      [4]王晨光.基于主成分分析的BP神經(jīng)網(wǎng)絡(luò)在藥品銷售預(yù)測(cè)中的應(yīng)用[J].藥物生物技術(shù),2009,16(04):385-387

      猜你喜歡
      誤差率權(quán)值適應(yīng)度
      改進(jìn)的自適應(yīng)復(fù)制、交叉和突變遺傳算法
      一種融合時(shí)間權(quán)值和用戶行為序列的電影推薦模型
      CONTENTS
      CONTENTS
      生化檢驗(yàn)全程中質(zhì)量控制管理方式及應(yīng)用意義
      健康大視野(2020年1期)2020-03-02 11:33:53
      降低評(píng)吸人員單料煙感官評(píng)分誤差率探討
      無線傳感器網(wǎng)絡(luò)定位算法在環(huán)境監(jiān)測(cè)中的應(yīng)用研究
      基于權(quán)值動(dòng)量的RBM加速學(xué)習(xí)算法研究
      電工儀表測(cè)量中容易忽略的幾個(gè)問題
      基于空調(diào)導(dǎo)風(fēng)板成型工藝的Kriging模型適應(yīng)度研究
      昌都县| 肥西县| 黑山县| 霍山县| 敦煌市| 巴彦淖尔市| 忻城县| 古田县| 江孜县| 佛学| 凤山县| 贵溪市| 云林县| 长垣县| 体育| 宜川县| 遂昌县| 佛冈县| 阿荣旗| 丰顺县| 呼伦贝尔市| 巴塘县| 仪征市| 千阳县| 辽宁省| 安宁市| 天津市| 华安县| 新乡县| 吉林市| 宜良县| 嘉义市| 万荣县| 许昌市| 西吉县| 乡宁县| 滦平县| 新乡县| 平乐县| 云阳县| 京山县|