国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于卷積神經(jīng)網(wǎng)絡(luò)的農(nóng)作物病蟲害檢測研究

2022-12-11 13:33白雪松吳建平景文超何旭鑫
關(guān)鍵詞:殘差農(nóng)作物注意力

白雪松,吳建平,2,3,景文超,何旭鑫,余 詠

(1.云南大學(xué) 信息學(xué)院,云南 昆明 650504;2.云南省電子計(jì)算中心,云南 昆明 650223;3.云南省高校數(shù)字媒體技術(shù)重點(diǎn)實(shí)驗(yàn)室,云南 昆明 650223)

0 引 言

農(nóng)作物病蟲害嚴(yán)重影響農(nóng)產(chǎn)品的質(zhì)量和產(chǎn)量,給農(nóng)業(yè)生產(chǎn)帶來了重大損失。傳統(tǒng)的農(nóng)作物病蟲害檢測主要是通過現(xiàn)場檢測或?qū)嶒?yàn)室化學(xué)分析,對每一株農(nóng)作物進(jìn)行檢查使得農(nóng)技人員面臨著大量的重復(fù)性工作,不僅費(fèi)時(shí)費(fèi)力而且要求檢測人員具備該領(lǐng)域的專業(yè)知識及豐富的經(jīng)驗(yàn)[1]。此外,受個(gè)人主觀因素影響可能無法診斷某些具有高變異性的病蟲害,而導(dǎo)致錯(cuò)誤的結(jié)論和治療方案[2]。

人工智能(Artificial Intelligence,AI)技術(shù)在農(nóng)業(yè)檢測領(lǐng)域處理復(fù)雜問題時(shí)表現(xiàn)優(yōu)秀。卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)在國內(nèi)外農(nóng)作物病蟲害檢測研究中已形成熱點(diǎn)。Sladojevic等[3]最早采用AlexNet神經(jīng)網(wǎng)絡(luò)檢測農(nóng)作物病蟲害,并采用多種訓(xùn)練方法提高模型的泛化能力。Liu等[4]將AlexNet網(wǎng)絡(luò)和GoogLeNet網(wǎng)絡(luò)融合成一種新模型,新模型經(jīng)過訓(xùn)練可以有效地識別4種不同病蟲害的蘋果葉病。Too等[5]在農(nóng)作物病蟲害檢測實(shí)驗(yàn)中對各類模型進(jìn)行評估訓(xùn)練,包括ResNet50、VGG16、InceptionV4等主流網(wǎng)絡(luò)。王東方等[6]對SE-ResNeXt-101模型進(jìn)行改進(jìn),并結(jié)合遷移學(xué)習(xí)提出了TL-SE-ResNeXt-101模型,在試驗(yàn)中取得較好的識別效果。劉陽等[7]優(yōu)化輕量級網(wǎng)絡(luò)SqueezeNet的部分結(jié)構(gòu),在不降低識別精度的情況下,大大減少了模型計(jì)算量和參數(shù)存儲量。樊湘鵬等[8]建立了基于遷移學(xué)習(xí)的VGG16改進(jìn)模型,對網(wǎng)絡(luò)部分結(jié)構(gòu)進(jìn)行優(yōu)化訓(xùn)練,最后將VGG16改進(jìn)模型移植到手機(jī)端。

上述研究工作的識別效果非常不錯(cuò),在農(nóng)作物病蟲害識別任務(wù)中取得較大進(jìn)展,但依舊存在一些問題亟待解決。首先是數(shù)據(jù)樣本不足導(dǎo)致某些具有變異性的疾病經(jīng)常與相似疾病混淆,導(dǎo)致分類準(zhǔn)確率降低。其次,大多數(shù)樣本都是在受限環(huán)境下采集的,沒有考慮到復(fù)雜環(huán)境對樣本的干擾。此外,相當(dāng)多的研究采用模型融合的方法,大大增加了模型參數(shù)量及計(jì)算量。目前,大部分研究者采用傳統(tǒng)數(shù)據(jù)增強(qiáng)技術(shù)進(jìn)行處理,但沒有能對圖片進(jìn)行角度、紋理等語義變換,效果受限。雖然文獻(xiàn)[9]采用生成對抗網(wǎng)絡(luò)(Generative Adversarial Net,GAN)來擴(kuò)增數(shù)據(jù)集,但訓(xùn)練GAN增加了研究人員的工作量。

