劉 潤, 張紹良, 侯湖平, 陳 浮, 田艷鳳, 郝紹金
(1.中國礦業(yè)大學環(huán)境與測繪學院,江蘇徐州 221116; 2.中國礦業(yè)大學低碳能源研究院,江蘇徐州 221116)
植物葉片葉綠素含量是表征植物生長狀況和其光合作用能力的重要指標,是植被光合作用能力、植被生理狀況的指示劑,其含量快速測定對農(nóng)作物長勢監(jiān)測、病蟲害防治及農(nóng)作物估產(chǎn)等都有著重要意義[1-2]。
傳統(tǒng)的實驗室化學測定植物葉片葉綠素含量雖然精度較高,但其過程繁雜,而且化學試劑的使用會產(chǎn)生很多污染廢棄物,不適用于大量樣本葉綠素的快速測定。利用光譜分析方法進行植物葉綠素含量等生化成分含量測定則具有低消耗、低成本、快速及無損傷等優(yōu)點,并且已經(jīng)廣泛應(yīng)用于農(nóng)業(yè)、醫(yī)藥、食品等多個領(lǐng)域。1983年,Horler等就對葉片葉綠素濃度和反射光譜間的相關(guān)關(guān)系進行了研究,并建議使用光譜數(shù)據(jù)進行葉綠素含量的反演[3]。隨著高光譜技術(shù)的發(fā)展,多元統(tǒng)計分析方法被廣泛應(yīng)用于葉綠素等生化參數(shù)反演[4-5],關(guān)于植被葉綠素等生化參數(shù)與光譜反射率關(guān)系的研究也表明,葉綠素等與光譜反射率之間具有非線性關(guān)系,一般性回歸方法無法達到較高精度,而神經(jīng)元網(wǎng)絡(luò)算法以其強大的容錯性、自組織自學習和非線性模擬能力,在不確定兩者之間關(guān)系的前提下仍然可以很好地解決非線性問題[6]。目前,利用神經(jīng)元網(wǎng)絡(luò)算法的高光譜反演技術(shù)在土壤水分、土壤有機質(zhì)、礦區(qū)土地重金屬含量反演等相關(guān)研究中都取得了較好成果,但關(guān)于大豆冠層葉綠素含量反演的研究相對較少。在相關(guān)指標含量估算的建模研究中人們還發(fā)現(xiàn),人工神經(jīng)網(wǎng)絡(luò)集成模型的精度要優(yōu)于單神經(jīng)網(wǎng)絡(luò)模型,單神經(jīng)網(wǎng)絡(luò)模型則優(yōu)于多元逐步回歸模型[7-8]。
本研究將利用BP(back propagation)神經(jīng)網(wǎng)絡(luò)來建立大豆葉片葉綠素反演模型,并使用遺傳算法(genetic Algorithm,簡稱GA)和思維進化算法(mind evolutionary algorithm,簡稱MEA)對BP神經(jīng)網(wǎng)絡(luò)模型連接權(quán)值和閾值進行優(yōu)化,并針對葉綠素和光譜反射率之間的相關(guān)關(guān)系分別建立遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)(GA-BP)模型和思維進化算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)(MEA-BP)模型,來估算葉綠素含量,并對模型進行驗證和精度比較,從而確定最佳估算模型。
本次試驗數(shù)據(jù)在中國礦業(yè)大學南湖校區(qū)試驗田采集,采集時間為2014年7月16日,天氣晴。試驗田總規(guī)劃面積為 1 000 m2(40 m×25 m),試驗田應(yīng)季種植大豆,結(jié)合試驗田大豆實際種植情況,在田間以近“S”形取樣路線均勻地選取樣本點32處,并做好標記(圖1)。
反射光譜測量采用ASD(Analytical Spectra Devices)公司生產(chǎn)的FieldSpec3地物光譜儀,其光譜測量范圍為350~2 500 nm,其中350~1 000 nm波段分辨率為1.4 nm,1 000~2 500 nm波段分辨率為2.0 nm,大豆葉片光譜采集時間為 10:00—15:00,在風力小于3級,天氣晴朗無云情況下進行。采集時保持傳感器探頭距離冠層1 m左右處,與地面垂直。采集期間每隔0.5 h用參考板對儀器進行優(yōu)化以消除環(huán)境對儀器的影響。每個樣本點重復獲取10條光譜曲線取平均值作為原始光譜數(shù)據(jù)。由于光譜采集過程在室外進行,不可避免地會混入各種噪聲,跳躍點如圖2-a所示,因此這里通過小波去噪法濾除大部分噪聲信息,最后得到較平滑的光譜曲線(圖2-b)。圖2-b所呈現(xiàn)的是比較典型的植被光譜曲線特征,在綠光波段(550 nm左右)有1個明顯的反射峰,這也是綠色植物呈現(xiàn)為綠色的原因;在紅光波段(680 nm左右)有1個吸收谷,這是因為植被光合作用須要吸收紅光波段能量;由于植被葉片內(nèi)部構(gòu)造的原因,導致葉片在近紅外波段(700~800 nm)處有一反射陡坡,形成植被的獨有特征;短波紅外波段(1300~2500 nm)由于植被含水量的影響,吸收率大增,反射率大大下降,其中在1 450、1 925 nm左右處均為水的吸收峰。以上特征表明,經(jīng)過去噪后的光譜曲線能夠滿足接下來試驗研究的要求。
在樣點光譜采集完畢后立刻采集樣點處葉片,將葉片用自封袋裝好并做標記后帶回實驗室,用分光光度法測定葉綠素含量,并計算出每克干物質(zhì)葉綠素含量(mg/g),對每1樣本點測量30次,取其平均值作為最終模型輸入的葉綠素含量,樣本葉綠素含量統(tǒng)計結(jié)果見表1。
表1 32個樣點葉綠素含量檢測統(tǒng)計結(jié)果
1.4.1 BP神經(jīng)網(wǎng)絡(luò) BP神經(jīng)網(wǎng)絡(luò)是由Rnmelhart和Hinton等在20世紀80年代中期提出的一種多層前饋神經(jīng)網(wǎng)絡(luò),該神經(jīng)網(wǎng)絡(luò)在學習和訓練過程當中采用誤差的逆向傳播算法,因此被稱為BP神經(jīng)網(wǎng)絡(luò)[9];結(jié)構(gòu)上,BP神經(jīng)網(wǎng)絡(luò)主要由輸入層、隱含層、輸出層構(gòu)成,其中隱含層數(shù)目是不確定的,可以為一層或多層,有研究已經(jīng)證明在只有一層隱含層情況下的BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)對任意非線性連續(xù)函數(shù)仍然有很好的逼近能力[10],圖3為只有一層隱含層的神經(jīng)網(wǎng)絡(luò)示意圖[11]。
BP神經(jīng)網(wǎng)絡(luò)的數(shù)學原理[6]描述如下:
(2)
1.4.2 GA-BP 遺傳算法利用了生物的進化過程和遺傳思想,不同于啟發(fā)式算法、搜索算法等傳統(tǒng)優(yōu)化算法,它具有自組織、自適應(yīng)、智能型等特點,在運行過程中處理的是參數(shù)編碼集,而非參數(shù)本身,并且該算法在搜索過程中使用的是目標函數(shù)值的評價信息,因此搜索過程不受優(yōu)化函數(shù)連續(xù)性、可導性的約束[12-13]。此外,GA擅長全局搜索,而BP神經(jīng)網(wǎng)絡(luò)擅長局部搜索,GA首先優(yōu)化神經(jīng)網(wǎng)絡(luò)初始權(quán)值定位出較優(yōu)的搜索空間,再通過BP神經(jīng)網(wǎng)絡(luò)在小空間搜索產(chǎn)生最優(yōu)值,因此可以很好地表達輸入量和期望輸出變量之間的非線性關(guān)系,提高BP神經(jīng)網(wǎng)絡(luò)反演精度[14-15],這便是GA優(yōu)化的基本原理。GA的具體步驟如下:
(1)網(wǎng)絡(luò)初始化
初始化BP神經(jīng)網(wǎng)絡(luò),隨機產(chǎn)生1個種群Xm×n,其中個體X1×n代表1個神經(jīng)網(wǎng)絡(luò)初始權(quán)值分布;確定網(wǎng)絡(luò)輸入輸出節(jié)點數(shù)s1、s2,隱含層數(shù)H,訓練次數(shù)N,訓練誤差ε等參數(shù),則個體長度即為神經(jīng)網(wǎng)絡(luò)權(quán)值個數(shù)。
(2)遺傳編碼
確定種群規(guī)模m、最大迭代次數(shù)T、交叉概率Pc和變異概略Pm,將網(wǎng)絡(luò)權(quán)值和閾值按照一定順序聯(lián)起來作為一個染色體,其長度n為
n=H×(s1+s2)+H+s2。
(3)
(3)選取適應(yīng)度函數(shù)
適應(yīng)度函數(shù)值是種群中個體的得分和評價,可以反映個體或解的優(yōu)劣性,這里將網(wǎng)絡(luò)的誤差函數(shù)E作為適應(yīng)度函數(shù)來計算種群中每個個體的適應(yīng)度值fi。
(4)遺傳進化
該部分主要是通過迭代來求解最佳結(jié)構(gòu)權(quán)值和閾值,集成選擇、交叉、變異3個操作,其中,選擇算子采用輪盤賭法,若第i個個體的適應(yīng)度值為fi,則選中概率為
(4)
交叉即由2個個體通過線性組合產(chǎn)生新的個體,這里選擇算術(shù)交叉法。假設(shè)以交叉概率Pc在2個個體Xi(k)、Xi+1(k)之間進行交叉操作,則交叉后產(chǎn)生的新個體為
(5)
式中:α為0~1之間的隨機值。
變異操作選擇均勻變異算子作用于群體,以變異概率Pm所對應(yīng)的基因取值范圍內(nèi)某一隨機值來替換原有值,即:
Xi=Xi(p)+s1×q+Xi(n-p-1)。
(6)
式中:q為第p+1個基因所對應(yīng)閾值范圍,通過遺傳進化便可以利用初始父輩種群產(chǎn)生新一代的子種群Xt。
(5)適應(yīng)度值計算
計算適應(yīng)度值,判斷是否滿足迭代次數(shù)和精度要求,否則返回第2步。在遺傳結(jié)束后,解碼最優(yōu)個體作為BP網(wǎng)絡(luò)的初始權(quán)值和閾值。
1.4.3 MEA-BP 思維進化算法是在遺傳算法的基礎(chǔ)上進行改進,借鑒了遺傳算法的群體進化思想,提出了趨同和異化算子,兩者相互協(xié)調(diào),并非對立關(guān)系。趨同操作針對群體中的某一部分,而異化操作則針對整個群體,因此可以提高選擇效率,MEA具體步驟如下[16]:
(1)網(wǎng)絡(luò)初始化
由于思維進化算法沿用了遺傳算法的群體、進化等概念,因此網(wǎng)絡(luò)初始化部分基本相同,這里可以借鑒遺傳算法的網(wǎng)絡(luò)初始化部分內(nèi)容。
(2)子群體生成
根據(jù)適應(yīng)度函數(shù)計算個體適應(yīng)度值,得分最高的前M個個體選定為優(yōu)勝個體,(M+1)~(M+N)個個體作為臨時個體,以優(yōu)勝個體和臨時個體為中心,分別生成M個優(yōu)勝子群體和N個臨時子群體。
(3)趨同操作
各子群體內(nèi)部個體進行局部競爭轉(zhuǎn)變?yōu)閯僬叩倪^程,競爭過程持續(xù)到子群體成熟,即不再產(chǎn)生新的勝者,此時的子群體得分為最優(yōu)個體的得分,并將結(jié)果粘貼到全局公告板上,直到所有子群體成熟,趨同工程才結(jié)束。
(4)異化操作
成熟子群體之間為成為勝者而進行的全局競爭,從全局公告板上比較優(yōu)勝子群體和臨時子群體得分,通過得分篩選出全局最優(yōu)個體。異化結(jié)束后,計算最優(yōu)個體適應(yīng)度值,判斷是否滿足迭代次數(shù)和精度要求,不滿足則返回網(wǎng)絡(luò)重新進行(2)~(3)步操作。進化結(jié)束后解碼最優(yōu)個體作為網(wǎng)絡(luò)結(jié)構(gòu)初始權(quán)值和閾值,本研究中模型的建立和運算在Matlab環(huán)境中進行,2種優(yōu)化算法的具體流程如圖4所示。
從穩(wěn)定性和預(yù)測能力2個方面對模型精度進行驗證,其中,穩(wěn)定性用判定系數(shù)r2來衡量,預(yù)測能力使用均方根誤差(root mean square error,簡稱RMSE)來衡量,兩者計算公式如下:
(7)
(8)
原始光譜數(shù)據(jù)含有2 150個波段,若全部用于估算模型建立,模型的結(jié)算將會耗費大量時間,并且原始數(shù)據(jù)中混有不可修正的噪聲信息,若全波段建模也會降低模型最終估算精度。因此,本研究通過分析光譜反射率數(shù)據(jù)和葉綠素含量之間的相關(guān)性來提取特征波段用作模型輸入數(shù)據(jù),分析結(jié)果如圖5所示。
本研究特征波段選取有意避開噪聲集中區(qū),根據(jù)相關(guān)性分析選取412、705、934、1 421、2 157 nm 5個波段作為特征波段,特征波段對應(yīng)的反射率作為模型自變量輸入?yún)?shù)。本研究共選取32個實測樣本,選取其中22個樣本作為網(wǎng)絡(luò)訓練數(shù)據(jù),剩余10個樣本用于網(wǎng)絡(luò)驗證。
估算試驗以選取的特征波段反射率作為模型自變量,對應(yīng)葉綠素含量作為因變量。分別運用單BP神經(jīng)網(wǎng)絡(luò),基于遺傳算法優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)和基于思維進化算法優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)進行建模估算。由于神經(jīng)網(wǎng)絡(luò)運行時是隨機產(chǎn)生初始權(quán)值,因此進行反復試驗,通過‘save filename net’命令保存精度較高的網(wǎng)絡(luò)。
從圖6以及表2中的統(tǒng)計結(jié)果可以看出,通過思維進化算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)估算的葉綠素含量與實測值吻合程度最高(圖6-d),遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)次之,單BP神經(jīng)網(wǎng)絡(luò)和經(jīng)過遺傳算法優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)得到的估測值相比實測值波動較大,這也與表2的統(tǒng)計結(jié)果相匹配;基于思維進化算法優(yōu)化BP神經(jīng)網(wǎng)的決定系數(shù)為0.861,均方根誤差為3.234 7,從模型穩(wěn)定性和模型的預(yù)測能力來說,思維進化算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)都要優(yōu)于其他2種方法。
表2 不同模型精度統(tǒng)計
對降噪后的原始光譜數(shù)據(jù)進行相關(guān)性分析,從而篩選出相關(guān)性較大的特征波段對應(yīng)的反射率作為模型自變量用于葉綠素含量估算,并分別使用單BP神經(jīng)網(wǎng)絡(luò)、基于遺傳算法優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)、基于思維進化算法優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)進行葉綠素含量估算建模。大量對比試驗結(jié)果表明,基于思維進化算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)模型的穩(wěn)定性(r2=0.861)及預(yù)測能力(RMSE=3.234 7)相比于其他2種方法更好,可以為其他相關(guān)反演研究提供一定的借鑒作用;與經(jīng)過優(yōu)化后BP神經(jīng)網(wǎng)絡(luò)相比,單BP神經(jīng)網(wǎng)絡(luò)獲得了最低精度的估算結(jié)果,這也說明,通過其他優(yōu)化算法與神經(jīng)網(wǎng)絡(luò)的組合建模能夠有效提高模型反演精度;雖然思維進化算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)取得了較好的葉綠素估算精度,但由于實測數(shù)據(jù)量較少,在運行該神經(jīng)網(wǎng)絡(luò)的過程中存在不穩(wěn)定因素,估算過程中可能會存在一定偏差。