劉 潤, 張紹良, 侯湖平, 陳 浮, 田艷鳳, 郝紹金
(1.中國礦業大學環境與測繪學院,江蘇徐州 221116; 2.中國礦業大學低碳能源研究院,江蘇徐州 221116)
植物葉片葉綠素含量是表征植物生長狀況和其光合作用能力的重要指標,是植被光合作用能力、植被生理狀況的指示劑,其含量快速測定對農作物長勢監測、病蟲害防治及農作物估產等都有著重要意義[1-2]。
傳統的實驗室化學測定植物葉片葉綠素含量雖然精度較高,但其過程繁雜,而且化學試劑的使用會產生很多污染廢棄物,不適用于大量樣本葉綠素的快速測定。利用光譜分析方法進行植物葉綠素含量等生化成分含量測定則具有低消耗、低成本、快速及無損傷等優點,并且已經廣泛應用于農業、醫藥、食品等多個領域。1983年,Horler等就對葉片葉綠素濃度和反射光譜間的相關關系進行了研究,并建議使用光譜數據進行葉綠素含量的反演[3]。隨著高光譜技術的發展,多元統計分析方法被廣泛應用于葉綠素等生化參數反演[4-5],關于植被葉綠素等生化參數與光譜反射率關系的研究也表明,葉綠素等與光譜反射率之間具有非線性關系,一般性回歸方法無法達到較高精度,而神經元網絡算法以其強大的容錯性、自組織自學習和非線性模擬能力,在不確定兩者之間關系的前提下仍然可以很好地解決非線性問題[6]。目前,利用神經元網絡算法的高光譜反演技術在土壤水分、土壤有機質、礦區土地重金屬含量反演等相關研究中都取得了較好成果,但關于大豆冠層葉綠素含量反演的研究相對較少。在相關指標含量估算的建模研究中人們還發現,人工神經網絡集成模型的精度要優于單神經網絡模型,單神經網絡模型則優于多元逐步回歸模型[7-8]。
本研究將利用BP(back propagation)神經網絡來建立大豆葉片葉綠素反演模型,并使用遺傳算法(genetic Algorithm,簡稱GA)和思維進化算法(mind evolutionary algorithm,簡稱MEA)對BP神經網絡模型連接權值和閾值進行優化,并針對葉綠素和光譜反射率之間的相關關系分別建立遺傳算法優化BP神經網絡(GA-BP)模型和思維進化算法優化BP神經網絡(MEA-BP)模型,來估算葉綠素含量,并對模型進行驗證和精度比較,從而確定最佳估算模型。
本次試驗數據在中國礦業大學南湖校區試驗田采集,采集時間為2014年7月16日,天氣晴。試驗田總規劃面積為 1 000 m2(40 m×25 m),試驗田應季種植大豆,結合試驗田大豆實際種植情況,在田間以近“S”形取樣路線均勻地選取樣本點32處,并做好標記(圖1)。
反射光譜測量采用ASD(Analytical Spectra Devices)公司生產的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用參考板對儀器進行優化以消除環境對儀器的影響。每個樣本點重復獲取10條光譜曲線取平均值作為原始光譜數據。由于光譜采集過程在室外進行,不可避免地會混入各種噪聲,跳躍點如圖2-a所示,因此這里通過小波去噪法濾除大部分噪聲信息,最后得到較平滑的光譜曲線(圖2-b)。圖2-b所呈現的是比較典型的植被光譜曲線特征,在綠光波段(550 nm左右)有1個明顯的反射峰,這也是綠色植物呈現為綠色的原因;在紅光波段(680 nm左右)有1個吸收谷,這是因為植被光合作用須要吸收紅光波段能量;由于植被葉片內部構造的原因,導致葉片在近紅外波段(700~800 nm)處有一反射陡坡,形成植被的獨有特征;短波紅外波段(1300~2500 nm)由于植被含水量的影響,吸收率大增,反射率大大下降,其中在1 450、1 925 nm左右處均為水的吸收峰。以上特征表明,經過去噪后的光譜曲線能夠滿足接下來試驗研究的要求。