針對上述問題,該文提出了一種基于隱式語義數(shù)據(jù)增強(qiáng)算法的殘差網(wǎng)絡(luò)優(yōu)化模型。綜合考慮性能、參數(shù)數(shù)量、計(jì)算復(fù)雜度等因素,選擇Res2Net50網(wǎng)絡(luò)進(jìn)行改進(jìn)優(yōu)化。訓(xùn)練之前,對樣本數(shù)據(jù)進(jìn)行傳統(tǒng)數(shù)據(jù)增強(qiáng)。為提取數(shù)據(jù)圖像的關(guān)鍵特征信息,在網(wǎng)絡(luò)中添加混合注意力模塊。在訓(xùn)練過程中,使用隱式語義數(shù)據(jù)增強(qiáng)算法進(jìn)行網(wǎng)絡(luò)優(yōu)化。

1 相關(guān)網(wǎng)絡(luò)模型

1.1 Res2Net50殘差模塊

網(wǎng)絡(luò)層次加深會增強(qiáng)網(wǎng)絡(luò)的特征提取能力。隨著網(wǎng)絡(luò)深度增加到一定程度,網(wǎng)絡(luò)可能會出現(xiàn)退化現(xiàn)象。在2015年,何愷明等[10]提出了性能表現(xiàn)優(yōu)越的殘差網(wǎng)絡(luò)(Residual Network,ResNet),利用恒等映射的思想創(chuàng)建殘差塊,避免發(fā)生網(wǎng)絡(luò)退化現(xiàn)象。最近,Gao等[11]提出了新的多尺度網(wǎng)絡(luò)架構(gòu)(A New Multi-scale Backbone Architecture,Res2Net),在殘差網(wǎng)絡(luò)的基礎(chǔ)上使用分層、層疊的特征組卷積(scale)取代原來的3×3卷積,增加每一層的感受野,提高了網(wǎng)絡(luò)的特征表達(dá)能力。

該文采用Res2Net50網(wǎng)絡(luò)模型,用4組scale架構(gòu)替換一般的3×3卷積,以模型遷移的方式加載網(wǎng)絡(luò)權(quán)重,修改全連接層分類數(shù)目。此外,Res2Net50網(wǎng)絡(luò)殘差塊中加入混合注意力模塊后,能在多個(gè)通道提取特征再合并輸出特征,結(jié)合通道和空間維度自適應(yīng)調(diào)整特征圖,保留關(guān)鍵特征?;旌献⒁饬δK將在1.3節(jié)進(jìn)行詳細(xì)介紹。

改進(jìn)后的殘差塊結(jié)構(gòu)如圖1所示。

1.2 隱式語義數(shù)據(jù)增強(qiáng)算法

農(nóng)作物病蟲害數(shù)據(jù)集的樣本種類分布不均勻且圖像在獲取時(shí)受到拍攝角度、光照和其他因素的影響。為了緩解樣本不平衡問題,避免出現(xiàn)網(wǎng)絡(luò)過擬合現(xiàn)象,對數(shù)據(jù)集進(jìn)行數(shù)據(jù)增強(qiáng)是一種簡單有效的方法。傳統(tǒng)數(shù)據(jù)增強(qiáng)方法雖然在一定程度提高了模型魯棒性,但只能對圖像進(jìn)行像素空間的變換。

為了在傳統(tǒng)數(shù)據(jù)增強(qiáng)的基礎(chǔ)上實(shí)現(xiàn)圖像的語義增強(qiáng),該文采用一種新型的損失函數(shù)——隱式語義數(shù)據(jù)增強(qiáng)算法(Implicit Semantic Data Augmentation,ISDA)[12]。ISDA算法在交叉熵?fù)p失函數(shù)的基礎(chǔ)上優(yōu)化,通過動態(tài)估計(jì)樣本的協(xié)方差矩陣來進(jìn)行語義增強(qiáng)。

協(xié)方差矩陣通過特征的空間位置捕獲樣本的差異信息[13],選擇有意義的語義方向進(jìn)行增強(qiáng)。語義信息估計(jì)方法如下:

(1)

(2)

(3)

此外,對交叉熵?fù)p失函數(shù)進(jìn)行優(yōu)化得到計(jì)算上限,避免因語義增強(qiáng)而造成的計(jì)算浪費(fèi)。優(yōu)化后的交叉熵?fù)p失函數(shù)如下:

(4)

1.3 注意力機(jī)制

