












摘 "要: 為了高效、準確地識別葡萄葉部病害,文中提出了LE?EfficientNet模型,在EfficientNetB0模型基礎上,采用大核注意力(LKA)機制替換原模型部分MBConv模塊中的壓縮激勵網絡(SENet),接著利用跳躍連接在最后一層卷積層后面融入高效通道注意力機制(ECA),結合三種注意力機制讓網絡更高效地提取葡萄葉部病害的局部重要信息,并引用Adam優化器替換原模型的SGD優化器,提升了分類模型的泛化能力。在PlantVillage葡萄葉部病害數據集上訓練,結果表明,LE?EfficientNet模型相比原模型準確率提升了1.58%,總體精度提升了1.62%,召回率提升了1.46%,[F1]分數提升了1.53%,并且參數量僅有10.18 MB,比原模型參數量降低2.7 MB,與其他經典網絡模型相比,性能評估指標均有不同程度的提升,該研究為葡萄葉部病害識別提供了新的參考與借鑒。
關鍵詞: 葡萄葉部病害; 卷積神經網絡; 圖像分類; 大核注意力機制; 高效通道注意力機制; EfficientNetB0
中圖分類號: TN911.73?34; TP391.41 " " " " " " " " 文獻標識碼: A " " " " " " " " 文章編號: 1004?373X(2024)15?0073?08
Grape leaf disease identification method based on improved EfficientNetB0 model
HU Shiwei1, DENG Jianxin2, WANG Haoyu1, QIU Lin1
(1. School of Computer Science, Yangtze University, Jingzhou 434023, China; 2. College of Agriculture, Yangtze University, Jingzhou 434025, China)
Abstract: In order to efficiently and accurately identify grape leaf diseases, an LE?EfficientNet model is proposed. On the basis of the EfficientNetB0 model, the large kernal attention (LKA) mechanism is used to replace the squeeze?and?excitation network (SENet) in the MBConv module of the original model. Then, skip connection is used to integrate efficient channel attention (ECA) mechanism behind the last convolutional layer, which makes the network more efficient in extracting local important information of grape leaf diseases in combination with the three attention mechanisms. The SGD (stochastic gradient descent) optimizer of the original model is replaced with Adam optimizer, which improves the generalization ability of the classification model. Training is carried out on the grape leaf disease dataset PlantVillage, and the results show that the accuracy rate of LE?EfficientNet model is improved by 1.58%, its overall accuracy is increased by 1.62%, its recall rate is increased by 1.46%, and its [F1]?score is increased by 1.53% in comparison with those of the original model. In addition, its parameter quantity is only 10.18 MB, which is decreased by 2.7 MB in comparison with that of the original model. In comparison with the other classical network models, the performance evaluation indexes of the proposed model are improved to varying degrees. To sum up, this study provides a new reference for the identification of grape leaf diseases.
Keywords: grape leaf disease; convolutional neural network; image classification; LKA mechanism; efficient channel attention mechanism; EfficientNetB0
0 "引 "言
中國是世界上葡萄栽培較早的國家之一,對葡萄的栽培有著悠久的歷史[1]。葡萄營養價值高、用途廣泛,其相關產業已經成為我國很多地區農業生產的主力[2]。隨著葡萄種植范圍增加,產量也在持續增長,同時種植產業面臨的問題也日益突出[3]。其中,葡萄葉部病害會造成減產,嚴重制約葡萄生長及相關經濟發展,唯有快速精準的病害識別,才能及早防控、降低損失、提高經濟效益。
葡萄葉部病害癥狀相近且種類繁多,傳統的檢測方法主要是依靠人工經驗判斷,難免會出現效率低下的問題,且極易受主觀因素的影響造成誤判,錯失最佳防控時期,影響葡萄的產量。
近年來,人工智能技術發展迅猛,計算機視覺與機器學習在化學結構圖像識別[4?5]、醫學影像診斷識別[6?7]、機械零部件故障識別[8?9]等領域得到廣泛應用,人工智能應用在農作物病害識別領域也取得了一定的進展。文獻[10]把動態系數函數引入到GAC測地線活動輪廓模型中,提出Core損失函數,確立了CSJMM聯合監管機制,最后提出了精確分割測地線活動輪廓模型,該模型在馬陸葡萄病蟲害數據集上的識別準確率達到94.06%;文獻[11]用基礎AlexNet算法,在上面增加池化層層數來壓縮特征,將原激活函數Leaky ReLU替換為函數ReLU,優化后的模型在葡萄葉部病害的分類準確率達99.1%;文獻[12]將YOLOv4模型中的3×3卷積換成PSA注意力機制,在頸部網絡中引入CA注意力機制,改進的算法在4類葡萄葉片病害數據集上進行實驗,其平均準確率達到84.07%;文獻[13]提出了RFFBs殘差特征融合模塊,把殘差塊輸入前和輸出后的特征圖進行融合,在RFFB模塊后融入CBAM注意力機制提取有效信息,在葡萄葉部病害數據集上識別準確率為86.29%,性能優于其他經典模型;文獻[14]在MobileNetV2模型基礎上,將ECA(Efficient Channel Attention)高效通道注意力與AFF注意力特征融合,利用模型剪枝去掉冗余層,改進的模型在農作物病害葉片數據集上訓練,其參數量較原模型減少了15.37%,識別準確率較原模型提高了0.9%;文獻[15]選用EfficientNetV2作為主干網絡,引入DeepViT算法和特征融合網絡,在玉米病蟲害數據集上分級精度為92.6%。綜上所述,雖然一些學者在大模型上取得了很好的成績,但由于其參數量較大,消耗大量的計算資源,難以應用在實際中。
近些年來,隨著輕量化網絡的引入,解決了參數量過大的問題,但其準確率有所下降。
為此,本文提出基于改進的輕量化EfficientNetB0模型[16],旨在保證參數量小的同時也能兼顧較高的準確率,平衡二者關系,為農作物葉部病害識別、診斷提供新的參考與借鑒。
1 "實驗方法
1.1 "EfficientNet基礎模型
本研究是以EfficientNetB0為主干模型[16],由谷歌研究團隊于2019年宣布的一種卷積神經網絡架構,旨在實現有限計算資源下的圖像識別任務。EfficientNet網絡的設計原則主要是基于三個主要組件:第一個組件是寬度縮放,在模型中的每一層加入卷積濾波器,使得特征圖片的維度相應的增加;第二個組件是深度縮放,在網絡中的每一層加入卷積模塊,使特征圖片更加抽象;第三個組件是分辨率縮放,通過增加輸入圖片的分辨率讓模型的分辨率提高。
這三個因素之間相輔相成、相互依賴,EfficientNet架構基于這三個縮放因素,復合縮放公式如下所示:
[ " " " " "depth: d=αφ " " " " "width: w=βφ " " " " "resolution: r=γφs.t. " "αβ2γ2≈2 " " " " "α≥1, β≥1,γ≥1] (1)
式中:[φ]表示復合縮放系數;[α]、[β]、[γ]表示相應的縮放基數;[d]為深度;[w]為寬度;[r]為分辨率。研究發現,在約束條件下,調整[φ]的取值就可以得到EfficientNetB0~B7,由于B0是第一個提出的標準模型,與其他模型相比具有最少的參數,運行速度也比較快,因此這些研究都使用EfficientNetB0作為主干網絡模型,其結構圖如圖1所示。
MBConv模塊是EfficientNetB0網絡的核心部分。首先把特征圖進行逐點卷積操作,接著依據擴展比更改輸出的通道大小,在逐深度卷積后面融入SENet(Squeeze?and?excitation Network),然后用逐點1×1卷積對通道維度進行恢復,MBConv模塊中每個卷積之后都會進行歸一化。
MBConv模塊中的SE網絡與注意力特征圖有關,先把輸入進來的特征圖進行適當壓縮,把通道的維度全局平均池化,通過FC層獲得各通道維度的相關信息,再由激活函數Sigmoid獲取對應的權重關系,MBConv和SE結構如圖2所示。
1.2 "大核注意力機制
大核注意力(Large Kernal Attention, LKA)模型[17]吸收了卷積和自我注意的優點,包括局部結構信息、長程依賴性和適應性;同時,避免了忽略在通道維度上的適應性等缺點,大核注意力卷積可分為三個部分:深度卷積、深度擴展卷積和1×1卷積,其模型如圖3所示。
大核注意力模型是把一個[K]×[K]卷積分解為一個[Kd]×[Kd]深度方向的膨脹卷積([d]為其中膨脹率)、一個([2d-1])×([2d-1])深度卷積和1×1卷積,可以用少量的計算成本和參數捕捉關系,獲得長期關系之后,預估某一點的重要性,然后得到注意力特征圖,其中大核注意力模塊可以用公式(2)表示。
[Attention=Conv1×1DW?D?ConvDW?ConvFOutput=Attention?F] (2)
式中:[F]∈[RC×H×W]是輸入特征圖;Attention∈[RC×H×W]表示注意力圖;DW?D?Conv表示深度膨脹卷積;DW?Conv表示深度卷積。特征圖里面有表示每個特征重要性的值,元素的點乘用[?]進行表示。
1.3 "高效通道注意力機制
高效通道注意力(ECA)在改善CNN網絡性能方面潛力巨大[18]。ECA機制旨在克服性能和復雜性之間的矛盾,它消除了原始SE模塊中的FC層,并在全局平均池化后通過1D卷積直接來學習。首先輸入特征圖進行全局平均池化,然后執行一維卷積操作,通過激活函數Sigmoid得到每個通道的權重,最后將[w]乘以原特征圖的相應元素,獲得最后的特征圖,如公式(3)所示。
[ω=σC1DKy] (3)
式中C1D代表一維卷積,僅包括[K]個信息參數,這種捕獲跨通道信息交互的方法有效確保了模型的性能和效率。高效通道注意力(ECA)模型如圖4所示。
1.4 "Adam優化算法
本研究對葡萄葉部病害識別模型進行訓練優化采用的是Adam優化算法[19],能夠防止網絡模型在實驗訓練過程中陷入局部最優,Adam算法的重要思想是結合動量和自適應學習率的概念,可以保持各個參數的自適應學習率,然后使用指數衰減的移動平均來估計各個參數的均值和方差,具體如公式(4)所示:
[gt=?θJθt-1mt=β1mt-1+1-β1gtυt=β2υt-1+1-β2g2tυt=υt1-βt2m=mt1-βt1θt=θt-1-αmtυt+ε] (4)
式中:[gt]是[t]時刻的梯度;[mt]是梯度的一階矩估計;[υt]是梯度的二階矩估計;[υt]是[υt]的偏置矯正;[mt]是[mt]的偏置矯正;[β1]和[β2]是指數的衰減率;[θ]是要求解參數。
1.5 "模型性能評價指標
為了更加全面地衡量模型的識別性能,采用分類模型中常用的準確率(Accuracy)、精確率(Precision)、召回率(Recall)、綜合評價指標([F1]分數)一起作為模型的評價指標。混淆矩陣是用于匯總分類結果的表格,其中包含了4個重要的統計量:TP(True Positive)代表本來是正類別并且被預測為正類別的樣本數;FP(False Positive)實際上是一個負類別,但被模型錯誤地預測為正類別的樣本數;FN(False Negative)實際上是一個正類別,但被模型錯誤地預測為負類別的樣本數;TN(True Negative)是本來為負類別,模型正確預測為負類別的樣本數。
準確率、精確率、召回率、[F1]分數的計算方法如公式(5)所示:
[Accuracy=TP+TNTN+FN+TP+FPPrecision=TPTP+FPRecall=TPTP+FNFβ=(1+β2)Precision×Recallβ2×Precision+Recall] (5)
式中,[β]的作用是調整精確度、召回率的[ω]權重,屬于正數,當[β]為1時是[F1]分數,Presicion以及Recall的[ω]權值一樣。
1.6 "改進的EfficientNetB0模型
本研究旨在增強EfficientNetB0模型特征提取能力,提高模型的病害識別準確率,改善葡萄葉部病害信息提取困難的情況。因此,基于EfficientNetB0模型,提出三個主要創新點。
1) 提出LE?EfficientNet網絡,該網絡采用LKA機制替換部分MBConv里面的SENet模塊,因為LKA結合了卷積運算的局部感受野、旋轉不變性和自注意力機制的長距離信息,避免了忽略通道維度上的適應性等缺點;
2) 利用跳躍連接(Skip Connection)在特征提取的最后一層卷積層后面融入ECA機制,來獲取葡萄葉部的特征圖,結合三種注意力機制讓網絡更高效地提取葡萄葉部病害的局部重要信息,適當的通道交互可以大大降低模型的復雜性,同時保持良好性能,使網絡更加關注感興趣的部分,如葡萄葉部病害相關區域,減小復雜背景對其的影響,并獲得ECA通道注意力增強的特征圖;
3) 調整主干網絡模型參數,并利用Adam優化器替換原模型的SGD優化器,提升了分類模型的泛化能力。
改進后的MBConv和ECA模型結構如圖5所示。
本研究改進的輕量化網絡LE?EfficientNet模型結構如圖6所示。將葡萄葉部病害圖像經過預處理,把圖像輸入到模型中,最開始通過Conv升維,獲得病害特征圖,接著通過改進的MBConv模塊,將原MBConv的第3、5、11、13、15個模塊換成了LKA模塊,通過Conv獲得病害特征圖,將輸出圖跳躍連接通過ECA機制,讓其能夠更好地提取病害葉片上的信息,最后通過全局平均池化和FC層對病害葉片進行分類操作。
2 "實驗準備
本研究所用的葡萄葉部病害圖像數據集來源是PlantVillage[20]公開數據集,該數據集是由相關專業人士拍攝整理出的,常用于農作物病害及植物病害的相關研究。本研究實驗樣本選取的是該數據集中3類葡萄病害葉片和健康葉片,一共4個類別,分別是黑腐病、埃斯卡病、褐斑病、健康,其中PlantVillage數據集的樣本圖像具體如圖7所示。
數據集中不平衡的數據會對深度學習模型的識別效果產生一定干擾[21],為了減少過擬合,提高模型的泛化能力,本文對原圖像進行旋轉、調整亮度、高斯噪聲、水平鏡像等預處理。以葡萄葉部褐斑病類為例,效果展示如圖8所示。將預處理后的數據集按照7∶2∶1的比例劃分為訓練集、驗證集、測試集,具體分類樣本信息詳見表1。
3 "結果與分析
本研究采用操作系統Ubuntu 18.04,CPU型號為12 V CPU Intel[?] Xeon[?] Platinum 8255C CPU@2.50 GHz,GPU型號為RTX 3080(10 GB)*1,內存40 GB,使用的是Python 3.8環境,深度學習框架Pytorch 1.7.0,CUDA版本11.0來實現網絡搭建與模型訓練。
3.1 "改進的模型性能分析
LE?EfficientNet模型在葡萄葉部病害識別的效果可以通過混淆矩陣來體現,[x]軸表示的是各類病害的預測標簽,[y]軸代表各類病害的真實標簽,測試的結果如圖9a)所示。其中,顏色最深的對角線部分是各個類別被準確識別的樣本數目,顏色越深、對角線上數量越大,則表示改進模型的識別準確率就越高。圖9b)是改進的模型在4類葡萄葉部病害在測試數據上的準確率柱狀圖。
由此可知,改進后的LE?EfficientNet模型在葡萄葉部病害分類測試集上的表現良好,模型的改進方法是有效的。
3.2 "Adam優化算法性能分析
由表2對比實驗可見,選用Adam優化算法對模型進行優化的效果優于原網絡中使用的SGD優化算法,使模型準確率提升了7.94%,總體精確率提升了7.47%,召回率提升了7.56%,[F1]分數提升了7.6%,通過上述對比,表明了本文選用的優化算法是有效的。
3.3 "各經典模型的識別性能分析
針對本文所提的雙重注意力LE?EfficientNet模型,為了驗證其在葡萄葉部病害識別上的有效性,另選取基礎網絡EfficientNetB0、VGG?16、InceptionV1、MobileNetV1、MobileNetV2、MobileNetV3[22]在同一數據集上進行訓練,然后與本文所建立方法進行比較,為了讓各模型的對比結果更加直觀,呈現了各模型在訓練過程中的損失曲線以及識別準確率曲線,如圖10所示。
根據準確率與損失率曲線圖可知,對比所有模型在訓練中準確率均呈穩定上升的趨勢,可以看出改進的LE?EfficientNet模型識別準確率均比其他網絡模型效果要好。由此可知,本文所提的LE?EfficientNet模型在葡萄病害葉片數據集上具有更高的識別準確率優勢。各模型驗證損失及準確率如表3所示。
LE?EfficientNet模型與上述6種模型在測試集上的性能對比如表4所示。改進的模型與EfficientNetB0、VGG?16、InceptionV1、MobileNetV1、MobileNetV2、MobileNetV3相比,準確率分別提高1.58%、1.16%、1.79%、0.35%、0.65%、0.4%,召回率分別提高1.46%、0.97%、1.75%、0.39%、0.56%、0.36%。其中,LE?EfficientNet模型的準確率、精確率、召回率、[F1]分數均達到99.4%以上,綜合說明該模型性能優良,具備有效性。
3.4 "消融實驗
消融實驗(Ablation Study)是深度學習研究中的一種重要實驗方法,用于評估模型的組件對整體性能的貢獻,在消融實驗中,逐步剔除了模型中的新組件,并重新訓練了模型。實驗結果表明,這些新組件對模型的性能改進起到了至關重要的作用,在EfficientNetB0模型上分別引入LKA模塊和ECA模塊,準確率、精確率、召回率、[F1]分數均比原模型高,但是沒有LE?EfficientNet模型效果好,當把LKA模塊和ECA模塊一起融合后,模型效果得到最好體現,表明這兩個模塊缺一不可,驗證了所提出創新點的有效性,具體如表5所示。
4 "結 "論
本文針對目前葡萄葉部病害識別準確率不高,葡萄葉部病害信息提取困難的情況,提出了一種雙重注意力機制LE?EfficientNet模型。改進的模型以EfficientNetB0為主干網絡,采用LKA機制替換部分MBConv模塊里面的SENet,通過跳躍連接在特征提取的最后一層卷積層后面融入ECA機制,調整主干網絡模型參數,利用Adam優化算法進行訓練,取得了不錯的識別效果。改進后的模型能夠更有效地提取葡萄葉部病害信息,特征學習能力有所增強,其識別準確率達到了99.43%,相比于原EfficientNetB0模型[17]準確率提升了1.58%,并且參數量僅有10.18 MB,比原模型參數量低2.7 MB;改進的模型與VGG?16、InceptionV1、MobileNetV1、MobileNetV2、MobileNetV3經典網絡模型相比,準確率分別提高1.16%、1.79%、0.35%、0.65%、0.4%,均有不同程度的提升。本文在保證參數量小的同時也能兼顧較高的準確率,平衡二者關系,為農作物葉部病害識別、診斷提供新的參考與借鑒。
此外,本文仍有一些潛在的改進方向值得進一步探索,可以進一步優化大核注意力機制的設計,探索更加高效的MBConv模塊結構,或者將改進模型更好地應用于某些特定的任務場景。
注:本文通訊作者為邱林。
參考文獻
[1] 史夢雅,孫海艷,李榮德,等.我國葡萄品種登記現狀及種業發展情況分析[J].中國果樹,2021(10):88?91.
[2] 白津菁.我國葡萄種植對產地經濟發展的影響[J].農村經濟與科技,2023,34(1):69?71.
[3] 李小紅,李運景,馬曉青,等.我國葡萄產業發展現狀與展望[J].中國南方果樹,2021,50(5):161?166.
[4] XU Z P, LI J H, YANG Z P, et al. SwinOCSR: End?to?end optical chemical structure recognition using a Swin Transformer [J]. Journal of cheminformatics, 2022, 14(1): 41.
[5] JOSHUA S, KYLE M, ROBERT A, et al. Deep neural networks for recognition and transcription of chemical structure images [J]. Abstracts of papers of the American Chemical Society, 2018, 256: 80.
[6] 周濤,霍兵強,陸惠玲,等.融合多尺度圖像的密集神經網絡肺部腫瘤識別算法[J].光學精密工程,2021,29(7):1695?1708.
[7] LIANG Z H, CHEN J J, XU Z P, et al. A pattern?based method for medical entity recognition from Chinese diagnostic imaging text [J]. Frontiers in artificial intelligence, 2019, 2: 1.
[8] 楊秋玉,王棟,阮江軍,等.基于振動信號的斷路器機械零部件故障程度識別[J].電工技術學報,2021,36(13):2880?2892.
[9] 赫大雨,王強.基于HRFDE和GSA?PNN的旋轉機械故障識別模型[J].機電工程,2023,40(12):1869?1879.
[10] 王興旺,鄭漢垣,王素青.基于CSJMM?AS?GAC的馬陸葡萄病蟲害識別研究[J].河南農業科學,2022,51(6):154?163.
[11] 何前,郭峰林,王哲豪,等.基于改進AlexNet的葡萄葉部病害分類算法[J].揚州大學學報(自然科學版),2023,26(2):52?58.
[12] 雷建云,葉莎,夏夢,等.基于改進YOLOv4的葡萄葉片病害檢測[J].中南民族大學學報(自然科學版),2022,41(6):712?719.
[13] LIN J W, CHEN X Y L, PAN R Y, et al. GrapeNet: A lightweight convolutional neural network model for identification of grape leaf diseases [J]. Agriculture, 2022, 12(6): 887.
[14] 王煥鑫,沈志豪,劉泉,等.基于改進MobileNetV2模型的農作物葉片病害識別研究[J].河南農業科學,2023,52(4):143?151.
[15] 武魁,高丙朋.改進EfficientNetV2的玉米病蟲害識別與分級研究[J].現代電子技術,2023,46(14):68?74.
[16] TAN M X, LE Q V. EfficientNet: Rethinking model scaling for convolutional neural networks [C]// Proceedings of the 36th International Conference on Machine Learning. New York: PMLR, 2019: 6105?6114.
[17] GUO M H, LU C Z, LIU Z N, et al. Visual attention network [J]. Computational visual media, 2022, 9(4): 733?752.
[18] WANG Q L, WU B G, ZHU P F, et al. ECA?Net: Efficient channel attention for deep convolutional neural networks [C]// 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). New York: IEEE, 2020: 11531?11539.
[19] KINGMA D P, BA J. ADAM: A method for stochastic optimization [C]// 3rd International Conference on Learning Representations. [S.l.: s.n.], 2015: 1?15.
[20] MOHAMETH F, CHEN B, SADA K A. Plant disease detection with deep learning and feature extraction using plant village [J]. Journal of computer and communications, 2020(6): 10?22.
[21] BUDA M, MAKI A, MAZUROWSKI M A. A systematic study of the class imbalance problem in convolutional neural networks [J]. Neural networks, 2018, 106: 249?259.
[22] ZHU F, LIU C, YANG J W, et al. An improved MobileNet network with wavelet energy and global average pooling for rotating machinery fault diagnosis [J]. Sensors (Basel, Switzerland), 2022, 22(12): 4427.
作者簡介:胡施威(1999—),男,湖北天門人,在讀碩士研究生,研究方向為人工智能、深度學習、計算機視覺技術應用與植物保護等。
邱 "林(1980—),男,湖北荊州人,博士,講師,主要研究方向為深度學習、數據挖掘、圖像處理和分析等。