在樣點光譜采集完畢后立刻采集樣點處葉片,將葉片用自封袋裝好并做標記后帶回實驗室,用分光光度法測定葉綠素含量,并計算出每克干物質葉綠素含量(mg/g),對每1樣本點測量30次,取其平均值作為最終模型輸入的葉綠素含量,樣本葉綠素含量統計結果見表1。

表1 32個樣點葉綠素含量檢測統計結果
1.4.1 BP神經網絡 BP神經網絡是由Rnmelhart和Hinton等在20世紀80年代中期提出的一種多層前饋神經網絡,該神經網絡在學習和訓練過程當中采用誤差的逆向傳播算法,因此被稱為BP神經網絡[9];結構上,BP神經網絡主要由輸入層、隱含層、輸出層構成,其中隱含層數目是不確定的,可以為一層或多層,有研究已經證明在只有一層隱含層情況下的BP神經網絡結構對任意非線性連續函數仍然有很好的逼近能力[10],圖3為只有一層隱含層的神經網絡示意圖[11]。
BP神經網絡的數學原理[6]描述如下:

(2)

1.4.2 GA-BP 遺傳算法利用了生物的進化過程和遺傳思想,不同于啟發式算法、搜索算法等傳統優化算法,它具有自組織、自適應、智能型等特點,在運行過程中處理的是參數編碼集,而非參數本身,并且該算法在搜索過程中使用的是目標函數值的評價信息,因此搜索過程不受優化函數連續性、可導性的約束[12-13]。此外,GA擅長全局搜索,而BP神經網絡擅長局部搜索,GA首先優化神經網絡初始權值定位出較優的搜索空間,再通過BP神經網絡在小空間搜索產生最優值,因此可以很好地表達輸入量和期望輸出變量之間的非線性關系,提高BP神經網絡反演精度[14-15],這便是GA優化的基本原理。GA的具體步驟如下:
(1)網絡初始化
初始化BP神經網絡,隨機產生1個種群Xm×n,其中個體X1×n代表1個神經網絡初始權值分布;確定網絡輸入輸出節點數s1、s2,隱含層數H,訓練次數N,訓練誤差ε等參數,則個體長度即為神經網絡權值個數。
(2)遺傳編碼
確定種群規模m、最大迭代次數T、交叉概率Pc和變異概略Pm,將網絡權值和閾值按照一定順序聯起來作為一個染色體,其長度n為
n=H×(s1+s2)+H+s2。
(3)
(3)選取適應度函數
適應度函數值是種群中個體的得分和評價,可以反映個體或解的優劣性,這里將網絡的誤差函數E作為適應度函數來計算種群中每個個體的適應度值fi。
(4)遺傳進化
該部分主要是通過迭代來求解最佳結構權值和閾值,集成選擇、交叉、變異3個操作,其中,選擇算子采用輪盤賭法,若第i個個體的適應度值為fi,則選中概率為
(4)
交叉即由2個個體通過線性組合產生新的個體,這里選擇算術交叉法。假設以交叉概率Pc在2個個體Xi(k)、Xi+1(k)之間進行交叉操作,則交叉后產生的新個體為
(5)
式中:α為0~1之間的隨機值。
變異操作選擇均勻變異算子作用于群體,以變異概率Pm所對應的基因取值范圍內某一隨機值來替換原有值,即:
Xi=Xi(p)+s1×q+Xi(n-p-1)。
(6)
式中:q為第p+1個基因所對應閾值范圍,通過遺傳進化便可以利用初始父輩種群產生新一代的子種群Xt。
(5)適應度值計算
計算適應度值,判斷是否滿足迭代次數和精度要求,否則返回第2步。在遺傳結束后,解碼最優個體作為BP網絡的初始權值和閾值。
1.4.3 MEA-BP 思維進化算法是在遺傳算法的基礎上進行改進,借鑒了遺傳算法的群體進化思想,提出了趨同和異化算子,兩者相互協調,并非對立關系。趨同操作針對群體中的某一部分,而異化操作則針對整個群體,因此可以提高選擇效率,MEA具體步驟如下[16]:
(1)網絡初始化
由于思維進化算法沿用了遺傳算法的群體、進化等概念,因此網絡初始化部分基本相同,這里可以借鑒遺傳算法的網絡初始化部分內容。
(2)子群體生成
根據適應度函數計算個體適應度值,得分最高的前M個個體選定為優勝個體,(M+1)~(M+N)個個體作為臨時個體,以優勝個體和臨時個體為中心,分別生成M個優勝子群體和N個臨時子群體。
(3)趨同操作
各子群體內部個體進行局部競爭轉變為勝者的過程,競爭過程持續到子群體成熟,即不再產生新的勝者,此時的子群體得分為最優個體的得分,并將結果粘貼到全局公告板上,直到所有子群體成熟,趨同工程才結束。
(4)異化操作
成熟子群體之間為成為勝者而進行的全局競爭,從全局公告板上比較優勝子群體和臨時子群體得分,通過得分篩選出全局最優個體。異化結束后,計算最優個體適應度值,判斷是否滿足迭代次數和精度要求,不滿足則返回網絡重新進行(2)~(3)步操作。進化結束后解碼最優個體作為網絡結構初始權值和閾值,本研究中模型的建立和運算在Matlab環境中進行,2種優化算法的具體流程如圖4所示。