如圖2所示,雖然農(nóng)作物的病蟲害特征有不同之處,但某些病害特征卻極為相似,極易造成誤判。為了更好地區(qū)分農(nóng)作物病蟲害,該文在網(wǎng)絡(luò)中加入混合注意力機(jī)制獲取圖像的關(guān)鍵信息。Woo等[14]提出卷積塊注意力模塊(Convolutional Block Attention Module,CBAM),混合通道維度和空間維度計(jì)算注意力權(quán)重,然后調(diào)整輸入特征圖,保留加強(qiáng)圖像的關(guān)鍵特征。CBAM-Res2Net就是在Res2Net網(wǎng)絡(luò)殘差塊中加入CBAM模塊。

圖2 病蟲害圖片

1.3.1 通道注意力模塊

通道注意力模塊沿著通道維度計(jì)算注意力系數(shù),方法見圖3。首先,輸入特征分別經(jīng)過全局最大池化、平均池化獲得兩個(gè)一維特征,然后將兩個(gè)一維特征分別輸入兩層共享參數(shù)的神經(jīng)網(wǎng)絡(luò)。將輸出的兩個(gè)特征相加,通過Sigmoid函數(shù)激活得到一維通道注意力Mc(F)。最后,將輸入特征與Mc(F)相乘,生成調(diào)整后的新特征。

圖3 通道注意力模塊

通道注意力計(jì)算公式為:

Mc(F)=σ(MLP(AvgPool(F))+

MLP(MaxPool(F)))=

(5)

1.3.2 空間注意力模塊

空間注意力模塊沿著空間維度計(jì)算注意力系數(shù),方法見圖4。輸入特征進(jìn)行全局最大池化和平均池化得到兩個(gè)二維特征后再進(jìn)行拼接操作,然后使用7×7卷積降維后再經(jīng)Sigmoid函數(shù)激活得到二維空間注意力Ms(F)。最后,將輸入特征與Ms(F)相乘,得到新特征。

圖4 空間注意力模塊

空間注意力計(jì)算公式為:

Ms(F)=σ(f7×7([AvgPool(F);MaxPool(F)]))=

(6)

1.4 農(nóng)作物病蟲檢測改進(jìn)模型

提出的改進(jìn)模型是保持Res2Net50網(wǎng)絡(luò)主干不變,采用模型遷移來加載參數(shù),并對部分結(jié)構(gòu)微調(diào)訓(xùn)練。改進(jìn)后的農(nóng)作物病蟲害檢測模型如圖5所示。

算法實(shí)現(xiàn)過程如下:

(1)在訓(xùn)練前,對數(shù)據(jù)集進(jìn)行在線預(yù)處理,增加樣本數(shù)量。

(2)網(wǎng)絡(luò)加載經(jīng)過ImageNet數(shù)據(jù)集訓(xùn)練的Res2Net50預(yù)訓(xùn)練模型,遷移底層網(wǎng)絡(luò)參數(shù)。

(3)訓(xùn)練過程中使用ISDA算法進(jìn)行語義增強(qiáng),優(yōu)化網(wǎng)絡(luò)輸出。

(4)選取動量梯度下降(Momentum)算法,反向傳播,更新網(wǎng)絡(luò)參數(shù)。

(5)通過全連接層Softmax函數(shù)預(yù)測分類。

(6)多次試驗(yàn),對比效果,選取最優(yōu)超參數(shù)。

圖5 農(nóng)作物病蟲害檢測改進(jìn)模型

2 實(shí)驗(yàn)設(shè)計(jì)

2.1 數(shù)據(jù)集準(zhǔn)備

實(shí)驗(yàn)采用AI Challenger 2018農(nóng)作物病蟲害數(shù)據(jù)集。該數(shù)據(jù)集包含蘋果、玉米、櫻桃、馬鈴薯、草莓、番茄、葡萄、柑橘、桃樹和辣椒10種農(nóng)作物、27種病害類別(分一般或嚴(yán)重)和10種健康類別。數(shù)據(jù)集共有47 393張圖片,其中訓(xùn)練集31 718張,驗(yàn)證集4 540張,測試集(未標(biāo)注)9 027張。由于數(shù)據(jù)集中第44、45類樣本較少,故刪除。該實(shí)驗(yàn)使用的數(shù)據(jù)集按照“物種-疾病-發(fā)病程度”分為59類,其中訓(xùn)練集有31 716個(gè)樣本,測試集有4 539個(gè)樣本。

2.2 數(shù)據(jù)預(yù)處理

