呂鑫濤,張 聰,曹文琪
(武漢輕工大學數(shù)學與計算機學院,湖北武漢 430023)
土壤是人類生活、社會發(fā)展和自然進化的重要資源。要改善地球生態(tài)環(huán)境和人類生活環(huán)境,對土壤進行整治必不可少,但土壤中的重金屬是非常棘手的一種污染物,難以被微生物降解,影響農作物生長,導致農作物產量下降;通過人體接觸或食用最終進入人體,影響健康[1-5]。因此,對土壤重金屬進行研究成為環(huán)境污染研究的重要內容之一。
土壤重金屬含量預測研究提出了多種預測模型,對土壤屬性作了相關分析,如陳飛香等[6]以廣東增城市為例,采用隨機采樣方法對土壤中Cr 的含量進行分析,通過RBF 網(wǎng)絡對Cr 含量插值進行預測誤差分析,證實RBF 網(wǎng)絡插值方法克服了克里格插值的平滑效應,有更好的預測效果;Ser?geev 等[7]提出一種人工神經(jīng)網(wǎng)絡(ANN),模擬非線性大規(guī)模趨勢,用統(tǒng)計方法對殘差建模預測土壤重金屬,證實神經(jīng)網(wǎng)絡預測重金屬空間分布的可行性;張鈺等[8]將新疆克拉瑪依人工碳匯林作為采樣區(qū)域,通過BP 神經(jīng)網(wǎng)絡和GIS技術建模,對土壤中Cu、Zn、Fe 等5 種金屬含量的分布進行分析,證實雙隱層BP 神經(jīng)網(wǎng)絡能夠滿足預測精度并能分析土壤中重金屬含量的空間分布;楊勇等[9]用時空克里格模型對武漢市青山區(qū)土壤中重金屬含量在時間和空間進行了建模預測,在土壤污染防控治理問題上具有參考作用;呂杰等[10]以陜西金堆城礦區(qū)尾礦庫為例,通過實驗室化學分析和小波神經(jīng)網(wǎng)絡對土壤中Cu 的含量進行了分析,利用ASD 光譜儀的遙感數(shù)據(jù)對土壤重金屬做出評價,證實小波神經(jīng)網(wǎng)絡反演土壤Cu 元素含量的有效性;Cao 等[11-12]以小波神經(jīng)網(wǎng)絡和徑向基神經(jīng)網(wǎng)絡為主分別提出了協(xié)同復合神經(jīng)網(wǎng)絡模型和深度復合模型,通過對神經(jīng)網(wǎng)絡的初始權值與閾值進行優(yōu)化,并且對土壤重金屬含量進行預測分析,提升了模型的預測精度;Eid 等[13]運用污水污泥(sew?age sludge)改良過的土壤種植作物,可以提高模型預測的準確性。黃趙麟等[14]構建了源匯模型(BP-S)、空間分異模型(BP-K)和改進的多因素綜合模型(BP-SK)模擬預測了5 種重金屬Cd、Pb、Cr、Cu 和Zn 含量,證實了BP-SK 模型在人為干擾大的區(qū)域中重金屬空間分布預測比BP-K 模型更實用;Zahida 等[15]對卡拉奇城市土壤進行污染評價,利用累積頻率分布(CDF)曲線估算了重金屬地球化學基準濃度;Pandit 等[16]通過偏最小二乘法(PLSR)建立模型反映土壤重金屬含量與高光譜反射率之間的關系,證實光譜反射率在反演Pd 等重金屬濃度時有著較高的預測精度,也說明光譜反射技術能夠繪制重金屬的空間分布;Vinod 等[17]用了回歸建模,主成分分析(PCA)和積累營養(yǎng)成分(ANE)方法對綜合工業(yè)廢水灌溉土壤重金屬進行分析,提出了以土壤pH 值和重金屬含量作為自變量的模型。上述對土壤重金屬環(huán)境污染進行評估,以及對土壤時間和空間特征分布的研究都取得了不錯的預測效果。本文提出一種基于分組教學優(yōu)化算法[18](Group Teaching Optimization Algorithm,GTOA)和BP 神經(jīng)網(wǎng)絡預測模型,能夠有效避免BP 神經(jīng)網(wǎng)絡在訓練時收斂過慢問題,提升預測精度。
分組教學優(yōu)化算法相較于傳統(tǒng)的智能優(yōu)化算法,最顯著的特點是需要調整的參數(shù)很少,只有種群大小以及迭代次數(shù)兩個參數(shù),這種少量參數(shù)設置能極大發(fā)揮算法的優(yōu)化性能。算法流程主要分為能力分組階段、教師教學階段、學生學習階段、教師分配階段。
(1)能力分組階段。對于一個班級的知識分布,不失一般性可以假設其服從正態(tài)分布。教學不僅要提高班級的平均水平,還要考慮怎么減少標準差,使整個班級的知識分布更加合理且優(yōu)秀。要實現(xiàn)這一教學目標,教師就需要針對不同的學生制定相應的教學計劃。將學生分成兩個小組,接受知識能力強的稱為優(yōu)秀學生,接受知識能力弱的稱為一般學生。
(2)教師教學階段。對于出色學生組,通過下面方式獲取知識:
其中,t是當前的迭代次數(shù),是i學生在t時刻時的知識,Tt是時刻t時教師所擁有的知識,Mt是在t時刻小組的平均水平知識,F(xiàn)是決定教師教學成果的教學因素,F(xiàn)值可以是1 或2,a,b,c都是[0,1]之間的隨機數(shù)。
對于一般學生,獲取知識的方式如下:
其中,d是[0,1]之間的隨機數(shù)。
(3)學生學習階段。學生學習階段又可分成兩個階段,除開教師教學時間,學生可以在課余時間通過自學以及與其他優(yōu)秀同學交流來獲取知識,這一過程用下式來概括:
其中,e和g是[0,1]之間的隨機數(shù)表示在t時刻時學生j在學習階段學到的知識,學生j∈{1,2,…,i-1,i+1,…,N}是隨機的。向其他學生交流學習和自學階段學習分別是式(4)中的第2 項和第3 項。
(4)教師分配階段。為保證算法的收斂速度,優(yōu)秀學生組和一般學生組共用一位教師,而對教師的選擇則受到灰狼優(yōu)化算法(Grey Wolf Optimizer,GWO)中保留3 個最優(yōu)的思想影響。具體的教師分配可根據(jù)下式選擇:
GTOA 算法步驟如下:①初始化相關參數(shù),隨機產生含有N 個個體的學生種群;②計算個體的適應度值,選出最優(yōu)解,并且更新函數(shù)迭代次數(shù);③判斷是否達到最大迭代次數(shù),達到了即終止循環(huán)并輸出最優(yōu)解,否則跳轉至第④步;④拿到3 個最優(yōu)解,根據(jù)公式(5)選出教師;⑤基于個體的適應度值大小分組,將適應度值大的一半個體組成優(yōu)秀學生組,將適應度值小的另一半個體組成一般學生組,兩組學生共用一位教師;⑥對于優(yōu)秀學生組根據(jù)式(1)、式(2)和式(4)更新種群;對于一般學生組,根據(jù)式(3)和式(4)分別執(zhí)行教師教學階段和學生學習階段;⑦將兩個新的種群合并組成一個新的種群,計算種群的適應度值,選取最優(yōu)解,并且更新迭代次數(shù),然后返回到第③步。
BP 神經(jīng)網(wǎng)絡是在人工神經(jīng)網(wǎng)絡基礎上加入反向傳播算法的多層前饋神經(jīng)網(wǎng)絡。BP 神經(jīng)網(wǎng)絡特點是信號正向傳播,通過隱藏層和輸出層的計算得到誤差值,然后將誤差一層一層地反向傳播,更新網(wǎng)絡中的權值和閾值,達到最優(yōu)的期望值[19-20]。BP 神經(jīng)網(wǎng)絡(以一層隱含層為例)結構如圖1 所示。
Fig.1 Three layer BP neural network structure圖1 三層BP 神經(jīng)網(wǎng)絡結構
X1,…,Xn是網(wǎng)絡的輸入?yún)?shù),Y1,…,Yn是網(wǎng)絡的輸出參數(shù)。初始化輸入層個數(shù)n,隱藏層個數(shù)l,輸出層個數(shù)m,輸入?yún)?shù)經(jīng)過輸入層到達隱藏層公式如下:
其中,f是隱藏層激活函數(shù),可以使線性數(shù)據(jù)集變成非線性數(shù)據(jù)集。Wij和bj分別是輸入層到隱藏層之間的權值和閾值。由隱藏層到輸出層的計算公式如下:
其中,f是輸出層的激活函數(shù),與隱藏層是同一個函數(shù)。Wjk和bk分別是隱藏層到輸出層之間的權值和閾值。Yk是網(wǎng)絡的預測輸出值。得到輸出值后計算誤差,公式如下:
將誤差反向傳播到隱藏層,對隱藏層和輸出層之間的權值和閾值進行更新,公式如下:
為使誤差變小,再將誤差傳播至輸入層,如此反復迭代訓練,判斷網(wǎng)絡是否達到最大迭代次數(shù)或者達到最小誤差條件。若沒有結束,則繼續(xù)使用更新后的權值與閾值進入網(wǎng)絡循環(huán),直至滿足網(wǎng)絡結束條件。
文獻[18]提出的GTOA 算法在約束工程設計優(yōu)化問題的廣義求解方法中有著很好的結果,比如焊接梁設計問題、管柱設計問題、壓力容器設計問題以及減速機設計問題,GTOA 優(yōu)秀的全局搜索能力能使BP 神經(jīng)網(wǎng)絡中的性能函數(shù)實現(xiàn)快速收斂,得到GTOA-BP 中的最優(yōu)權值與閾值,從而減少神經(jīng)網(wǎng)絡訓練過程中產生的誤差,提高預測精度。GTOA 算法由學生個體組成的種群與網(wǎng)絡中的權值相對應,適應度函數(shù)是網(wǎng)絡訓練常用的性能函數(shù)均方誤差(MSE)。模型具體步驟如下:
(1)對數(shù)據(jù)中農作物按照類型進行編號,然后將數(shù)據(jù)中樣本的經(jīng)度、緯度、海拔以及農作物編號4 個特征值作為神經(jīng)網(wǎng)絡輸入?yún)?shù),以重金屬As(mg/kg)含量作為輸出參數(shù),對輸入?yún)?shù)和輸出參數(shù)最大、最小作歸一化處理。
(2)確定BP 神經(jīng)網(wǎng)絡中隱藏層個數(shù)、激活函數(shù)、學習率、性能函數(shù)、網(wǎng)絡訓練次數(shù)以及GTOA 算法中種群大小和教學因素參數(shù)。
(3)初始化由權值與閾值個體組成的種群:
其中,N是生成種群大小,D是輸入層個數(shù),即維度,u和l分別是權值和閾值的上下界,k是[0,1]之間的隨機數(shù)。
(4)計算種群適應度值,按照適應度值大小將種群分成優(yōu)秀種群和一般種群。
(5)從分組的種群中按式(5)的種群選取教師。
(6)更新種群位置。優(yōu)秀學生通過式(1)、式(2)、式(4),一般學生通過式(3)、式(4)完成教師教學階段和學生學習階段更新種群。
(7)重復步驟(4)-(6)直到滿足結束條件,得到最優(yōu)的權值和閾值。
具體流程如圖2 所示。
Fig.2 GTOA-BP model flow圖2 GTOA-BP 模型流程
本實驗數(shù)據(jù)來自武漢市農科院環(huán)安所。依據(jù)《土壤環(huán)境監(jiān)測技術規(guī)范》(HJ/T166-2004)和《土壤環(huán)境質量農業(yè)農用地土壤環(huán)境污染管控》(GB15618-2018)的要求,對武漢市6 個新城區(qū)的周邊土壤中8 種重金屬進行檢測,包括砷(As)、銅(Cd)、鉻(Cr)、銅(Cu)、鎳(Ni)、鉛(Pb)、鋅(Zn)和汞(Hg),通過GPS 定位儀得到采樣點的經(jīng)度、緯度和海拔,記錄了1161 個采樣點的種植物類型。本研究的所有實驗均在處理器為2.4 GHz 的四核Intel Core i5 以及操作系統(tǒng)為Windows 的電腦上進行,編程語言為Python,編程軟件為PyCharm 2019 專業(yè)版。將數(shù)據(jù)中的農作物按照類型進行編號,把經(jīng)度、緯度和高度的特征值作為模型輸入?yún)?shù),將8 種元素中的As 含量(mg/kg)作為實驗模型輸出參數(shù),采用數(shù)據(jù)集中的500 組數(shù)據(jù)作為訓練集,30 組數(shù)據(jù)作為測試集。
對數(shù)據(jù)進行預處理公式如下:
其中,X是原始數(shù)據(jù),Xmax和Xmin分別是原始數(shù)據(jù)中的最大值和最小值。
為了檢驗預測模型可行性,將GTOA-BP 模型分別與BP 神經(jīng)網(wǎng)絡模型和徑向基神經(jīng)網(wǎng)絡模型(Radial Basis Function Neyral Network,RBFNN)進行對比,實驗中BP 模型和RBF 模型迭代次數(shù)為600,激活函數(shù)采用tanh 函數(shù),隱藏層節(jié)點數(shù)為8,學習率為0.02。GTOA-BP 預測模型種群大小為30,教學因素F為2,3 種模型訓練下的As 含量真實值與預測值對比如圖3-圖5 所示。
Fig.3 Comparison of As content in BP model圖3 BP 模型As 含量對比
Fig.4 Comparison of As content in RBF model圖4 RBF 模型As 含量對比
Fig.5 Comparison of As content in GTOA-BP model圖5 GTOA-BP 模型As 含量對比
將預測得到的值與真實值作差值運算,然后得到差值與對應點的真實值比值大小,得到30 個測試點的分布,如表1 所示。
Table 1 Distribution of ratio of prediction points表1 預測點比值大小分布情況
平均絕對誤差(MAE)、均方誤差(MSE)、平均絕對百分比誤差(MAPE)和對稱平均絕對百分比誤差(SMAPE)是4種可以評判預測效果的誤差指標公式。計算公式如下:
結合圖3、圖4、圖5 以及表1 和 表2 的數(shù)據(jù)可知,GTOA-BP 模型預測的數(shù)據(jù)相較于BP 模型和RBF 模型更加貼合真實數(shù)據(jù),預測數(shù)據(jù)與真實數(shù)據(jù)差距較小。從表1 可以看出,GTOA-BP 模型得到的數(shù)值比其他兩種模型可信度高,在比值小于10%時,GTOA-BP 有比其他兩種模型一倍的預測點。由表2 可以看出,BPNN 模型和RBFNN 模型的4種誤差指標數(shù)值均高于GTOA-BP 模型的誤差指標,說明GTOA-BP 模型在3 種模型中預測效果最好。
Table 2 Comparison of prediction errors表2 預測誤差對比
本文提出的GTOA-BP 預測模型通過GTOA 對BP 神經(jīng)網(wǎng)絡中的權值與閾值進行優(yōu)化,相較于BPNN 和RBFNN 模型在土壤重金屬含量預測效果方面有著更好的表現(xiàn)。通過分組模型對土壤中殘留物進行預測,以此為基礎對土壤重金屬開展風險評估工作,為開展土地預防治理提供技術支撐。后續(xù)可以嘗試將GTOA 運用到其他不同神經(jīng)網(wǎng)絡中,如日常生活中。但GTOA 算法還未運用于實際問題,算法還需進行優(yōu)化以加快算法收斂速度。