李國厚, 李澤旭, 金松林, 趙文義, 潘細(xì)朋, 梁 政, 秦 莉, 張衛(wèi)東*
1. 河南科技學(xué)院信息工程學(xué)院, 河南 新鄉(xiāng) 453003
2. 北京郵電大學(xué)人工智能學(xué)院, 北京 100876
3. 桂林電子科技大學(xué)計(jì)算機(jī)與信息安全學(xué)院, 廣西 桂林 541004
4. 安徽大學(xué)互聯(lián)網(wǎng)學(xué)院, 安徽 合肥 230039
5. 寧波大學(xué)信息科學(xué)與工程學(xué)院, 浙江 寧波 315211
與可見光圖像相比, 高光譜成像技術(shù)不僅能夠較好地反映種子的形狀和大小, 還能夠反映樣本內(nèi)部的化學(xué)成分差異。 同時(shí), 機(jī)器學(xué)習(xí)和深度學(xué)習(xí)在計(jì)算機(jī)視覺領(lǐng)域廣泛應(yīng)用于識別、 分隔、 檢測等[1]。 因此可利用該技術(shù)輔助機(jī)器學(xué)習(xí)或深度學(xué)習(xí)進(jìn)行種子的快速、 高效及無損鑒別[2-4]。 高光譜成像技術(shù)能夠捕獲小麥種子的光譜和空間信息, 深度學(xué)習(xí)能夠充分挖掘和利用高光譜圖像內(nèi)部的像元依賴關(guān)系, 進(jìn)而實(shí)現(xiàn)種子的鑒別。
傳統(tǒng)的高光譜圖像鑒別方法主要以提取數(shù)據(jù)的光譜特征為主, 但受天氣、 光強(qiáng)、 噪聲等因素干擾, 所捕獲的光譜信息和高光譜圖像之間存在非線性, 限制了傳統(tǒng)方法的鑒別能力。 Wei等[5]將隨機(jī)子空間線性判別和高光譜技術(shù)應(yīng)用于大豆品種的無損鑒別, 但其鑒別性能不穩(wěn)定。 朱啟兵等[6]利用支持向量數(shù)據(jù)描述方法構(gòu)建高光譜玉米鑒別模型, 分類精度達(dá)到92.28%, 并解決了傳統(tǒng)分類器對新類別樣本的錯(cuò)分問題。 Mahesh等[7]將線性判別分析和二次判別方法結(jié)合起來對小麥種子高光譜圖像進(jìn)行鑒別, 但小樣本嚴(yán)重制約該模型的鑒別能力。 總的來說, 不足的樣本和有限的特征限制了傳統(tǒng)鑒別方法的性能。
基于機(jī)器學(xué)習(xí)的高光譜圖像分類方法依據(jù)光譜特性手動或半自動地提取特征。 例如, Fabiyi等[8]提出一種基于隨機(jī)森林方法的水稻種子分類器, 將RGB和高光譜水稻圖像相結(jié)合, 取得良好的分類效果。 Miao等[9]將流形學(xué)習(xí)算法中的t分布隨機(jī)鄰域嵌入機(jī)制引入到高光譜圖像分類中, 對8個(gè)品種糯玉米種子的分類精度達(dá)到97.5%。 Wang等[10]采用高光譜成像技術(shù)對四種大豆品種進(jìn)行分類, 并建立基于全波長的支持向量機(jī)分類模型, 分類準(zhǔn)確率為95.19%。 Sivakumar等[11]在近紅外和短波紅外區(qū)域使用高光譜成像技術(shù)采集豆類粉的光譜數(shù)據(jù), 并使用最小二乘判別分析對其進(jìn)行鑒別, 分類模型精度可達(dá)95%。 Shao等[12]采用高光譜成像技術(shù)對蜂蜜建立了純蜂蜜和摻假蜂蜜的樣本分析模型, 并使用支持向量機(jī)進(jìn)行分類, 但分類性能欠佳。 張航等[13]使用支持向量機(jī)對小麥種子高光譜圖像進(jìn)行分類, 但隨著小麥種子的品種增多, 分類精度不斷下降。 上述研究表明, 傳統(tǒng)方法和機(jī)器學(xué)習(xí)方法都過于依賴光譜信息, 而高光譜圖像存儲具有“同譜異物性”和“同物異譜性”, 想要準(zhǔn)確鑒別變得頗為不易。
基于深度學(xué)習(xí)的方法結(jié)合高光譜技術(shù)逐漸應(yīng)用到種子鑒別領(lǐng)域。 例如: Nie等[14]使用深度卷積神經(jīng)網(wǎng)絡(luò)建立了雜交種子品種分類模型, 六種雜交黃秋葵種子和雜交絲瓜種子的分類精度達(dá)到95%。 Zhao等[15]使用一維和二維卷積對小麥種子的高光譜圖像進(jìn)行分類, 分類精度為95.65%。 Wu等[16]提出一種帶加權(quán)損失的深度卷積神經(jīng)網(wǎng)絡(luò), 根據(jù)老化時(shí)間將高光譜成像的水稻種子分為三類, 為每一類分配適當(dāng)?shù)臋?quán)重, 獲得的最高精度為97.69%。 Gai等[17]提出一種基于一維卷積神經(jīng)網(wǎng)絡(luò)的光譜分析模型對具有瘀傷蘋果的高光譜圖像進(jìn)行鑒別, 精度可達(dá)95.79%。 Liu等[18]提出一種基于改進(jìn)ResNet18高光譜圖像的大豆品種鑒別方法, 分類精度為97.36%。 Hao等[19]對枸杞的高光譜圖像和紋理數(shù)據(jù)進(jìn)行融合, 通過選取最佳波長構(gòu)建不同區(qū)域的枸杞光譜鑒別模型, 使用二維卷積神經(jīng)網(wǎng)絡(luò)的分類精度可達(dá)97.34%。 由此可見, 深度學(xué)習(xí)相較于傳統(tǒng)方法和機(jī)器學(xué)習(xí), 具有非常明顯的優(yōu)勢, 能夠較好地解決非線性、 小樣本和過擬合等問題。
深度學(xué)習(xí)是一種對數(shù)據(jù)進(jìn)行表征學(xué)習(xí)的方法, 一般通過無監(jiān)督或半監(jiān)督的方式學(xué)習(xí)數(shù)據(jù)的特征, 用來取代人工獲取的特征。 卷積神經(jīng)網(wǎng)絡(luò)具備較強(qiáng)的特征提取和模型表達(dá)能力, 又是最典型的深度學(xué)習(xí)模型之一, 因此本文以不同品種的小麥高光譜圖像為研究對象, 基于卷積神經(jīng)網(wǎng)絡(luò)提出一種基于注意力機(jī)制的三維卷積和二維卷積混合卷積網(wǎng)絡(luò)模型(attention-based mix convolutional neural network, AMCNN)。 該網(wǎng)絡(luò)模型中的三維卷積可以提取空間和光譜信息, 但是會增加計(jì)算復(fù)雜度, 而二維卷積能夠提取空間信息和圖像紋理信息, 兩者的結(jié)合能夠加強(qiáng)空間和光譜之間的信息融合, 減少復(fù)雜度和算法運(yùn)行時(shí)間。 加入注意力機(jī)制又能夠提取圖像紋理信息, 提高了鑒別的準(zhǔn)確性。 試驗(yàn)結(jié)果表明, 本文提出的方法具有良好的鑒別性能, 為小麥品種鑒別及分類提供了一種新的思路。
AMCNN的網(wǎng)絡(luò)框架, 由三維卷積層、 二維卷積層和全連接層組成, 如圖1所示。 (1)首先對數(shù)據(jù)進(jìn)行預(yù)處理, 即感興趣區(qū)域提取、 主成分分析降維和多元散射校正, 然后將處理好的數(shù)據(jù)輸入AMCNN模型。 (2)AMCNN模型的三維卷積層中包括三個(gè)三維卷積, 每次卷積運(yùn)算后添加批次規(guī)則化層(batch normalization, BN), 以減少過擬合并加速收斂。 (3)AMCNN模型的二維卷積層中包括三個(gè)二維卷積, 在每個(gè)卷積操作后引入注意力機(jī)制, 它會沿著通道維度和空間維度推斷注意力圖, 然后將注意力圖乘以輸入特征圖進(jìn)行自適應(yīng)特征優(yōu)化。 Leaky ReLU用于三維卷積層和二維卷積層模塊的激活函數(shù), 防止神經(jīng)元在輸入為負(fù)時(shí)無效, 充分利用三維和二維卷積模塊的自動學(xué)習(xí)特征能力。 (4)AMCNN模型的全連接層使用LogSoftmax作為模型最后一層的輸出, 將原本由CrossEntropy Loss損失函數(shù)處理的Log工作提到預(yù)測概率分布中, 跳過了中間的存儲步驟, 防止中間數(shù)值的下溢出, 使得數(shù)據(jù)更加穩(wěn)定。
圖1 AMCNN框架示意圖
傳統(tǒng)的二維卷積模塊中, 卷積僅應(yīng)用于空間維度, 覆蓋前一層的所有特征圖, 以計(jì)算二維鑒別特征圖。 但是高光譜圖像需要捕獲多個(gè)頻帶中編碼的光譜信息及空間信息。 二維卷積無法處理光譜信息。 引入的三維卷積可以從高光譜圖像中提取不同光譜間的特征關(guān)系, 三維卷積模塊首先用于人類行為識別[20], 能夠在空間和時(shí)間維度中同時(shí)捕捉特征, 但增加了計(jì)算代價(jià)。
(1)
(2)
參數(shù)詳情如式(1)。
卷積注意力模塊(convolutional block attention model, CBAM)[21]是一種簡單高效的用于前饋神經(jīng)網(wǎng)絡(luò)的注意力模塊, 也是一個(gè)輕量級通用模塊, 所以它可以嵌入任何卷積架構(gòu)中, 而無需考慮模塊損失并進(jìn)行端到端訓(xùn)練。 主要網(wǎng)絡(luò)架構(gòu)是由一個(gè)通道注意力模塊和一個(gè)空間注意力模塊組成, 如圖2所示。
圖2 CBAM模塊示意圖
通道注意力機(jī)制是在空間維度上壓縮特征圖以得到一維矢量, 然后對其進(jìn)行操作, 不僅考慮平均池化(average pool), 還考慮最大池化(max pool), 發(fā)送聚合特征映射的空間信息到共享網(wǎng)絡(luò), 然后壓縮輸入特征圖的空間維數(shù), 最后將MLP輸出的特征進(jìn)行基于element-wise的加和操作, 再經(jīng)過sigmoid激活操作以生成通道注意力圖。 平均池化對特征圖上的各像素點(diǎn)都有反饋。 在進(jìn)行梯度反向傳播計(jì)算時(shí), 最大值池化僅對特征圖中響應(yīng)最大的地方有梯度的反饋, 通道注意力機(jī)制的表達(dá)式見式(3)
Mc(F)=σ(MLP(AvgPool(F))+MLP(MaxPool(F)))
(3)
空間注意力機(jī)制是壓縮通道中的特征圖, 通道維度上分別進(jìn)行平均池化和最大池化。 將生成的通道注意力圖和輸入特征圖做乘法操作, 進(jìn)行最大池化操作以從通道上提取最大值; 進(jìn)行平均池化操作的目的是提取通道平均值。 最大池化和平均池化均以高乘以寬的次數(shù)進(jìn)行提取, 然后對提取的特征圖進(jìn)行融合獲得一個(gè)2通道特征映射。 空間注意力機(jī)制的表達(dá)式見式(4)
Ms(F)=σ(f3×3([AvgPool(F); MaxPool(F)]))
(4)
式(4)中,σ為sigmoid操作, 3×3表示卷積核的大小。
使用交叉熵?fù)p失函數(shù)CrossEntropy Loss作為損失函數(shù), 用于評估實(shí)際輸出與期望輸出之間的接近程度。 交叉熵原本是信息論中的概念, 用來估算平均編碼的長度。 在深度學(xué)習(xí)中, 一般作為多分類問題的損失函數(shù), 交叉熵刻畫的是兩個(gè)概率分布的距離, 交叉熵值越小, 兩個(gè)概率分布越接近。 對于給定的兩個(gè)概率分布p、q, 其表達(dá)如式(5)
(5)
式(5)中,p(xi)表示正確分布,q(xi)表示預(yù)測分布。 實(shí)際上交叉熵度量的是預(yù)測值和真實(shí)標(biāo)簽值之間的信息損失, 其與KL散度的表達(dá)式見式(6)
=-H(p)+H(p,q)
(6)
顯然, 只有當(dāng)q(xi)=p(xi)時(shí),DKL(p‖q)有最小值, 這意味著預(yù)測的結(jié)果越接近越好。
高光譜圖像采集系統(tǒng)如圖3所示, 采集設(shè)備是SOC710便攜式可見/近紅外成像光譜儀, 其光譜范圍為400~1 000 nm, 光譜分辨率為4.687 5 nm, 共128個(gè)波段, 圖像像素為696×520。 原始高光譜圖像采用ENVI 5.3軟件進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換, 并截取感興趣區(qū)域。
圖3 高光譜圖像采集系統(tǒng)示意圖
實(shí)驗(yàn)采用的小麥種子是從河南、 山東兩省選取出的8類優(yōu)質(zhì)小麥, 如表1所示。 首先, 收集圖像數(shù)據(jù)。 為了確保每個(gè)樣本上光譜數(shù)據(jù)能夠最好地展示出來, 采集了每個(gè)小麥種子的背面(小麥種子的凸面)和正面(小麥種子的凹面)數(shù)據(jù)。 從每個(gè)小麥種子品種中采集60個(gè)樣本, 每個(gè)品種樣本共采集120張圖片。 選取了8個(gè)品種的小麥種子, 共獲得960個(gè)高光譜圖像數(shù)據(jù), 尺寸為696×520×128, 如圖4所示。
表1 小麥品種信息表
圖4 小麥種子部分光譜波段示意圖
計(jì)算機(jī)具體配置為AMD Ryzen 7 3700X 8-Core CPU、 16GB運(yùn)行內(nèi)存、 NVIDIA Geforce GTX 1650 super顯卡、 4GB顯存。 軟件環(huán)境為在64位Windows 11下的Python3.6和torch-gpu-1.10.1。
訓(xùn)練模型時(shí), 為了防止模型過擬合, 全連接層使用Dropout, 即在全連接層中的節(jié)點(diǎn)有20%的概率為0。 使用Adam優(yōu)化器, 基于分類結(jié)果選擇了最優(yōu)學(xué)習(xí)率0.01, 并使用指數(shù)衰減學(xué)習(xí)率, 以在后期獲取更加穩(wěn)定的模型。 采用批量訓(xùn)練的方法, 設(shè)置批量大小為36。 經(jīng)過120次迭代后, 損失率趨于穩(wěn)定。 如圖5所示, 模型訓(xùn)練中的收斂曲線在前30次迭代中迅速下降; 經(jīng)過80次迭代后, 模型的損失值穩(wěn)定且趨近于0, 表現(xiàn)出良好的性能和穩(wěn)定性。
圖5 AMCNN的收斂曲線
按照“訓(xùn)練集∶測試集=9∶1”的原則進(jìn)行隨機(jī)劃分, 選取support vector machine (SVM)[22]、 K-nearest neighbor (KNN)[23]、 stochastic gradient descent (SGD)[24]、 random forest (RF)[25]四類機(jī)器學(xué)習(xí)模型和dual convolutional neural network (DCNN)[26]、 residual networks (ResNet)[27]、 hybrid spectral net (HybridSN)[28]三類深度學(xué)習(xí)模型, 共7類作為對比模型, 評價(jià)指標(biāo)使用F1-sorce、 Recall、 Precision和Accuracy的加權(quán)平均來進(jìn)行驗(yàn)證。 Accuracy為分類結(jié)果正確的樣本(包括正負(fù)樣本)占所有樣本的比例。 Precision表示分類出的正確的正樣本占所有分類結(jié)果為正樣本的比例。 Recall表示分類結(jié)果正確的正樣本占所有正樣本的比例。 F1-sorce由Precision和Recall共同決定。 以上指標(biāo)的值越高, 模型分類效果越好。 分類結(jié)果如表2所示。
表2 AMCNN模型與其他分類模型分類結(jié)果
整體而言, AMCNN網(wǎng)絡(luò)在所有指標(biāo)上均顯著優(yōu)于其他模型, AMCNN網(wǎng)絡(luò)的Accuracy為97.92%, 比機(jī)器學(xué)習(xí)的Accuracy高約1.04%~3.13%, 比其他深度學(xué)習(xí)模型的Accuracy高約2.08%~3.13%, 改善了小麥高光譜分類的效果。 而且AMCNN算法表現(xiàn)也很突出, 整體結(jié)果可以看出, 在樣本比較少時(shí), 由于深度學(xué)習(xí)依賴于大量數(shù)據(jù)集, 在整個(gè)測試集上表現(xiàn)并不突出, 而機(jī)器學(xué)習(xí)能夠在這種情況下表現(xiàn)出其優(yōu)勢, 本文提出的AMCNN由于綜合了高光譜的空間和光譜信息, 能夠在訓(xùn)練集數(shù)量較少的情況下表現(xiàn)出較高的分類準(zhǔn)確率。
AMCNN網(wǎng)絡(luò)模型測試集樣本分類的混淆矩陣如圖6所示, 分析能夠得出, AMCNN網(wǎng)絡(luò)模型對8種小麥種子的品種鑒別準(zhǔn)確率均超過了90%, 其中鄭麥101、 鄭麥366、 百農(nóng)AK58、 濟(jì)麥22、 周麥28的鑒別準(zhǔn)確率最高為100%, 原因是這5個(gè)品種的小麥種子與其他品種的小麥種子在親緣關(guān)系上無交集, 因而特征存在較大差異, 易于鑒別。 鄭麥7698和百農(nóng)207的鑒別較差, 且與中育9307三者之間存在錯(cuò)誤鑒別樣本, 原因是這三者不僅產(chǎn)地相同, 且都是由周麥16雜交獲得。
圖6 測試集中AMCNN模型的分類混淆矩陣
為證明本方法中每個(gè)模塊的有效性, 對提出的網(wǎng)絡(luò)進(jìn)行消融實(shí)驗(yàn), 包括無注意力模塊(-w/o AM)、 無BN層(-w/o BN)以及無三維卷積(-w/o 3DCNN)和無二維卷積(-w/o 2DCNN)。 評價(jià)指標(biāo)包括F1-sorce、 Recall、 Precision和Accuracy的加權(quán)平均。 每次修改一項(xiàng), 其余參數(shù)設(shè)置與原網(wǎng)絡(luò)保持一致, 以進(jìn)行公平比較, 消融結(jié)果如表3所示。
表3 消融實(shí)驗(yàn)
相較于無二維卷積的模型, 無三維卷積的模型分類準(zhǔn)確率下降了5.21%。 這是由于光譜的“同譜異物性”和“同物異譜性”造成的。 實(shí)驗(yàn)結(jié)果表明, 三維卷積的引入改進(jìn)了模型, 提高了分類精度。 這是因?yàn)楦吖庾V圖像具有很強(qiáng)的波段相關(guān)性, 通過在不同特征圖上的滑動卷積運(yùn)算, 可以更好地提取每個(gè)圖像的特征, 有助于提高分類模型的精度。 無BN層和無注意力模塊的分類準(zhǔn)確率相較于原網(wǎng)絡(luò)分別下降了2.08%和1.04%, 說明BN層和注意力模塊影響著網(wǎng)絡(luò), 能有效提高分類效果。
提出了一種AMCNN模型, 利用高光譜成像技術(shù)對小麥種子進(jìn)行無損鑒別, 結(jié)合三維卷積和二維卷積, 引入注意力機(jī)制模塊, 能夠在樣本數(shù)量較小的情況下進(jìn)行分類, 且準(zhǔn)確率能達(dá)到97.92%, 在7類對比實(shí)驗(yàn)中取得了較好的結(jié)果, 證明了本文提出的網(wǎng)絡(luò)模型的可行性和有效性。
盡管本文提出的網(wǎng)絡(luò)可以提高小樣本數(shù)據(jù)的分類精度, 但在對一些多樣化種子進(jìn)行分類時(shí), 由于年份、 產(chǎn)地不同, 可能會導(dǎo)致模型泛化能力不足。 近年來, 遷移學(xué)習(xí)技術(shù)用于改善深度神經(jīng)網(wǎng)絡(luò)模型泛化能力, 但在基于深度卷積神經(jīng)網(wǎng)絡(luò)的高光譜種子品種鑒定領(lǐng)域仍然有待試驗(yàn), 需要進(jìn)一步進(jìn)行研究。 在未來的工作中, 我們將擴(kuò)大小麥種子的種類和數(shù)量, 以驗(yàn)證我們的AMCNN模型。