蔡泳恒,郭建文,李宇琛,陳鳳宜
(東莞理工學(xué)院,廣東東莞 523808)
早期發(fā)現(xiàn)作物疾病是保護(hù)作物和控制疫情的主要手段[1]。植物疾病一般都會(huì)影響葉片,葉片對(duì)病害的鑒定起著至關(guān)重要的作用[2]。通過(guò)圖像能直觀地識(shí)別健康作物和病害作物以及病變種類[3],但需要全面的植物病原學(xué)知識(shí)[4,5],依靠人力來(lái)快速、科學(xué)解讀病害圖像信息很困難。
基于深度學(xué)習(xí)的智能診斷應(yīng)用得到廣泛關(guān)注,深度學(xué)習(xí)模型可以在保證識(shí)別效果的前提下有效地減弱專家經(jīng)驗(yàn)的干擾[6]?,F(xiàn)有研究多基于實(shí)驗(yàn)室公開(kāi)數(shù)據(jù)集,如Plantvillage,具有現(xiàn)場(chǎng)病害數(shù)據(jù)庫(kù)不足又弱化樣本攜帶的信息量,對(duì)深度學(xué)習(xí)智能診斷模型的建立提出了更高的要求。
本研究以柑橘為例,收集制作柑橘病蟲害數(shù)據(jù)集,在此基礎(chǔ)上,采用ResNet50、DenseNet121、MobileNetV2、Vit Transformer、ECA_ResNet 5 種模型分別進(jìn)行訓(xùn)練,評(píng)估深度學(xué)習(xí)算法在該數(shù)據(jù)集上的效果,為相關(guān)研究提供支持。
研究小組制作了柑橘葉片數(shù)據(jù)集(圖1)。數(shù)據(jù)集包含受感染的葉片共2 648 張,為黃龍病、缺鎂癥、正常葉片3 個(gè)總類,如表1 所示。
表1 現(xiàn)場(chǎng)數(shù)據(jù)集的制作
圖1 葉片數(shù)據(jù)集
采用ResNet50[7]、DenseNet121[8]、MobileNetV2[9]、Vit Transformer[10]、ECA_ResNet[11]5 種模型分別進(jìn)行訓(xùn)練,探究深度學(xué)習(xí)應(yīng)用于柑橘葉片識(shí)別中的優(yōu)勢(shì)。各種方法的簡(jiǎn)介和特點(diǎn)如表2 所示。
表2 5 種深度學(xué)習(xí)模型的簡(jiǎn)介及特點(diǎn)
使用MistGPU 云平臺(tái)進(jìn)行數(shù)據(jù)訓(xùn)練,采用3070顯卡,Python 環(huán)境為3.8。首先將圖片數(shù)據(jù)集進(jìn)行歸一化處理,統(tǒng)一裁剪成224×224 相素大小的圖片,導(dǎo)入神經(jīng)網(wǎng)絡(luò),將分類層(全連接層)修改為3,設(shè)置使用Adam 優(yōu)化器,使用余弦退火學(xué)習(xí)率調(diào)整策略,并設(shè)置初始學(xué)習(xí)率為0.01。在使用Vit Transformer 模型進(jìn)行訓(xùn)練時(shí),Adam 優(yōu)化器效果較差,使用SMG 優(yōu)化器替換,將最小學(xué)習(xí)率設(shè)置為10-6,學(xué)習(xí)率在以100 個(gè)epoch 為1/4 個(gè)余弦周期下進(jìn)行訓(xùn)練。
訓(xùn)練集試驗(yàn)數(shù)據(jù)包括準(zhǔn)確率和損失值,分別用Train_Acc 和Train_Loss 表示。驗(yàn)證集試驗(yàn)數(shù)據(jù)也是準(zhǔn)確率和損失值,分別用Val_Acc 和Val_Loss 表示。損失值是用于衡量模型預(yù)測(cè)的好壞,反映訓(xùn)練模型預(yù)測(cè)與實(shí)際數(shù)據(jù)的差距,一般訓(xùn)練結(jié)果的損失值越小,模型的魯棒性就越好,使用交叉熵?fù)p失函數(shù)(Cross entropy loss)計(jì)算訓(xùn)練結(jié)果的損失值,如算式(1)。
5 種算法經(jīng)過(guò)100 次訓(xùn)練得到的5 組訓(xùn)練數(shù)據(jù)如表3 所示。訓(xùn)練100 次,5 種模型的驗(yàn)證集與訓(xùn)練集的準(zhǔn)確率和損失值如圖2 至圖5。
表3 經(jīng)過(guò)100 次訓(xùn)練模型的主要參數(shù)
圖2 100 次訓(xùn)練中訓(xùn)練集的損失值變化
圖3 100 次訓(xùn)練中訓(xùn)練集的準(zhǔn)確率變化
圖4 100 次訓(xùn)練中驗(yàn)證集的損失值變化
圖5 100 次訓(xùn)練中驗(yàn)證集的準(zhǔn)確率變化
從訓(xùn)練結(jié)果來(lái)看,Vit Transformer 最終的訓(xùn)練精度最高,在訓(xùn)練了10 次左右就達(dá)到了98%的訓(xùn)練精度。ResNet50、DenseNet121、MobileNetV2 在相同的訓(xùn)練參數(shù)下,DenseNet121 的訓(xùn)練精度最高,Mobile-NetV2 其次,ResNet50 最小,而且MobileNetV2 前30次訓(xùn)練波動(dòng)較大,訓(xùn)練100 次后損失值最小,采用MobileNetV2 時(shí),最好提高訓(xùn)練輪次。
在對(duì)比ResNet50 和加入注意力機(jī)制后的ECA_ResNet,加入注意力機(jī)制后精度更高,損失值更小。在訓(xùn)練時(shí)間對(duì)比上,ResNet50、DenseNet121、MobileNetV2 的訓(xùn)練用時(shí)相差不大,Vit Transformer訓(xùn)練用時(shí)略微增加,ECA_ResNet 訓(xùn)練用時(shí)最長(zhǎng)。Vit Transformer 模型無(wú)論是在訓(xùn)練精度還是訓(xùn)練輪次上都有優(yōu)勢(shì),加入注意力機(jī)制的ECA_ResNet 相比其他3 個(gè)神經(jīng)網(wǎng)絡(luò)模型在訓(xùn)練集有一定優(yōu)勢(shì),但使用的訓(xùn)練時(shí)間和資源也會(huì)提高。
采用5 種深度學(xué)習(xí)模型對(duì)研究小組收集制作的柑橘葉片數(shù)據(jù)集進(jìn)行訓(xùn)練,驗(yàn)證了數(shù)據(jù)集能支持深度學(xué)習(xí)的研究和應(yīng)用。在深度模型比對(duì)的結(jié)果中,Vit Transformer 模型更加適合于解決該數(shù)據(jù)集的識(shí)別任務(wù),接下來(lái)將進(jìn)一步優(yōu)化Vit Transformer 模型,提升性能。