宋妮娜, 肖 冬*, 李 森, 高宇潔
1. 東北大學(xué)信息科學(xué)與工程學(xué)院, 遼寧 沈陽 110819
2. 東北大學(xué)冶金學(xué)院, 遼寧 沈陽 110819
鹽堿地形成的實(shí)質(zhì)是土壤中不同方向的易溶性鹽發(fā)生漬化沉積, 使得鹽分逐漸積聚在鹽密集區(qū)的地表, 通過這種方式形成的有鹽漬土、 堿化土和各種鹽堿土等。 農(nóng)業(yè)生產(chǎn)受土壤鹽漬化影響較大, 因此研究鹽堿地的性質(zhì)和組成對后續(xù)實(shí)施生態(tài)恢復(fù)、 土地利用和改良措施具有重要意義。
傳統(tǒng)的含鹽量測定方法大多基于化學(xué)分析, 其測量精度高的優(yōu)點(diǎn)仍不能使人們忽視其成本高、 效率低的缺點(diǎn), 將化學(xué)分析應(yīng)用于大面積土地的可行性大大降低。 隨著時(shí)代的發(fā)展, 光譜法在含量檢測中的應(yīng)用發(fā)展迅速。 將土壤指標(biāo)與光譜指標(biāo)相結(jié)合分析鹽堿地土壤性質(zhì)是一種高效率、 低損耗的流行方法[1], 考慮到硅、 硫、 鐵等金屬元素和一些復(fù)雜有機(jī)質(zhì)對鹽堿土樣品原始光譜數(shù)據(jù)的影響較大, 使正常情況下直接得到的光譜數(shù)據(jù)中包含有大量無效信息, 且獲得的樣本數(shù)據(jù)相關(guān)性過大。 極限學(xué)習(xí)機(jī)(extreme learning machine, ELM)作為一種基于前饋神經(jīng)網(wǎng)絡(luò)構(gòu)建的機(jī)器學(xué)習(xí)系統(tǒng), 在許多研究中作為一種光譜處理方法被成功應(yīng)用[2-3]。 有研究將其結(jié)合卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network, CNN)應(yīng)用到煤炭分類上。 在探索過程中, 利用ELM算法構(gòu)建的光譜特征數(shù)據(jù)預(yù)測分析模型具有諸多優(yōu)點(diǎn), 自2006年以來迅速發(fā)展[4]。 例如有將粒子群算法(particle swarm optimization algorithm, PSO)加入ELM中進(jìn)行參數(shù)優(yōu)化[5]。 根據(jù)ELM初始參數(shù)的特點(diǎn), Chen等[6]提出了一種集成ELM算法對近紅外光譜進(jìn)行標(biāo)定。 Xiao等[7]利用主成分分析法對采集到的大量初始煤礦數(shù)據(jù)進(jìn)行降維, 并采用多層極限學(xué)習(xí)機(jī)(M-ELM)建立煤種識別模型。 2019年Xiao[8]也提出了一種改進(jìn)的PSO-ELM算法(IPSO-TELM), 其每個(gè)神經(jīng)網(wǎng)絡(luò)都有不同的隱含層, 其中每個(gè)隱含層的神經(jīng)元個(gè)數(shù)不同, 能夠通過改進(jìn)算法找到最優(yōu)的神經(jīng)元數(shù)目。 ELM模型已經(jīng)被許多人改進(jìn), 如I-ELM(增量ELM)[9]。
在對光譜數(shù)據(jù)進(jìn)行主成分分析法(PCA)預(yù)處理后, 提出了基于隨機(jī)值改進(jìn)粒子群優(yōu)化算法(improved particle swarm optimization (PSO) algorithm with random values, RVIPSO-MELM)優(yōu)化的多層極限學(xué)習(xí)機(jī)模型。 隨著隱含層的增加, 極限學(xué)習(xí)機(jī)能夠保證模型性能不斷提升的同時(shí), 提高模型的優(yōu)化速度。 本研究對于隱含層之間參數(shù)的兩種選擇方法進(jìn)行了模型性能與優(yōu)化時(shí)間之間相關(guān)討論。
研究地區(qū)為吉林省鎮(zhèn)賚縣鹽堿地, 位于松寧平原西北部。 中國的松寧平原屬于堿性土地, 是中國重要的糧食產(chǎn)區(qū), 也是中國最大的堿土鹽堿地。 在該鹽堿地上采集表層樣本62個(gè), 利用SVCHR-1024光譜儀測量了這些樣品的光譜數(shù)據(jù)。
圖1 樣品的反射光譜曲線
SVCHR-1024的光譜范圍為350~2 500 nm, 波長數(shù)為1 024。 在測量光譜數(shù)據(jù)實(shí)驗(yàn)中, 為減少周圍環(huán)境對光譜測試的干擾, 在一個(gè)封閉室內(nèi)完成實(shí)驗(yàn)。 對每個(gè)樣品進(jìn)行了三次測試, 取平均值作為樣品的最終反射率。
從圖1的光譜曲線可以看出, 在400~600 nm的范圍內(nèi), 光譜反射率較低。 每個(gè)樣品的光譜彼此相似, 但在1 000~2 500 nm范圍, 不同鹽含量的光譜特征更為明顯。
1.2.1 主成分分析法
實(shí)驗(yàn)得到的鹽堿地原始光譜數(shù)據(jù)有973個(gè)波段, 如果將這些未經(jīng)處理的數(shù)據(jù)用于建立的模型算法, 不僅計(jì)算困難, 而且樣本數(shù)據(jù)相關(guān)性差且嚴(yán)重冗余[10]。 會降低模型的準(zhǔn)確性。 主成分分析(principal component analysis, PCA)可對數(shù)據(jù)線性降維, 是最普遍的使用方法。
PCA作為一種常用的數(shù)據(jù)降維方法, 可以將高維數(shù)據(jù)轉(zhuǎn)換為“信息”損失較少的低維數(shù)據(jù), 極大地促進(jìn)了模型的建立, 可到節(jié)省訓(xùn)練時(shí)間的目的。
考慮到鹽堿土的復(fù)雜性, 為了減少有效信息損失, 避免影響最終建模效果, 選取前10個(gè)主成分表征原始光譜數(shù)據(jù)信息, 貢獻(xiàn)率由圖2所示。
圖2 前10個(gè)主成分的貢獻(xiàn)率
1.2.2 粒子群算法(PSO)
有研究提出了一種進(jìn)化計(jì)算技術(shù)——粒子群優(yōu)化算法(PSO), 即基于種群的元啟發(fā)式OA算法, 源于對鳥類捕食行為的研究。 粒子群算法的基本思想是通過群體間的協(xié)作和信息交換來尋找最優(yōu)解。
將整個(gè)群擴(kuò)展到N維空間, 將每只鳥視為具有位置向量和速度向量的粒子,xi=(xi1,xi2, … ,xiN),vi=(vi1,vi2, … ,viN),i=1, 2, … ,m。 在每次迭代中, 粒子將根據(jù)式(1)和式(2)改變其位置
(1)
(2)
其中c1和c2是學(xué)習(xí)因子,ω是慣性權(quán)重, rand()為(0, 1)上的隨機(jī)數(shù), pbest為第i個(gè)粒子最佳位置。
1.2.3 極限學(xué)習(xí)機(jī)(ELM)
ELM的結(jié)構(gòu)如圖3所示。
圖3 ELM的結(jié)構(gòu)圖
對于N個(gè)任意不同的樣本(xi,ti), 其中x=[xi1,xi2, …,xin]T∈Rn,ti=[ti1,ti2, …,tim]T∈Rm,L個(gè)神經(jīng)元的單個(gè)隱層前饋神經(jīng)網(wǎng)絡(luò)可以建模為
bi,βi∈R;ai∈Rn
(3)
式(3)中,a=[ai1,ai2, …,ain]T∈Rn為輸入層神經(jīng)元與隱藏層第i個(gè)神經(jīng)元之間的輸入權(quán)重,βi和bi為輸入權(quán)重和偏置,ai·xj表示ai和xj的內(nèi)積。
極限學(xué)習(xí)機(jī)的目標(biāo)函數(shù)可以表示為式(4)—式(6)
Hβ=T
(4)
H(a1,…,al,b1,…,bL,x1,…,xL)=
(5)
(6)
H和T是神經(jīng)網(wǎng)絡(luò)隱藏層的輸出矩陣和期望輸出。 Feng等[11]提出了隨機(jī)選擇輸入權(quán)重和隱藏層偏置值的算法。 訓(xùn)練這個(gè)網(wǎng)絡(luò)結(jié)構(gòu)就等于得到Hβ=T的最小二乘解β
Minimise: ‖Hβ=T‖
(7)
β=H+T
(8)
式(7)和式(8)中H+為Moore-Penrose廣義逆矩陣, 且最小二乘解的最小值是唯一的。
在基本粒子群算法中,ω是一個(gè)固定值, 表示粒子本身的慣性權(quán)重。 隨著迭代次數(shù)的增加, 問題的細(xì)節(jié)也會發(fā)生變化, 固定值在整體求解過程中存在諸多缺陷。 引入可變慣性權(quán)重可動態(tài)適應(yīng)問題求解過程。
(9)
學(xué)習(xí)因子c1和c2反映粒子群之間的信息共享。 為了有效地控制粒子的速度, 使算法在全局搜索和局部搜索之間達(dá)到有效的平衡, CLERC構(gòu)造了帶收縮因子的PSO模型, 并引入了壓縮因子。 這種調(diào)整方法確保了參數(shù)的適當(dāng)選擇。 PSO算法的收斂性取消了對速度的邊界限制。 自學(xué)習(xí)因子c1和群學(xué)習(xí)因子c2均取2.05,C=c1+c2=4.01, 壓縮因子φ表示為式(10)
(10)
速度公式(1)可以更新為式(11)
(11)
ELM算法的缺點(diǎn)是初始權(quán)值和偏差是隨機(jī)產(chǎn)生的, 很難保證模型的準(zhǔn)確性。 Xiao[7]提出了具有隨機(jī)值的多層極限學(xué)習(xí)機(jī)(RV-MELM)算法來不斷優(yōu)化模型的性能, 然而這種方法需要隨機(jī)生成和選擇數(shù)據(jù), 可能導(dǎo)致優(yōu)化結(jié)果不能達(dá)到真正的最優(yōu)問題。 本工作首先采用蒙特卡羅方法這一隨機(jī)實(shí)驗(yàn)的思想, 隨機(jī)產(chǎn)生一組足夠的數(shù)據(jù)作為輸入層和隱層之間的權(quán)重和偏差, 并根據(jù)測試集的結(jié)果選擇最優(yōu)的一組權(quán)值和偏差輸出。 理論上分組數(shù)據(jù)會更接近最優(yōu)解, 然后使用IPSO算法以此為初值進(jìn)行搜索, 比直接優(yōu)化更快收斂到最優(yōu)解, 避免陷入局部最優(yōu)解。
當(dāng)擴(kuò)展到多層時(shí), 在RVIPSO和公式計(jì)算之間選擇后續(xù)層的權(quán)重和偏移量有兩種方法。
在為每一層選擇RVIPSO時(shí), 將第一層的輸出矩陣H1作為第二層的輸入矩陣, 將第二隱層視為第一隱層進(jìn)行再次計(jì)算。 測試集的實(shí)際輸出為式(12)
T1=H1β1
(12)
PH2=[B2W2]第二隱藏層的輸入和輸出變量為式(13)和式(14)
X2=[1H1]
(13)
H2=g(PH2×X2)
(14)
T2=H2β2
(15)
即計(jì)算測試集計(jì)算模型的性能, 確定初值, 然后尋求最優(yōu)解。 要求第二層的性能標(biāo)準(zhǔn)要優(yōu)于第一層, 以保證模型性能的持續(xù)提升。 其結(jié)構(gòu)如圖4所示。
圖4 MELM的結(jié)構(gòu)圖
根據(jù)RVIPSO確定參數(shù)的模型流程圖如圖5所示。
圖5 模型流程圖
當(dāng)只對第一個(gè)隱含層的權(quán)值和偏移量進(jìn)行RVIPSO優(yōu)化以獲得最優(yōu)值時(shí), 再直接使用MELM中的計(jì)算方法, 得到的結(jié)果也會發(fā)生改變。 根據(jù)式(16)可以提供第二隱層的期望輸出矩陣H2EO
(16)
然后使PH2=[B2W2], 其中B2和W2是第二隱層的輸入偏置和權(quán)重。PH2可以通過式(17)獲得
(17)
M2=[1H1]
(18)
通過式(18)輔助矩陣可以獲得第二隱藏層的實(shí)際輸出結(jié)果H2AO, 并且可以通過式(19)和式(20)獲得第二隱藏層的輸出權(quán)重β2
H2AO=g(PH2M2)
(19)
(20)
根據(jù)上述計(jì)算方法進(jìn)行遞歸計(jì)算, 可以得到第i個(gè)隱藏層的期望矩陣HiEO、 實(shí)際矩陣HiAO和輸出權(quán)重βi。 最后, 整個(gè)網(wǎng)絡(luò)的結(jié)果可以表示為式(21)
f(x)=HKβK
(21)
根據(jù)計(jì)算所建立的模型流程如圖6所示。
圖6 模型流程圖
采用五點(diǎn)采樣法在鎮(zhèn)賚縣采集了62個(gè)鹽堿土樣本點(diǎn), 并將其按照國家標(biāo)準(zhǔn)進(jìn)行風(fēng)干、 研磨、 過篩、 溶解, 最后使用干燥法測得的相應(yīng)含鹽量數(shù)據(jù)如圖7所示。
圖7 樣本數(shù)據(jù)對應(yīng)的含鹽量情況
每個(gè)光譜反射率數(shù)據(jù)對應(yīng)一個(gè)土壤含鹽量, 根據(jù)土壤的含鹽量情況, 將其分為4組, 即[0, 5], [5, 10], [10, 15], [15, 30]。 圖8中的每條光譜曲線分別表示以上四組具有特定鹽含量的區(qū)間, 即區(qū)段內(nèi)所有相應(yīng)光譜反射率數(shù)據(jù)的平均反射率。
對于鹽堿地具體情況的直接分析研究中, 在該鹽堿地不同的位置和深度上采集樣本, 在經(jīng)過降維處理之后選擇了45個(gè)樣本作為訓(xùn)練集和校正集, 17個(gè)樣本作為測試集。 在上述算法的基礎(chǔ)上建立了基于隨機(jī)值改進(jìn)粒子群優(yōu)化算法(RVIPSO-MELM)優(yōu)化的多層極限學(xué)習(xí)機(jī)模型, 并且借助MATLAB平臺進(jìn)行仿真實(shí)驗(yàn), 在單層隱含層的條件下, 得到的模型準(zhǔn)確率如圖9所示。 根據(jù)仿真結(jié)果分析, 實(shí)際上, 由于樣本數(shù)量不夠豐富加上所使用的降維方法PCA具有一定的局限性, 無論使用的極限學(xué)習(xí)機(jī)具有幾層隱含層, 從圖10可以看出只要將模型訓(xùn)練好, 基本都能達(dá)到近95%的準(zhǔn)確率。
圖8 不同區(qū)段對應(yīng)的平均反射率
圖9 模型的迭代情況
圖10 蒙特卡羅時(shí)的模型準(zhǔn)確率情況
圖10所顯示的趨勢, 模型的收斂速度很快, 能夠在迭代次數(shù)不多的情況下就能夠穩(wěn)定在一個(gè)較好的準(zhǔn)確率。 由于首先進(jìn)行蒙特卡洛根據(jù)隨機(jī)數(shù)確定初值, 隨機(jī)生成2 000次, 隨機(jī)生成的數(shù)據(jù)對應(yīng)的模型準(zhǔn)確率情況如圖9所示, 可以看到模型的準(zhǔn)確率可以最高達(dá)到0.7以上, 保留并且與其他數(shù)據(jù)比較之后, 輸出該數(shù)據(jù), 并以此作為初值再來進(jìn)行IPSO優(yōu)化。 因此模型能夠在一開始就達(dá)到0.7以上的準(zhǔn)確率, 在此基礎(chǔ)上進(jìn)行穩(wěn)步提升。
考慮到粒子群算法用時(shí)長, 如果每一層都去套用RVIPSO算法進(jìn)行優(yōu)化權(quán)值和偏重, 可以保證在隱含層數(shù)足夠并且訓(xùn)練效果好的條件下有更高的準(zhǔn)確率, 但是可能會產(chǎn)生較多的時(shí)間損失, 經(jīng)濟(jì)效益不大, 因此選擇初始權(quán)值和偏重使用RVIPSO選取最優(yōu)值, 而后的計(jì)算選擇經(jīng)驗(yàn)函數(shù)進(jìn)行計(jì)算, 在保證較高準(zhǔn)確率的條件下能夠提高模型的速度, 在實(shí)際應(yīng)用方面經(jīng)濟(jì)效益更大, 兩種模型在不同的隱含層數(shù)下的仿真運(yùn)行時(shí)間對比如圖11。
圖11 兩種方法運(yùn)行時(shí)間對比圖
在兩個(gè)隱藏層的情況下, 使用兩個(gè)模型進(jìn)行仿真, 得到的準(zhǔn)確率如圖12所示。
圖12 兩種方法下模型準(zhǔn)確率對比圖
提出了一個(gè)RVIPSO-MELM模型, 該模型第一層的權(quán)值和偏重的選取使用了RVIPSO進(jìn)行優(yōu)化, 該模型能在提升模型性能的同時(shí)提高模型的優(yōu)化速度。 相比于IPSO-ELM, 增加了隨機(jī)值選優(yōu)的一個(gè)步驟, 以此為初值進(jìn)行啟發(fā)式搜索最優(yōu)值, 不僅在一定程度上保證了能達(dá)到全局最優(yōu)值, 還提高了模型的優(yōu)化速度, 不需要進(jìn)行長時(shí)間搜索就能得到最優(yōu)解。 而相比于RV-MELM, 所選取的啟發(fā)式算法結(jié)合蒙特卡洛的方法, 提高了模型精度, 不需要太多隱含層就能訓(xùn)練得到一個(gè)較好的結(jié)果, 更具有現(xiàn)實(shí)意義。 對于所研究的鹽堿地, 研究中建立的模型能夠達(dá)到一個(gè)需要的準(zhǔn)確率, 并且具有著優(yōu)化速度快的優(yōu)勢, 在一定程度上節(jié)省時(shí)間成本和經(jīng)濟(jì)成本, 貼近實(shí)際, 推廣性強(qiáng)。 進(jìn)一步的研究包括提取數(shù)據(jù)特征的方法改進(jìn)和優(yōu)化算法并進(jìn)一步提高模型準(zhǔn)確率。