訓(xùn)練神經(jīng)網(wǎng)絡(luò)需要海量且全面的數(shù)據(jù)來保證其穩(wěn)定性。對數(shù)據(jù)集進(jìn)行預(yù)處理不僅能增加樣本量,還能提高模型的泛化能力。通過試驗(yàn)對比將圖片尺寸重定義為224×224,此時(shí)模型識別效果最好且節(jié)省計(jì)算資源。實(shí)驗(yàn)采用在線預(yù)處理的方式,首先對訓(xùn)練集圖片尺寸重新定義,然后再進(jìn)行隨機(jī)亮度調(diào)整、對比度增強(qiáng)、30°隨機(jī)旋轉(zhuǎn)、上下翻轉(zhuǎn)、水平翻轉(zhuǎn)、45°仿射變換、像素去均值化與歸一化處理等操作。

測試集圖片只做尺寸重定義為224×224、像素去均值化與歸一化處理操作。

2.3 超參數(shù)設(shè)計(jì)

合適的學(xué)習(xí)率可提高收斂速度。經(jīng)過試驗(yàn)對比,將初始學(xué)習(xí)率設(shè)置為0.001。在訓(xùn)練過程中,學(xué)習(xí)率根據(jù)驗(yàn)證集loss進(jìn)行動態(tài)調(diào)整以便更好的收斂。當(dāng)loss連續(xù)兩次不再下降時(shí),學(xué)習(xí)率便縮小10倍。

單次訓(xùn)練樣本量(Batch-Size)會對模型性能造成一定影響。考慮到顯卡容量,選取16、32、64進(jìn)行試驗(yàn)后確定為32。

通過試驗(yàn)對比不同的梯度優(yōu)化算法,綜合考慮收斂速度和不容易陷入局部極值等因素,實(shí)驗(yàn)最終采用動量梯度下降算法(Gradient Descent with Momentum,Momentum)。實(shí)驗(yàn)將momentum設(shè)為0.9,L2正則化系數(shù)設(shè)為0.000 5。

損失函數(shù)使用ISDA算法,其中超參數(shù)λ是控制語義數(shù)據(jù)增強(qiáng)的強(qiáng)度系數(shù)。通過試驗(yàn)對比效果后λ確定為1.0。

2.4 實(shí)驗(yàn)環(huán)境

實(shí)驗(yàn)環(huán)境:Windows10 OS,32 GB內(nèi)存,AMD Ryzen7 5800X處理器和NVIDIA 3070顯卡。實(shí)驗(yàn)編程語言:PyTorch1.71框架,Python3.6。

3 實(shí)驗(yàn)及結(jié)果分析

3.1 對比實(shí)驗(yàn)及分析

相同實(shí)驗(yàn)條件下,將改進(jìn)模型和其他4種模型進(jìn)行對比試驗(yàn)??紤]到實(shí)驗(yàn)數(shù)據(jù)集的病蟲害種類較多,實(shí)驗(yàn)以平均準(zhǔn)確率(Average accuracy rate)作為評價(jià)指標(biāo)。為保證試驗(yàn)合理性,所有實(shí)驗(yàn)?zāi)P途捎媚P瓦w移的方法,訓(xùn)練60輪。在測試集上的實(shí)驗(yàn)結(jié)果如圖6所示。

(a)準(zhǔn)確率曲線

結(jié)果分析:改進(jìn)后的模型可達(dá)到更高的準(zhǔn)確率和更低的損失值。改進(jìn)模型收斂后,其準(zhǔn)確率達(dá)到88.3%左右,損失值為0.325。改進(jìn)模型收斂速度最快,大約10次訓(xùn)練后趨于收斂。ResNet50模型收斂速度稍慢于改進(jìn)模型。ResNet101和InceptionV4模型在15輪訓(xùn)練后趨于收斂。DenseNet121模型的收斂速度較慢,且識別準(zhǔn)確率低于其他模型。由于改進(jìn)模型加了注意力機(jī)制,初始運(yùn)行時(shí)性能表現(xiàn)低于其他模型,但經(jīng)過兩次迭代后,性能表現(xiàn)優(yōu)于其他模型。

表1為對比模型在測試集的平均準(zhǔn)確率及其參數(shù)量。改進(jìn)模型將CBAM模塊添加到Res2Net50網(wǎng)絡(luò)殘差塊中,使用ISDA算法進(jìn)行訓(xùn)練。改進(jìn)模型比DenseNet121和ResNet50模型參數(shù)略多,但比其他模型少,且識別準(zhǔn)確率最高。改進(jìn)模型在測試集上的識別準(zhǔn)確率達(dá)88.33%,分別比其他4種模型提高了0.95%、1.04%、0.63%和1.75%。。

表1 對比模型的表現(xiàn)