從穩定性和預測能力2個方面對模型精度進行驗證,其中,穩定性用判定系數r2來衡量,預測能力使用均方根誤差(root mean square error,簡稱RMSE)來衡量,兩者計算公式如下:
(7)
(8)

原始光譜數據含有2 150個波段,若全部用于估算模型建立,模型的結算將會耗費大量時間,并且原始數據中混有不可修正的噪聲信息,若全波段建模也會降低模型最終估算精度。因此,本研究通過分析光譜反射率數據和葉綠素含量之間的相關性來提取特征波段用作模型輸入數據,分析結果如圖5所示。
本研究特征波段選取有意避開噪聲集中區,根據相關性分析選取412、705、934、1 421、2 157 nm 5個波段作為特征波段,特征波段對應的反射率作為模型自變量輸入參數。本研究共選取32個實測樣本,選取其中22個樣本作為網絡訓練數據,剩余10個樣本用于網絡驗證。

估算試驗以選取的特征波段反射率作為模型自變量,對應葉綠素含量作為因變量。分別運用單BP神經網絡,基于遺傳算法優化的BP神經網絡和基于思維進化算法優化的BP神經網絡進行建模估算。由于神經網絡運行時是隨機產生初始權值,因此進行反復試驗,通過‘save filename net’命令保存精度較高的網絡。
從圖6以及表2中的統計結果可以看出,通過思維進化算法優化BP神經網絡估算的葉綠素含量與實測值吻合程度最高(圖6-d),遺傳算法優化BP神經網絡次之,單BP神經網絡和經過遺傳算法優化的BP神經網絡得到的估測值相比實測值波動較大,這也與表2的統計結果相匹配;基于思維進化算法優化BP神經網的決定系數為0.861,均方根誤差為3.234 7,從模型穩定性和模型的預測能力來說,思維進化算法優化BP神經網絡都要優于其他2種方法。


表2 不同模型精度統計
對降噪后的原始光譜數據進行相關性分析,從而篩選出相關性較大的特征波段對應的反射率作為模型自變量用于葉綠素含量估算,并分別使用單BP神經網絡、基于遺傳算法優化的BP神經網絡、基于思維進化算法優化的BP神經網絡進行葉綠素含量估算建模。大量對比試驗結果表明,基于思維進化算法優化BP神經網絡模型的穩定性(r2=0.861)及預測能力(RMSE=3.234 7)相比于其他2種方法更好,可以為其他相關反演研究提供一定的借鑒作用;與經過優化后BP神經網絡相比,單BP神經網絡獲得了最低精度的估算結果,這也說明,通過其他優化算法與神經網絡的組合建模能夠有效提高模型反演精度;雖然思維進化算法優化BP神經網絡取得了較好的葉綠素估算精度,但由于實測數據量較少,在運行該神經網絡的過程中存在不穩定因素,估算過程中可能會存在一定偏差。