曹文琪,張 聰
(武漢輕工大學(xué) 數(shù)學(xué)與計(jì)算機(jī)學(xué)院,湖北 武漢 430023)
我國(guó)目前的土壤重金屬污染情況十分嚴(yán)峻[1],對(duì)未知區(qū)域的土壤重金屬含量進(jìn)行預(yù)測(cè)是土壤重金屬污染治理過(guò)程中重要的一環(huán)。隨著人們對(duì)神經(jīng)網(wǎng)絡(luò)的研究逐漸深入,徑向基神經(jīng)網(wǎng)絡(luò)(RBFNN)在數(shù)據(jù)預(yù)測(cè)方面的應(yīng)用越來(lái)越多,它相較于常見(jiàn)的BP神經(jīng)網(wǎng)絡(luò)具有更好的泛化能力,同時(shí)其本身具有收斂速度較快、全局逼近能力強(qiáng)等特點(diǎn)[2]。但由于RBFNN隱含層基函數(shù)的中心與寬度向量難以確定,以及其輸出層參數(shù)的初始化方式通常為隨機(jī)生成且使用梯度下降法進(jìn)行訓(xùn)練,往往導(dǎo)致網(wǎng)絡(luò)的性能不穩(wěn)定,訓(xùn)練結(jié)果易陷入局部極小值[3,4]。將遺傳算法與RBFNN進(jìn)行結(jié)合后可以有效避免由變量的初始隨機(jī)化生成導(dǎo)致的性能不穩(wěn)定問(wèn)題,但易陷入局部極小值及遺傳算法本身存在的易過(guò)早收斂等問(wèn)題仍未得到較好的解決[5]。本文提出一種深度復(fù)合模型(DCM),該模型將加入了基于雙曲正切函數(shù)變換的概率調(diào)整和容忍準(zhǔn)則的遺傳算法與RBFNN結(jié)合以獲得更好的初始輸出層參數(shù),同時(shí)構(gòu)造隨梯度正負(fù)值變化的學(xué)習(xí)率調(diào)整公式并引入到均方根反向傳播算法(RMSProp)中,用于對(duì)RBFNN中的參數(shù)進(jìn)行訓(xùn)練,以此克服遺傳算法與RBFNN的傳統(tǒng)缺陷,使模型在進(jìn)行土壤重金屬含量預(yù)測(cè)時(shí)具有較高的穩(wěn)定性與準(zhǔn)確性。
GA-RBFNN是將遺傳算法與徑向基神經(jīng)網(wǎng)絡(luò)結(jié)合起來(lái)的一種網(wǎng)絡(luò)[6,7],該網(wǎng)絡(luò)首先以徑向基神經(jīng)網(wǎng)絡(luò)中的參數(shù)作為遺傳算法中種群的個(gè)體,然后使用遺傳算法對(duì)種群中個(gè)體進(jìn)行迭代尋優(yōu),尋優(yōu)過(guò)程結(jié)束后將種群中適應(yīng)度最好的個(gè)體賦值給RBFNN作為其參數(shù)的初始值然后進(jìn)行訓(xùn)練,通過(guò)此方式避免由傳統(tǒng)參數(shù)初始化的隨機(jī)性帶來(lái)的網(wǎng)絡(luò)性能不穩(wěn)定的問(wèn)題,使得參數(shù)初始值更符合網(wǎng)絡(luò)需求以達(dá)到較好的訓(xùn)練結(jié)果。
GA是一種借鑒生物進(jìn)化理論,仿照生物的多代遺傳過(guò)程的隨機(jī)搜索算法,它以目標(biāo)問(wèn)題的不同解作為不同的個(gè)體生成種群,然后對(duì)種群進(jìn)行選擇、交配、變異操作來(lái)尋求最優(yōu)個(gè)體以實(shí)現(xiàn)對(duì)目標(biāo)問(wèn)題的求解[8],其主要算法步驟如下:①編碼生成種群個(gè)體,編碼方式一般為實(shí)數(shù)編碼或二進(jìn)制編碼;②計(jì)算種群個(gè)體適應(yīng)度值;③選擇操作,選出種群中適應(yīng)度較高的個(gè)體,一般使用輪盤賭方法進(jìn)行選擇;④交叉操作,根據(jù)交叉概率對(duì)經(jīng)過(guò)選擇后的種群個(gè)體進(jìn)行個(gè)體間基因片段的交換,交叉概率一般為固定值;⑤變異操作,根據(jù)變異概率對(duì)經(jīng)過(guò)選擇后的種群個(gè)體進(jìn)行基因片段的改變,變異概率一般為固定值;⑥重復(fù)步驟③到步驟⑤,當(dāng)達(dá)到最大迭代次數(shù)或滿足停止條件后停止迭代,然后輸出種群中的最優(yōu)個(gè)體。
RBFNN是一種具有較強(qiáng)映射功能的三層前向網(wǎng)絡(luò)[9,10],其隱含層通過(guò)徑向基函數(shù)對(duì)輸入數(shù)據(jù)進(jìn)行非線性映射,然后將隱含層的輸出數(shù)據(jù)通過(guò)線性計(jì)算傳遞至輸出層進(jìn)行輸出,該網(wǎng)絡(luò)已被驗(yàn)證是具有最優(yōu)映射的前向網(wǎng)絡(luò)。徑向基神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)如圖1所示。
圖1 RBFNN結(jié)構(gòu)
RBFNN對(duì)數(shù)據(jù)的訓(xùn)練過(guò)程主要分為兩個(gè)部分,一個(gè)部分是無(wú)監(jiān)督學(xué)習(xí),即使用K-means算法對(duì)輸入網(wǎng)絡(luò)的數(shù)據(jù)進(jìn)行聚類,通過(guò)此方式生成隱含層徑向基函數(shù)的中心點(diǎn)與寬度向量,且徑向基函數(shù)一般選擇高斯函數(shù),寬度向量的計(jì)算公式如下
其中,cmax為中心點(diǎn)之間的最大距離,h為節(jié)點(diǎn)數(shù)。
之后輸入數(shù)據(jù)分別經(jīng)過(guò)隱含層、輸出層進(jìn)行相關(guān)計(jì)算,輸入樣本xi在隱含層的第j個(gè)節(jié)點(diǎn)的輸出由以下公式計(jì)算得出
其中,cj與σj分別為隱含層第j個(gè)節(jié)點(diǎn)的中心點(diǎn)與寬度向量。
輸入樣本xi在輸出層的第m個(gè)節(jié)點(diǎn)的輸出由以下公式計(jì)算得出
ym=φ(φ(xi,j)*ωm)
其中,ωm為該節(jié)點(diǎn)的權(quán)值,φ為激活函數(shù)。
另一個(gè)部分是監(jiān)督學(xué)習(xí),即通過(guò)誤差函數(shù)計(jì)算出每個(gè)參數(shù)的梯度值,然后使用傳統(tǒng)梯度下降法如隨即梯度下降法(SGD)對(duì)權(quán)值進(jìn)行不斷修正的過(guò)程,具體的更新公式如下
其中,E為誤差函數(shù),μ為學(xué)習(xí)率。
除上述方法外,還可直接隨機(jī)生成隱含層的中心點(diǎn)與寬度向量,之后按照監(jiān)督學(xué)習(xí)過(guò)程的梯度修正公式對(duì)其進(jìn)行更新。
2.1.1 種群個(gè)體生成
傳統(tǒng)GA中,種群個(gè)體由實(shí)數(shù)編碼生成之后,通常以一維向量形式對(duì)個(gè)體進(jìn)行保存并以此種方式進(jìn)行遺傳操作,由于一維向量形式的個(gè)體在操作過(guò)程中基因片段的被選擇性較高,因此容易導(dǎo)致進(jìn)化過(guò)程中重要基因片段的改變,另外由于數(shù)值的生成在一定范圍內(nèi),導(dǎo)致搜索范圍過(guò)小,也難以尋得全局最優(yōu)值[11]。
針對(duì)上述問(wèn)題,在進(jìn)行個(gè)體生成過(guò)程中進(jìn)行以下改進(jìn):
首先對(duì)個(gè)體的保存形式進(jìn)行改進(jìn),將個(gè)體的保存形式與所求目標(biāo)的形式相匹配,有效降低重要基因片段的被選擇性。例如將本算法用于生成RBFNN的權(quán)值、閾值時(shí),它們?cè)赗BFNN中的形式為實(shí)數(shù)數(shù)組,形狀分別為8*1與1*1,因此遺傳算法種群個(gè)體應(yīng)為實(shí)數(shù)數(shù)組形式,且是由形狀分別為8*1和1*1的兩個(gè)小數(shù)組并列組合的大數(shù)組,相關(guān)遺傳操作將以小數(shù)組為基本單位進(jìn)行。通過(guò)此方式以避免進(jìn)化過(guò)程中重要基因片段的丟失,同時(shí)簡(jiǎn)化計(jì)算過(guò)程。
另外初始化生成種群個(gè)體時(shí),在每個(gè)種群個(gè)體的周圍生成一定數(shù)量的小種群,然后計(jì)算出小種群中適應(yīng)度值最高的個(gè)體,并將此個(gè)體作為種群的新個(gè)體,所有小種群中適應(yīng)度值最高的個(gè)體組合而成的種群將替代初始化生成的種群并進(jìn)行之后的遺傳操作。上述操作可以避免種群個(gè)體之間的分布過(guò)于密集,同時(shí)盡可能多地在可行域內(nèi)進(jìn)行搜索,增加個(gè)體的多樣性。
2.1.2 自適應(yīng)概率調(diào)整
在種群的交叉與變異過(guò)程中,交叉概率與變異概率一般設(shè)為固定值,并由此固定值決定選擇的個(gè)體是否進(jìn)行交叉與變異操作,但此方式未對(duì)個(gè)體本身的適應(yīng)度值大小進(jìn)行充分考慮,若個(gè)體本身適應(yīng)度值較高而進(jìn)行了交叉與變異操作時(shí),容易導(dǎo)致操作后的個(gè)體適應(yīng)度值反而較操作前有所降低[12]。針對(duì)這一情況,本方法提出一種自適應(yīng)概率調(diào)整方式來(lái)決定交叉與變異概率的大小,具體點(diǎn)調(diào)整公式如下
其中,f為當(dāng)前個(gè)體的適應(yīng)度值,fmax與fmin分別為當(dāng)前種群個(gè)體中的最大適應(yīng)度值與最小適應(yīng)度值,pm為一固定值,范圍處在0.5到1之間。在上述公式中,φ(x)為雙曲正切(tanh)函數(shù),當(dāng)x取值在0到1之間時(shí),φ(x)為值域約在0到0.76之間的單調(diào)遞增函數(shù),能夠保持較好的平滑性。
由于此算法的目標(biāo)是搜索范圍內(nèi)適應(yīng)度值最高的個(gè)體,因此在對(duì)自適應(yīng)概率進(jìn)行確定時(shí),個(gè)體適應(yīng)度值的比較目標(biāo)為當(dāng)前種群個(gè)體中最大適應(yīng)度值的一半,在此稱其為一般適應(yīng)度值。當(dāng)個(gè)體適應(yīng)度值低于一般適應(yīng)度值時(shí),交叉與變異概率將取一個(gè)較大值,通過(guò)更多的交叉與變異機(jī)會(huì)來(lái)提高個(gè)體的適應(yīng)度值,而當(dāng)個(gè)體適應(yīng)度值高于一般適應(yīng)度值時(shí),交叉與變異概率隨著適應(yīng)度值的增大而不斷減小,當(dāng)個(gè)體適應(yīng)度為種群中最高適應(yīng)度值時(shí),個(gè)體不進(jìn)行交叉與變異操作,以此來(lái)避免進(jìn)化前后個(gè)體適應(yīng)度值有所降低的情況發(fā)生。
2.1.3 容忍準(zhǔn)則
由于遺傳算法在迭代過(guò)程中,目標(biāo)是保證適應(yīng)度較優(yōu)的個(gè)體基因被遺傳至下一代,因此容易朝著單一的極值點(diǎn)方向進(jìn)化,從而陷入局部最優(yōu)狀態(tài)。為避免陷入局部最優(yōu),本方法在種群個(gè)體進(jìn)化后增加新舊個(gè)體的適應(yīng)度比較環(huán)節(jié)中,提出容忍準(zhǔn)則來(lái)判定個(gè)體是否接受此次進(jìn)化過(guò)程,該準(zhǔn)則中以概率p作為是否接受進(jìn)化過(guò)程的標(biāo)準(zhǔn),具體的計(jì)算公式如下
其中,fnew為新個(gè)體適應(yīng)度,fold為舊個(gè)體適應(yīng)度,T為迭代后適應(yīng)度下降連續(xù)出現(xiàn)的次數(shù),T的初始值為0。當(dāng)出現(xiàn)迭代前后適應(yīng)度值連續(xù)降低的情況,則使用以下公式對(duì)T進(jìn)行更新
T=T+1
p隨T值變化的曲線如圖2所示。
圖2 概率p變化曲線
當(dāng)連續(xù)幾次迭代下適應(yīng)度值均出現(xiàn)降低或不變的情況時(shí),T值將不斷增加,在連續(xù)次數(shù)較少時(shí),并不能代表已經(jīng)陷入了局部最優(yōu),因此此時(shí)仍有較大概率接受進(jìn)化結(jié)果,而隨著連續(xù)次數(shù)的增多,陷入局部最優(yōu)的可能性也隨之增大,因此接受進(jìn)化的可能性也隨之降低直至為0。當(dāng)個(gè)體未接受進(jìn)化時(shí),個(gè)體將恢復(fù)到上一次的狀態(tài)重新進(jìn)行遺傳算法的相關(guān)操作,直至迭代前后適應(yīng)度值增加的情況出現(xiàn),此時(shí)個(gè)體將直接接受進(jìn)化之后的狀態(tài),T值也將再次初始化為0。
2.2.1 變量修正方式調(diào)整
在傳統(tǒng)RBFNN中,隱藏層的中心點(diǎn)與寬度向量由K-means聚類生成,通常生成后不再通過(guò)監(jiān)督學(xué)習(xí)進(jìn)行調(diào)整,但由于聚類的過(guò)程具有一定的隨機(jī)性,因此生成的中心點(diǎn)不一定為最優(yōu)值[13],考慮到這一情況,在RBFNN的監(jiān)督學(xué)習(xí)過(guò)程中加入對(duì)中心點(diǎn)與寬度向量的調(diào)整,調(diào)整方式與權(quán)值、閾值相同。
而在遺傳算法中,由于初始生成值具有一定的隨機(jī)性,若使用其對(duì)中心點(diǎn)與寬度向量進(jìn)行生成,則會(huì)增加算法的計(jì)算復(fù)雜度,容易導(dǎo)致訓(xùn)練結(jié)果的誤差增大。
因此將在本方法中對(duì)所有變量的修正方式調(diào)整如下:在RBFNN的無(wú)監(jiān)督學(xué)習(xí)過(guò)程中,使用K-means算法生成RBFNN隱含層的中心點(diǎn)與寬度向量,使用遺傳算法生成RBFNN輸出層的權(quán)值和閾值,而在之后的監(jiān)督學(xué)習(xí)過(guò)程中,對(duì)隱藏層的中心點(diǎn)、寬度向量、輸出層的權(quán)值、閾值4種變量同時(shí)進(jìn)行更新。
2.2.2 自適應(yīng)均方根反向傳播算法(SRMSProp)
在傳統(tǒng)RBFNN的監(jiān)督學(xué)習(xí)過(guò)程中,通常采用梯度下降中的隨機(jī)梯度下降法(SGD)來(lái)對(duì)變量進(jìn)行更新,即以學(xué)習(xí)率乘以梯度值作為更新值,這一方法容易導(dǎo)致梯度值陷入局部極小值,在目前的優(yōu)化算法中均方根反向傳播算法(RMSProp)可以有效加快算法收斂速度,避免陷入局部極值,但該算法并未考慮到迭代過(guò)程中梯度值發(fā)生正負(fù)變化這一情況,通常使用固定的學(xué)習(xí)率作為學(xué)習(xí)步長(zhǎng)[14],容易導(dǎo)致每次迭代優(yōu)化結(jié)果的波動(dòng)性較大,收斂速度較慢。
本文提出的自適應(yīng)均方根反向傳播算法(SRMSProp)考慮到迭代過(guò)程中梯度發(fā)生正負(fù)值變化時(shí),已經(jīng)跳過(guò)了梯度值為0的點(diǎn),因此在下一次調(diào)整過(guò)程中,不僅需要對(duì)學(xué)習(xí)方向進(jìn)行調(diào)整,同時(shí)學(xué)習(xí)步長(zhǎng)也應(yīng)有所降低,而當(dāng)前后兩次迭代梯度的正負(fù)值未發(fā)生變化時(shí),說(shuō)明距離極值點(diǎn)較遠(yuǎn),因此學(xué)習(xí)步長(zhǎng)需要有所增長(zhǎng)。
具體的算法步驟如下,以第t次迭代中權(quán)值w的更新為例:
(1)對(duì)w進(jìn)行臨時(shí)更新,并計(jì)算更新后的梯度gt,更新公式為
w′=wt+α*vt-1
其中,α為動(dòng)量系數(shù),vt-1為上一次迭代更新值,初始值為0。
(2)計(jì)算累計(jì)梯度平方r,計(jì)算公式如下
rt=ρ*rt-1+(1-ρ)*gt
(3)計(jì)算學(xué)習(xí)率,公式如下
其中,st為累積梯度值,初值為0,μ0為固定值,即若迭代前后梯度正負(fù)值發(fā)生變化,則學(xué)習(xí)率減小,反之則學(xué)習(xí)率增大,另外隨著迭代次數(shù)的增大,st不斷增大,則學(xué)習(xí)率的變化不斷減小。
(4)對(duì)w進(jìn)行更新,公式如下
wt+1=wt+vt
在上述方法的基礎(chǔ)上,建立深度復(fù)合模型,建模步驟如下:①初始化小種群,生成小種群最優(yōu);②小種群賦值大種群,計(jì)算適應(yīng)度;③選擇、交叉、變異操作;④使用容忍準(zhǔn)則判斷是否接受更新;⑤重復(fù)過(guò)程③和④,滿足停止迭代條件或達(dá)到最大迭代次數(shù)時(shí)輸出最優(yōu)個(gè)體;⑥最優(yōu)個(gè)體賦值RBFNN的權(quán)值、閾值;⑦K-means聚類生成RBFNN的中心點(diǎn)與寬度向量;⑧前向計(jì)算;⑨使用SRMSProp算法進(jìn)行監(jiān)督學(xué)習(xí);⑩重復(fù)過(guò)程⑨和⑩,滿足停止迭代條件或達(dá)到最大迭代次數(shù)時(shí)訓(xùn)練結(jié)束。
具體的流程如圖3所示。
圖3 DCM流程
實(shí)驗(yàn)數(shù)據(jù)選用武漢市6個(gè)新城區(qū)的農(nóng)田土壤重金屬含量數(shù)據(jù),該數(shù)據(jù)由武漢市農(nóng)業(yè)科學(xué)院嚴(yán)格依照《土壤環(huán)境監(jiān)測(cè)技術(shù)規(guī)范》,根據(jù)作物分布、土壤類型等信息定點(diǎn)采樣獲得。整理后選用500組數(shù)據(jù)作為訓(xùn)練數(shù)據(jù),20組數(shù)據(jù)作為測(cè)試數(shù)據(jù),其中經(jīng)度、緯度、海拔、作物類型4項(xiàng)指標(biāo)作為網(wǎng)絡(luò)的輸入值,重金屬As含量作為目標(biāo)值。
對(duì)數(shù)據(jù)進(jìn)行歸一化處理的公式如下
PN=(P-Pmin)/(Pmax-Pmin)
其中,P為原始數(shù)據(jù),Pmax與Pmin分別為原始數(shù)據(jù)中的最大值與最小值。
在傳統(tǒng)RBFNN中,除K-means生成中心點(diǎn)與寬度向量外,還可隨機(jī)生成中心點(diǎn)與寬度向量后再對(duì)其進(jìn)行調(diào)整,為了比較兩種方法的優(yōu)劣性并判斷變量修正方式中對(duì)隱含層與輸出層的全部變量進(jìn)行更新是否能取得更好的優(yōu)化效果,將隨機(jī)生成中心點(diǎn)與寬度向量并對(duì)全部變量進(jìn)行更新的RBFNN(簡(jiǎn)稱RBFNN1),由K-means生成中心點(diǎn)與寬度向量,但僅更新輸出層的權(quán)值、閾值的RBFNN(簡(jiǎn)稱RBFNN2)以及由K-means生成中心點(diǎn)與寬度向量并且對(duì)全部變量進(jìn)行更新的RBFNN(簡(jiǎn)稱RBFNN3)進(jìn)行對(duì)比實(shí)驗(yàn)。
實(shí)驗(yàn)中訓(xùn)練方法采用SGD方法,學(xué)習(xí)率設(shè)置為0.01,激活函數(shù)選用tanh函數(shù),隱含層節(jié)點(diǎn)數(shù)設(shè)置為8,迭代500次后,3種變量修正方式下的網(wǎng)絡(luò)損失值的變化情況如圖4所示。
圖4 損失值比較
如圖4所示,代表RBFNN1與RBFNN3的曲線在前期就快速降到一個(gè)較低水平,說(shuō)明它們的損失值在迭代次數(shù)少于50次時(shí)能夠快速收斂到一個(gè)較低值,而代表RBFNN2的線的前期變化較另外兩個(gè)更為平緩一些,但在迭代70次左右之后,損失值的大小基本不變,由此可見(jiàn)這3種方法的梯度值都能快速下降。將RBFNN1的損失值變化情況與RBFNN3相比,RBFNN1在最初幾次迭代時(shí)較RBFNN3表現(xiàn)更好,但此情況的發(fā)生可能是因?yàn)镽BFNN1中初始化的參數(shù)值較好,它的出現(xiàn)具有不穩(wěn)定性,而在迭代約10次之后,RBFNN3的收斂速度與收斂精度較RBFNN1表現(xiàn)更好,說(shuō)明RBFNN3的實(shí)際性能優(yōu)于RBFNN1。比較迭代后期3種不同的方法下?lián)p失值的變化情況可以發(fā)現(xiàn),代表RBFNN3的曲線最早到達(dá)較低點(diǎn),其位置明顯低于另外兩條曲線,直至迭代500次時(shí),RBFNN3的損失值依舊低于另外兩種方法。因此可以得出結(jié)論,采用由K-means生成中心點(diǎn)與寬度向量并且對(duì)全部變量進(jìn)行更新這一變量修正方式對(duì)RBFNN進(jìn)行訓(xùn)練,訓(xùn)練結(jié)果更優(yōu)。
為驗(yàn)證深度復(fù)合模型(DCM)的有效性,將其分別與遺傳徑向基神經(jīng)網(wǎng)絡(luò)(GA-RBFNN)、徑向基神經(jīng)網(wǎng)絡(luò)(RBFNN)、BP神經(jīng)網(wǎng)絡(luò)(BPNN)、多元線性回歸(MLR)4種方法建立的模型進(jìn)行土壤重金屬As含量的預(yù)測(cè)對(duì)比實(shí)驗(yàn)。
實(shí)驗(yàn)二的參數(shù)設(shè)置中,除實(shí)驗(yàn)一出現(xiàn)的參數(shù)外,將大種群數(shù)設(shè)為60,小種群數(shù)設(shè)為10,最大自適應(yīng)交叉概率設(shè)為0.7,最大自適應(yīng)變異概率設(shè)為0.07,衰減速率設(shè)為0.9,動(dòng)量系數(shù)設(shè)為0.1。不同模型的As含量預(yù)測(cè)值與真實(shí)值對(duì)比圖分別如下。
首先將圖5與圖6進(jìn)行對(duì)比觀察,可以看出圖6中實(shí)線代表的真實(shí)值與虛線代表的預(yù)測(cè)值的走勢(shì)較圖5更為接近,且圖6中實(shí)線的走勢(shì)與虛線基本一致,部分線出現(xiàn)了重合,說(shuō)明使用BPNN模型進(jìn)行預(yù)測(cè)的結(jié)果比MLR模型更好。然后對(duì)比圖7與圖6可以看出,圖7中實(shí)線與虛線重合的預(yù)測(cè)點(diǎn)較圖6有所增加,說(shuō)明RBFNN模型預(yù)測(cè)效果較BPNN模型有所提高,但部分預(yù)測(cè)值與真實(shí)值之間仍存在較大差距,預(yù)測(cè)效果依舊有待提高。
圖5 MLR模型As含量預(yù)測(cè)對(duì)比
圖6 BPNN模型As含量預(yù)測(cè)對(duì)比
圖7 RBFNN模型As含量預(yù)測(cè)對(duì)比
將圖8與圖7進(jìn)行對(duì)比觀察,整體上兩張圖中代表預(yù)測(cè)值的虛線與代表真實(shí)值的實(shí)線之間差距的區(qū)別不夠明顯,只有少數(shù)幾個(gè)點(diǎn)的差距更小,說(shuō)明在使用GA-RBFNN進(jìn)行預(yù)測(cè)時(shí),預(yù)測(cè)點(diǎn)的預(yù)測(cè)值與真實(shí)值之間的差值要略小于RBFNN,而將圖9與圖8、圖7相比時(shí),可以看到圖9中實(shí)線與虛線之間的重合度明顯提高,并且大部分預(yù)測(cè)點(diǎn)的預(yù)測(cè)值與真實(shí)值基本重合,說(shuō)明圖9代表的DCM預(yù)測(cè)模型較另外幾種對(duì)比實(shí)驗(yàn)?zāi)P偷念A(yù)測(cè)值更為接近真實(shí)值。
圖8 GA-RBFNN模型As含量預(yù)測(cè)對(duì)比
圖9 DCM模型As含量預(yù)測(cè)對(duì)比
為了更加清楚地了解5種模型的預(yù)測(cè)結(jié)果中預(yù)測(cè)值與真實(shí)值之間的差距,將分別計(jì)算出使用5種預(yù)測(cè)模型進(jìn)行預(yù)測(cè)時(shí),每個(gè)預(yù)測(cè)點(diǎn)的預(yù)測(cè)值與真實(shí)值之間的差值,然后求出該差值與對(duì)應(yīng)采樣點(diǎn)真實(shí)值的比值大小,最后統(tǒng)計(jì)在不同的比值區(qū)間內(nèi)5種預(yù)測(cè)模型的20組預(yù)測(cè)點(diǎn)分布的數(shù)量并繪制直方圖。繪制完成的直方圖如圖10所示。
圖10 不同模型中預(yù)測(cè)點(diǎn)的差值分布
如圖10所示,MLR、BPNN、RBFNN這3種模型中預(yù)測(cè)差值與真實(shí)值比值小于20%的點(diǎn)約占預(yù)測(cè)點(diǎn)總數(shù)量的一半,MLR與BPNN中預(yù)測(cè)差值與真實(shí)值比值小于20%的點(diǎn)的數(shù)量相同,RBFNN中該區(qū)間的點(diǎn)的數(shù)量與這兩種模型相比有所增加,但增加數(shù)量較少,結(jié)合圖5、圖6和圖7可以說(shuō)明,使用這3種預(yù)測(cè)模型進(jìn)行預(yù)測(cè)時(shí),它們預(yù)測(cè)值與真實(shí)值之間的差距較為接近,它們的預(yù)測(cè)效果為RBFNN優(yōu)于BPNN,BPNN優(yōu)于MLR。GA-RBFNN與DCM中預(yù)測(cè)差值與真實(shí)值比值小于20%的點(diǎn)較另外3個(gè)模型均有所增加,說(shuō)明這兩種模型的預(yù)測(cè)效果優(yōu)于前面3種模型,而觀察DCM的點(diǎn)的分布可以看出,該模型中預(yù)測(cè)差值與真實(shí)值比值小于10%的點(diǎn)占總數(shù)量的一半,小于20%的點(diǎn)的數(shù)量占總數(shù)量的75%,明顯高于其它幾組模型,結(jié)合前面的預(yù)測(cè)對(duì)比圖可以看出,DCM模型的預(yù)測(cè)值與真實(shí)值之間的差距較另外4種模型更低,預(yù)測(cè)效果更好。
除上述將預(yù)測(cè)值與真實(shí)值進(jìn)行對(duì)比以及統(tǒng)計(jì)樣本點(diǎn)的預(yù)測(cè)差值與真實(shí)值的比值的分布外,還使用平均絕對(duì)誤差(MAE)、均方誤差(MSE)、平均絕對(duì)百分比誤差(MAPE)3項(xiàng)指標(biāo)對(duì)5種模型的預(yù)測(cè)效果進(jìn)行評(píng)估,這3項(xiàng)誤差指標(biāo)的計(jì)算公式分別如下
如表1所示,5種模型的20組數(shù)據(jù)的預(yù)測(cè)結(jié)果誤差對(duì)比中,5種模型的3項(xiàng)誤差指標(biāo)值依次遞減,其中MLR、BPNN、RBFNN這3種模型的平均絕對(duì)誤差與均方誤差均在2與6以上,GA-RBFNN模型與DCM模型的平均絕對(duì)誤差與均方誤差均分別2與6以下,但GA-RBFNN的誤差指標(biāo)值與RBFNN較為接近,而DCM模型的3項(xiàng)誤差指標(biāo)與前4種模型的誤差指標(biāo)相比,下降幅度最為明顯,3項(xiàng)誤差指標(biāo)較MLR的降低值分別約為0.8、3.7、7%,表明5種預(yù)測(cè)模型中,DCM的預(yù)測(cè)結(jié)果誤差最低。
表1 預(yù)測(cè)結(jié)果誤差對(duì)比
綜合以上圖表分析可以得出結(jié)論,在MLR、BPNN、RBFNN這3種模型中,使用RBFNN模型進(jìn)行土壤重金屬含量預(yù)測(cè)時(shí),預(yù)測(cè)準(zhǔn)確性最高,在使用遺傳算法對(duì)RBFNN進(jìn)行優(yōu)化后,GA-RBFNN的預(yù)測(cè)效果較RBFNN有較小提升,而與其它4種預(yù)測(cè)模型相比,使用本文提出的DCM模型進(jìn)行土壤重金屬含量預(yù)測(cè)時(shí)預(yù)測(cè)效果最好。
本文提出一種深度復(fù)合模型(DCM)用于土壤重金屬含量預(yù)測(cè),該模型采用基于自我學(xué)習(xí)的遺傳算法(ALGA)來(lái)生成RBFNN輸出層的參數(shù),然后使用自適應(yīng)均方根反向傳播優(yōu)化算法(SRMSProp)對(duì)RBFNN的所有參數(shù)進(jìn)行優(yōu)化修正,通過(guò)這兩種算法來(lái)加快RBFNN的收斂速度,獲得更高的預(yù)測(cè)精度。將本模型與MLR、BPNN、RBFNN、GA-RBFNN模型進(jìn)行預(yù)測(cè)對(duì)比實(shí)驗(yàn),本模型的預(yù)測(cè)值與真實(shí)值更為接近,預(yù)測(cè)效果更好,可以為土壤重金屬含量預(yù)測(cè)提供一種新的方法。對(duì)本方法進(jìn)行更多理論學(xué)習(xí),將其應(yīng)用到更多實(shí)際問(wèn)題上,是接下來(lái)需要進(jìn)一步考慮的問(wèn)題。