本發(fā)明涉及化學計量學,尤其涉及一種基于位置編碼、光譜與神經(jīng)網(wǎng)絡的土壤定量建模方法。
背景技術:
1、化學計量學包含光譜預處理、波段選擇、特征提取、模型構建等步驟。其中,模型構建需要足夠的樣本,而每個樣本包含含量或類別與對應的光譜。光譜用以間接獲取含量或類別。光譜在不同波段具有不同的反射率或吸收率值,同時隨著波段的增加反射率或吸收率的變化具有連續(xù)性。機器學習模型對所有波段的光譜同時輸入與并行推理,把屬于序列數(shù)據(jù)的光譜看作獨立特征。這忽略了不同波段之間的關系,并沒有考慮波段信息即位置信息。不同波段的反射率或吸收率存在數(shù)值相同的可能性,而波段不同則反射率或吸收率所代表的含義不同。因此,引入波段的上下文信息與考慮不同波段的關系對提高機器學習模型的性能具有重要意義。
2、引入波段的上下文信息與考慮不同波段的關系可通過位置編碼體現(xiàn)出光譜作為序列數(shù)據(jù)的特性,并引入了不同波段之間的位置關系。雖然自然語言處理領域中已經(jīng)發(fā)展出多種位置編碼方法并應用于二維圖像等領域,但這些方法如何適用于光譜數(shù)據(jù)仍然存在挑戰(zhàn)。因此,如何借鑒自然語言的位置編碼算法實現(xiàn)光譜的位置編碼值得深入研究。
技術實現(xiàn)思路
1、本發(fā)明要解決的技術問題是針對上述現(xiàn)有技術的不足,提供一種基于位置編碼、光譜與神經(jīng)網(wǎng)絡的土壤定量建模方法,實現(xiàn)絕對位置編碼在光譜的應用,構建基于絕對位置編碼與反射率或吸收率的新型輻角,實現(xiàn)對深度隨機向量函數(shù)鏈神經(jīng)網(wǎng)絡(deep?randomvector?functional?link?network,drvfl)的隱含層與神經(jīng)元進行位置編碼。
2、為解決上述技術問題,本發(fā)明所采取的技術方案是:
3、一種基于位置編碼、光譜與神經(jīng)網(wǎng)絡的土壤定量建模方法,包括下列步驟:
4、步驟1:通過實地采集獲得土壤樣本,經(jīng)過光譜測定與含量測驗獲得土壤數(shù)據(jù)集;所述土壤數(shù)據(jù)集包括若干土壤樣本,每個土壤樣本包括光譜數(shù)據(jù)與含量數(shù)據(jù);
5、步驟2:基于土壤數(shù)據(jù)集,采用考慮含量的基于光譜矩陣與含量向量的三角函數(shù)式位置編碼通過光譜矩陣獲得位置矩陣,利用逐元素相加、逐元素相乘、旋轉式位置編碼方式獲得基于光譜矩陣與位置矩陣的融合矩陣,以經(jīng)過特征處理的融合矩陣為輸入構建基于隨機向量函數(shù)鏈神經(jīng)網(wǎng)絡的土壤定量模型,評價指標為均方根誤差rmse和決定系數(shù)r2;
6、步驟3:采用基于考慮含量的基于光譜矩陣與含量向量的三角函數(shù)式位置編碼通過光譜矩陣獲得的位置矩陣,以此獲得基于絕對位置與反射率或吸收率的新型輻角,以經(jīng)過特征處理的新型輻角為輸入構建基于隨機向量函數(shù)鏈神經(jīng)網(wǎng)絡的土壤定量模型,評價指標為均方根誤差rmse和決定系數(shù)r2;
7、步驟4:采用基于隱含層序號與神經(jīng)元序號的三角函數(shù)式位置編碼改進深度隨機向量函數(shù)鏈神經(jīng)網(wǎng)絡并構建土壤定量模型,輸入變量可以為步驟2的光譜矩陣、步驟2的基于光譜矩陣與位置矩陣的融合矩陣、步驟3的基于波段與反射率或吸收率的輻角、步驟3的新型輻角,評價指標為均方根誤差rmse和決定系數(shù)r2;
8、步驟5:從步驟2、步驟3與步驟4得到的若干個土壤定量模型中選擇出最優(yōu)的土壤定量模型;所述最優(yōu)的土壤定量模型為測試集的均方根誤差rmse最小且測試集的決定系數(shù)r2最大的土壤定量模型。
9、進一步地,所述步驟2和步驟3中,所述光譜矩陣,每行為單個樣本,每列為單個波段,行數(shù)為樣本數(shù),列數(shù)為波段數(shù),元素為光譜數(shù)據(jù);
10、所述位置矩陣,每行為單個樣本,每列為單個波段,行數(shù)為樣本數(shù),列數(shù)為波段數(shù),元素為位置數(shù)據(jù);
11、所述特征處理的方法采用屬于特征提取的偏最小二乘回歸;
12、所述隨機向量函數(shù)鏈神經(jīng)網(wǎng)絡,輸入層與隱含層之間的輸入權重與偏差隨機取值并保持固定,隱含層至輸出層的輸出權重通過穆爾-彭羅斯廣義逆求解,輸入層與輸出層之間存在直接鏈路。
13、進一步地,所述步驟2中,所述以經(jīng)過特征處理的融合矩陣為輸入構建基于隨機向量函數(shù)鏈神經(jīng)網(wǎng)絡的土壤定量模型具體為:
14、步驟a1:設置模型的運行環(huán)境、參數(shù);
15、步驟a2:通過特征處理方法處理基于光譜矩陣與位置矩陣的融合矩陣;
16、步驟a3:采用10折交叉驗證將經(jīng)過特征處理后的融合矩陣與土壤含量劃分為訓練集與測試集;
17、步驟a4:對訓練集與測試集中的經(jīng)過特征處理后的融合矩陣、土壤含量分別進行最大最小歸一化;
18、步驟a5:使用歸一化后的訓練集與測試集對隨機向量函數(shù)鏈神經(jīng)網(wǎng)絡進行訓練與測試,在10折交叉驗證的10次訓練過程后計算訓練集的均方根誤差rmse的均值和訓練集的決定系數(shù)r2的均值,在10折交叉驗證的10次測試過程后計算測試集的均方根誤差rmse的均值和測試集的決定系數(shù)r2的均值,分別得到訓練與測試完成的模型。
19、進一步地,所述步驟2中,所述考慮含量的基于光譜矩陣與含量向量的三角函數(shù)式位置編碼,通過波段自身的有序關系和基于含量排序的樣本的有序關系,基于樣本位置序號或樣本含量、波段序號或波段數(shù)值的組合獲得四種位置編碼方法,即基于樣本位置序號與波段序號的三角函數(shù)式位置編碼、基于樣本位置序號與波段數(shù)值的三角函數(shù)式位置編碼、基于樣本含量與波段序號的三角函數(shù)式位置編碼和基于樣本含量與波段數(shù)值的三角函數(shù)式位置編碼;所述含量排序為對含量進行從小到大的排序;
20、所述基于樣本位置序號與波段序號的三角函數(shù)式位置編碼是三角函數(shù)式位置編碼在化學計量學的應用推廣,其位置pe為:
21、
22、其中,2i表示偶數(shù)波段序號,2i+1表示奇數(shù)波段序號,其中波段序號為1,2,3,...,dband;dband為波段數(shù)量;pos為樣本的位置序號,pos=1,2,3,…,dsample;dsample為樣本數(shù)量;sin為正弦函數(shù),cos為余弦函數(shù);
23、所述基于樣本位置序號與波段數(shù)值的三角函數(shù)式位置編碼分為兩類方式;方式一是三角函數(shù)式位置編碼的改進版本,其位置pe為:
24、
25、其中,2i表示偶數(shù)波段序號,2i+1表示奇數(shù)波段序號,其中波段序號為1,2,3,...,dband;dband為波段數(shù)量;pos為樣本的位置序號,pos=1,2,3,…,dsample;dsample為樣本數(shù)量;bandmax為波段數(shù)值的最大值,band(2i)為波段序號為偶數(shù)的波段數(shù)值,band(2i+1)為波段序號為奇數(shù)的波段數(shù)值;
26、方式二考慮了光譜分辨率有時并不固定的情況,更真實地表現(xiàn)不同波段之間的位置關系,其位置pe為:
27、
28、其中,i表示波段序號,i=1,2,3,...,dband;dband為波段數(shù)量;band(i)表示波段序號為i的波段數(shù)值;2j表示波段數(shù)值為偶數(shù),2j+1表示波段數(shù)值為奇數(shù);pos為樣本的位置序號,pos=1,2,3,…,dsample;dsample為樣本數(shù)量;bandmax為波段的最大值;上述的方式二僅限于波段數(shù)值為整數(shù);
29、所述基于樣本含量與波段序號的三角函數(shù)式位置編碼,其位置pe為:
30、
31、其中,ypos是位置序號為pos的樣本的含量;
32、所述基于樣本含量與波段數(shù)值的三角函數(shù)式位置編碼分為兩類方式;方式一是三角函數(shù)式位置編碼的改進版本,其位置pe為:
33、
34、方式二考慮了光譜分辨率有時并不固定的情況,更真實地表現(xiàn)不同波段之間的位置關系,其位置pe為:
35、
36、上述的方式二僅限于波段數(shù)值為整數(shù)。
37、進一步地,所述步驟2中,所述旋轉式位置編碼方式具體為:
38、首先計算考慮含量的基于光譜矩陣與含量向量的三角函數(shù)式位置編碼,然后通過式(13)或式(14)融合位置矩陣與光譜矩陣;
39、
40、其中,rotaryx表示基于位置矩陣與光譜矩陣的融合矩陣;dsample為樣本數(shù),dband為波段數(shù)量;an為維度為dsample×1的列向量且表示第n個波段,n=1,2,3,...,dband;表示矩陣的逐元素對應相乘;2i表示偶數(shù)波段序號,2i+1表示奇數(shù)波段序號,其中波段序號為1,2,3,...,dband;pe(2i)表示波段序號為偶數(shù)所對應的位置,pe(2i+1)表示波段序號為奇數(shù)所對應的位置,通過考慮含量的基于光譜矩陣與含量向量的三角函數(shù)式位置編碼獲??;
41、考慮含量的基于光譜矩陣與含量向量的三角函數(shù)式位置編碼的方式二的旋轉式位置編碼方式并不適用式(13),其旋轉式位置編碼方式為式(14);
42、
43、其中,2j表示波段數(shù)值為偶數(shù),2j+1表示波段數(shù)值為奇數(shù);pe(2j)表示波段數(shù)值為偶數(shù)所對應的位置,pe(2j+1)表示波段數(shù)值為奇數(shù)所對應的位置,通過考慮含量的基于光譜矩陣與含量向量的三角函數(shù)式位置編碼的方式二獲取。
44、進一步地,所述步驟3中,所述以經(jīng)過特征處理的新型輻角為輸入構建基于隨機向量函數(shù)鏈神經(jīng)網(wǎng)絡的土壤定量模型具體為:
45、步驟b1:設置模型的運行環(huán)境、參數(shù);
46、步驟b2:通過特征處理方法處理新型輻角;
47、步驟b3:采用10折交叉驗證將經(jīng)過特征處理后的新型輻角與土壤含量劃分為訓練集與測試集;
48、步驟b4:對訓練集與測試集中的經(jīng)過特征處理后的新型輻角、土壤含量分別進行最大最小歸一化;
49、步驟b5:使用歸一化后的訓練集與測試集對隨機向量函數(shù)鏈神經(jīng)網(wǎng)絡進行訓練與測試,在10折交叉驗證的10次訓練過程后計算訓練集的均方根誤差rmse的均值和訓練集的決定系數(shù)r2的均值,在10折交叉驗證的10次測試過程后計算測試集的均方根誤差rmse的均值和測試集的決定系數(shù)r2的均值,分別得到訓練與測試完成的模型。
50、進一步地,所述步驟4中的深度隨機向量函數(shù)鏈神經(jīng)網(wǎng)絡,是隨機向量函數(shù)鏈神經(jīng)網(wǎng)絡的深層結構,輸入層與隱含層之間的輸入權重與偏差隨機取值并保持固定,不同隱含層之間的權重與偏差隨機取值并保持固定,輸入特征與所有隱含層的輸出特征進行拼接,輸出權重通過穆爾-彭羅斯廣義逆求解,不同隱含層的神經(jīng)元數(shù)是相同的。
51、進一步地,所述步驟4中,所述基于隱含層序號與神經(jīng)元序號的三角函數(shù)式位置編碼具體為:
52、借鑒由樣本與波段組成的光譜矩陣,構建由隱含層與神經(jīng)元組成的矩陣,實現(xiàn)不同隱含層的不同神經(jīng)元之間的位置關聯(lián);由于隱含層的層數(shù)與神經(jīng)元數(shù)為整型數(shù)值,采用基于隱含層序號與神經(jīng)元序號的三角函數(shù)式位置編碼,其位置pe為:
53、
54、其中,2m表示偶數(shù)神經(jīng)元序號,2m+1表示奇數(shù)神經(jīng)元序號,其中神經(jīng)元序號為1,2,3,...,dneuron;dneuron為神經(jīng)元數(shù);l為隱含層的位置序號,l=1,2,3,…,dlayer;dlayer為隱含層數(shù);sin為正弦函數(shù),cos為余弦函數(shù)。
55、進一步地,所述步驟4中,所述采用基于隱含層序號與神經(jīng)元序號的三角函數(shù)式位置編碼改進深度隨機向量函數(shù)鏈神經(jīng)網(wǎng)絡而構建的土壤定量模型具體為:
56、步驟c1:設置模型的運行環(huán)境、參數(shù);
57、步驟c2:通過特征處理方法處理輸入變量;所述特征處理方法采用屬于特征提取的偏最小二乘回歸;所述輸入變量為步驟2的光譜矩陣、步驟2的基于光譜矩陣與位置矩陣的融合矩陣、步驟3的基于波段與反射率或吸收率的輻角、步驟3的新型輻角;
58、步驟c3:采用10折交叉驗證將經(jīng)過特征處理后的輸入變量與土壤含量劃分為訓練集與測試集;
59、步驟c4:對訓練集與測試集中的經(jīng)過特征處理后的輸入變量、土壤含量分別進行最大最小歸一化;
60、步驟c5:使用歸一化后的訓練集與測試集對深度隨機向量函數(shù)鏈神經(jīng)網(wǎng)絡進行訓練與測試,在10折交叉驗證的10次訓練過程后計算訓練集的均方根誤差rmse的均值和訓練集的決定系數(shù)r2的均值,在10折交叉驗證的10次測試過程后計算測試集的均方根誤差rmse的均值和測試集的決定系數(shù)r2的均值,分別得到訓練與測試完成的模型。
61、采用上述技術方案所產(chǎn)生的有益效果在于:本發(fā)明提供的基于位置編碼、光譜與神經(jīng)網(wǎng)絡的土壤定量建模方法,提出了基于光譜矩陣與含量向量的三角函數(shù)式位置編碼,將絕對位置編碼應用于光譜學,基于樣本位置序號或樣本含量、波段序號或波段數(shù)值的組合獲得四種位置編碼方法,不同波段的位置關系基于光譜連續(xù)性而獲得而不同樣本的位置關系基于含量排序而獲得;位置矩陣與光譜矩陣的融合方式包括逐元素相加、逐元素相乘與旋轉式位置編碼方式;本發(fā)明基于絕對位置編碼與反射率或吸收率構建新型輻角,作為隨機向量函數(shù)鏈神經(jīng)網(wǎng)絡模型的輸入;本發(fā)明利用基于隱含層序號與神經(jīng)元序號的三角函數(shù)式位置編碼實現(xiàn)了隱含層與神經(jīng)元的位置編碼;本發(fā)明通過利用光譜的連續(xù)性與位置關系顯著提升了模型性能。