3.2 消融實(shí)驗(yàn)及分析

Res2Net50為初始模型;模型1表示初始模型僅用ISDA算法進(jìn)行訓(xùn)練;模型2僅在初始模型殘差塊中加入CBAM模塊,即CBAM-Res2Net50模型。所有實(shí)驗(yàn)?zāi)P途捎媚P瓦w移的方法,訓(xùn)練60輪。在測試集上的實(shí)驗(yàn)結(jié)果如圖7所示。

(a)準(zhǔn)確率曲線

在消融實(shí)驗(yàn)中,模型2最先達(dá)到收斂狀態(tài),在10次迭代左右就趨于收斂。改進(jìn)模型和模型1經(jīng)過10次迭代后趨于收斂,而初始模型收斂速度最慢。模型1和模型2在測試集上的準(zhǔn)確率均高于初始模型。通過對比模型的準(zhǔn)確率和損失收斂曲線,改進(jìn)模型比初始模型先收斂,識別準(zhǔn)確率提高。

如表2所示,改進(jìn)模型收斂后,識別準(zhǔn)確率可達(dá)88.33%。與Res2Net50、模型1和模型2相比,改進(jìn)模型的識別準(zhǔn)確率分別提高了0.56%、0.31%和0.49%。

表2 消融實(shí)驗(yàn)

3.3 不同文獻(xiàn)對比分析

由于文獻(xiàn)[15-16]均采用AI Challenger 2018農(nóng)作物病蟲害數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),選擇其最優(yōu)模型進(jìn)行對比,結(jié)果如表3所示。

表3 不同文獻(xiàn)模型對比

文獻(xiàn)[15]采用模型融合的方法,即RestNext50、SE-ResNet50、SE-RestNext50、ResNet101等4種網(wǎng)絡(luò)模型融合成新模型。雖然模型效果相較于單一模型有所提升,但增加了模型訓(xùn)練時(shí)間和參數(shù)量。文獻(xiàn)[16]對深度殘差網(wǎng)絡(luò)進(jìn)行微調(diào),使用Focal Loss進(jìn)行訓(xùn)練,分類準(zhǔn)確率較差。改進(jìn)模型的識別準(zhǔn)確率比文獻(xiàn)[15]和文獻(xiàn)[16]分別提高了1.14%、1.57%。

4 結(jié)束語

該文提出了基于隱式語義數(shù)據(jù)增強(qiáng)算法的CBAM-Res2Net50模型,保持Res2Net50網(wǎng)絡(luò)結(jié)構(gòu)不變,使用模型遷移加載部分參數(shù),并在神經(jīng)網(wǎng)絡(luò)殘差塊中添加CBAM模塊。研究采用AI Challenger 2018農(nóng)作物病蟲害數(shù)據(jù)集進(jìn)行對比實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果表明,改進(jìn)模型對59類病蟲害的分類準(zhǔn)確率為88.33%。與ResNet50、ResNet101、InceptionV4和DenseNet121模型相比,改進(jìn)模型的識別準(zhǔn)確率分別提高了0.95%、1.04%、0.63%和1.75%。改進(jìn)模型從多尺度學(xué)習(xí)圖像特征,挖掘圖像的語義信息,在一定程度上可解決樣本不足的問題,從而提高網(wǎng)絡(luò)模型的泛化能力。

目前,實(shí)驗(yàn)所用圖片背景簡單,沒有考慮復(fù)雜環(huán)境的干擾。后續(xù)研究會將不斷收集農(nóng)作物圖片,豐富農(nóng)作物病蟲害數(shù)據(jù)集,對神經(jīng)網(wǎng)絡(luò)進(jìn)行剪枝以減少參數(shù)數(shù)量,建立移動終端的農(nóng)作物分類病蟲害檢測系統(tǒng)等。

猜你喜歡
殘差農(nóng)作物注意力
高溫干旱持續(xù) 農(nóng)作物亟須“防護(hù)傘”
俄發(fā)現(xiàn)保護(hù)農(nóng)作物新方法
夏季農(nóng)作物如何防熱害
基于雙向GRU與殘差擬合的車輛跟馳建模
讓注意力“飛”回來
厲害了!農(nóng)作物“喝”上環(huán)保酵素
基于殘差學(xué)習(xí)的自適應(yīng)無人機(jī)目標(biāo)跟蹤算法
基于遞歸殘差網(wǎng)絡(luò)的圖像超分辨率重建
“揚(yáng)眼”APP:讓注意力“變現(xiàn)”
A Beautiful Way Of Looking At Things