王大慶,祿 琳,于興龍,耿麗麗,任志鵬*
(1.黑龍江省農(nóng)墾經(jīng)濟(jì)研究所,哈爾濱 150030;2.黑龍江省農(nóng)墾科學(xué)院,哈爾濱 150030;3.二道河農(nóng)場(chǎng),黑龍江 佳木斯 154000)
玉米是世界上重要糧食作物和工業(yè)原料,穩(wěn)定產(chǎn)量對(duì)糧食安全、農(nóng)民增收和國(guó)民經(jīng)濟(jì)具有重要意義,病害是降低玉米質(zhì)量和產(chǎn)量直接因素。常見(jiàn)玉米病害達(dá)十幾種,病發(fā)處多為葉部、穗部和根部,其中以葉部大斑病、銹病及灰斑病為主。玉米葉部病害識(shí)別是現(xiàn)階段智慧農(nóng)業(yè)重點(diǎn)發(fā)展領(lǐng)域,快速、準(zhǔn)確識(shí)別葉部病害,對(duì)玉米病害防治具有重要意義。
病害識(shí)別本質(zhì)為圖像分類任務(wù),傳統(tǒng)機(jī)器學(xué)習(xí)“特征提取+分類器”模式已被深度學(xué)習(xí)技術(shù)中的卷積神經(jīng)網(wǎng)絡(luò)(CNN)取代。CNN 在不同作物的表觀病害識(shí)別任務(wù)效果良好,對(duì)葉部、莖部病害、蟲害均具有較高的準(zhǔn)確率[1-4]。早期研究注重網(wǎng)絡(luò)架構(gòu)與訓(xùn)練方法的調(diào)整,如調(diào)整超參數(shù)、簡(jiǎn)化模型,尤其是通過(guò)跳躍連接、空間卷積和較短隱藏層連接的CNN[5-6]。近年來(lái),數(shù)據(jù)集的重要性逐漸受到關(guān)注,尤其是基于真實(shí)環(huán)境采集的數(shù)據(jù)集與合理的數(shù)據(jù)增強(qiáng)方法[7-8]。通過(guò)調(diào)整CNN架構(gòu)[9],構(gòu)建完備數(shù)據(jù)集,進(jìn)行合理預(yù)處理和增強(qiáng)(如分割、去除背景等),優(yōu)化訓(xùn)練方式等方法可有效增強(qiáng)CNN模型性能[10]。
研究表明,CNN 病害識(shí)別方法存在環(huán)境魯棒性問(wèn)題[11]。作物病害發(fā)病隨機(jī)性強(qiáng),大多數(shù)研究不具備采集真實(shí)環(huán)境數(shù)據(jù)條件,其訓(xùn)練樣本數(shù)據(jù)均來(lái)自于受控條件或公用數(shù)據(jù)集,數(shù)據(jù)集背景簡(jiǎn)單,規(guī)模小,僅能通過(guò)數(shù)據(jù)增強(qiáng)方式堆積樣本量。特定作物、特定病害的數(shù)據(jù)收集更困難。經(jīng)訓(xùn)練得到的深度學(xué)習(xí)模型存在泛化能力差、適應(yīng)性差、抗干擾能力弱等問(wèn)題[12]?;谔镩g環(huán)境識(shí)別病害,提升有限數(shù)據(jù)的利用率成為研究重點(diǎn)。
遷移學(xué)習(xí)可借助現(xiàn)有領(lǐng)域知識(shí)解決目標(biāo)領(lǐng)域?qū)W習(xí)問(wèn)題,源領(lǐng)域到目標(biāo)領(lǐng)域差距越小,獲得的模型精度就越高[13]。由于源領(lǐng)域數(shù)據(jù)集規(guī)模較大,模型得到充分訓(xùn)練,具備較強(qiáng)特征提取能力,降低目標(biāo)領(lǐng)域樣本數(shù)量要求。因此遷移學(xué)習(xí)資源利用率高,節(jié)省人工標(biāo)注成本,解決了因目標(biāo)領(lǐng)域樣本匱乏導(dǎo)致的過(guò)擬合、模型泛化能力低等問(wèn)題。針對(duì)玉米病害識(shí)別問(wèn)題,Xu 等采用遷移學(xué)習(xí)法解決模型在玉米病害數(shù)據(jù)集上的過(guò)擬合;Chen等基于ImageNet 預(yù)訓(xùn)練模型,在玉米、水稻作物數(shù)據(jù)集上開展遷移學(xué)習(xí),均獲得較高識(shí)別精度,其中玉米病害識(shí)別模型的本地?cái)?shù)據(jù)集遷移時(shí),平均準(zhǔn)確率僅降低2.64%[14-16]。Yin等基于ImageNet的8種預(yù)訓(xùn)練模型,在辣椒病、蟲害數(shù)據(jù)集上分別取得85.6%和93.62%準(zhǔn)確率[17]。
盡管ImageNet 預(yù)訓(xùn)練模型已取得一定效果,但仍存在域遷移問(wèn)題。源數(shù)據(jù)集與目標(biāo)領(lǐng)域數(shù)據(jù)集相似程度決定遷移學(xué)習(xí)效果,如果領(lǐng)域間相關(guān)性差,自源領(lǐng)域?qū)W習(xí)得到的特征提取參數(shù)難以適應(yīng)目標(biāo)領(lǐng)域,即域遷移問(wèn)題。此外,深層卷積神經(jīng)網(wǎng)絡(luò)所需的計(jì)算能力依賴高性能硬件,但在農(nóng)業(yè)設(shè)備向移動(dòng)端發(fā)展的過(guò)程中,需要權(quán)衡網(wǎng)絡(luò)深度、參數(shù)量應(yīng)與識(shí)別精度,因此輕量級(jí)卷積神經(jīng)網(wǎng)絡(luò)如MobileNet、EfficientNet B0 逐漸進(jìn)入病害識(shí)別領(lǐng)域[18-20]。CNN在植物葉片疾病診斷中的應(yīng)用仍存在一定局限性。如何在解決環(huán)境魯棒性問(wèn)題的前提下減少訓(xùn)練成本,在完成架構(gòu)創(chuàng)新的同時(shí)平衡模型精度、規(guī)格與效率,將更具實(shí)踐意義的模型部署于移動(dòng)端農(nóng)機(jī)設(shè)備是現(xiàn)階段研究重點(diǎn)。
基于上述問(wèn)題,本研究基于深度遷移學(xué)習(xí)理論,提出一種兩階段的遷移學(xué)習(xí)訓(xùn)練方法:一是將不同層數(shù)EfficientNet 在ImageNet 數(shù)據(jù)集上的預(yù)訓(xùn)練模型遷移至公共實(shí)驗(yàn)室條件下采集的Plant Village 數(shù)據(jù)集上,進(jìn)行模型微調(diào)以解決域遷移問(wèn)題;二是將PlantVillage 預(yù)訓(xùn)練模型遷移至自主構(gòu)建、真實(shí)田間采集的玉米葉部病害數(shù)據(jù)集上訓(xùn)練,解決過(guò)擬合和小樣本問(wèn)題,微調(diào)后模型在預(yù)留的預(yù)測(cè)數(shù)據(jù)集上測(cè)試,同時(shí)訓(xùn)練CNN模型與Ef?ficientNet 進(jìn)行對(duì)比試驗(yàn)。實(shí)現(xiàn)田間復(fù)雜背景下對(duì)玉米葉片大斑病、灰斑病以及銹病的智能識(shí)別。
本研究涉及多個(gè)數(shù)據(jù)集,首先在ImageNet 上充分訓(xùn)練預(yù)訓(xùn)練模型,其次遷移至Plant Village 數(shù)據(jù)集微調(diào),最后在本地自建玉米葉片數(shù)據(jù)集上訓(xùn)練并預(yù)測(cè)。本文使用的公開植物病害數(shù)據(jù)集Plant Village 包含14 種植物葉部病害,共有39 個(gè)類別[21]。其中38 個(gè)類別為實(shí)驗(yàn)室條件下采集的葉片圖片,另外1個(gè)類別為背景圖片,不含葉片或植物主體,多為人類社會(huì)或城市復(fù)雜背景。Plant Vil?lage 圖像數(shù)據(jù)按類別存放在39 個(gè)文件夾內(nèi),每個(gè)文件夾代表一個(gè)標(biāo)簽,共計(jì)61 486 張圖片,該數(shù)據(jù)集已通過(guò)圖像翻轉(zhuǎn)、伽馬校正、噪聲注入、PCA顏色增強(qiáng)、旋轉(zhuǎn)和縮放等六種增強(qiáng)技術(shù)進(jìn)行增廣。參考Mohanty 等訓(xùn)練經(jīng)驗(yàn),以4∶1 比例將Plant Vil?lage 數(shù)據(jù)集劃分為訓(xùn)練集和測(cè)試集,分別包含49 193張圖片和12 293張圖片[22]。Plant Village 數(shù)據(jù)集的數(shù)據(jù)樣例如圖1所示。
圖1 Plant Village數(shù)據(jù)集數(shù)據(jù)樣例Fig.1 Sample images of augmented Plant Village dataset
本研究自行構(gòu)建的玉米葉部病害數(shù)據(jù)集來(lái)自黑龍江省肇東市玉米試驗(yàn)田,使用攝像頭拍攝,分辨率為3 024×4 032,拍攝時(shí)間為早晨、中午、下午的不同時(shí)刻;手機(jī)拍攝的原始圖片被裁剪成300×300固定大小圖片,確保葉片主體清晰,葉片病斑明顯,真實(shí)背景可見(jiàn)。最終得到2 628張圖片,涵蓋灰斑病、銹病、大斑病以及健康四種玉米葉片狀態(tài)。從數(shù)據(jù)集中抽取10%的數(shù)據(jù)作為預(yù)測(cè)集,剩余90%按照4∶1 比例劃分為訓(xùn)練集和測(cè)試集。訓(xùn)練集和測(cè)試集用于模型訓(xùn)練和測(cè)試過(guò)程,預(yù)測(cè)集用于評(píng)估模型的識(shí)別精度和性能。本地構(gòu)建數(shù)據(jù)集的詳細(xì)情況見(jiàn)表1,數(shù)據(jù)集樣例如圖2 所示,a~d 分別為灰斑病、銹病、大斑病和健康葉片。
表1 本地構(gòu)建的玉米葉部病害數(shù)據(jù)集詳細(xì)情況Table 1 Details of maize leaf disease dataset
圖2 玉米葉部病害數(shù)據(jù)集數(shù)據(jù)樣例Fig.2 Sample images of maize leaf disease dataset
考慮到不同CNN 模型輸入大小不同,所有數(shù)據(jù)在進(jìn)入模型前,均被調(diào)整為相應(yīng)大?。?24×224,299×299等),在訓(xùn)練前對(duì)圖片進(jìn)行在線數(shù)據(jù)增強(qiáng),包括數(shù)值歸一化、旋轉(zhuǎn)(旋轉(zhuǎn)20°、40°)、平移(水平方向、垂直方向)、縮放、翻轉(zhuǎn)(上下翻轉(zhuǎn)、左右翻轉(zhuǎn))、錯(cuò)切等。數(shù)據(jù)增強(qiáng)可提高模型泛化能力和魯棒性。
本試驗(yàn)所用設(shè)備為搭載有Intel?CoreTMi9-9900K@3.6GHz×16 的CPU 處理器、RTX 3090 24G顯存顯卡、32G內(nèi)存以及2.5T存儲(chǔ)空間的深度學(xué)習(xí)工作站,顯卡驅(qū)動(dòng)版本號(hào)為455.45.01,安裝CUDA版本為11.1,cuDNN 版本號(hào)為8005。操作系統(tǒng)為64 位Ubuntu 20.04 LTS,使用的編程語(yǔ)言為python 3.7.9,使用Tensorflow-gpu框架下的keras2.4.3在虛擬環(huán)境中完成所有網(wǎng)絡(luò)結(jié)構(gòu)編寫、網(wǎng)絡(luò)模型訓(xùn)練和模型性能測(cè)試。
本文與EfficientNet[23]對(duì)比的經(jīng)典CNN 模型共有6 種:VGG19,ResNet50,InceptionV3,Dense Net201,MobileNet 以及MobileNetV2,上述經(jīng)典網(wǎng)絡(luò)的詳細(xì)結(jié)構(gòu)不再贅述。VGG19 為VGG 網(wǎng)絡(luò)中的一種經(jīng)典結(jié)構(gòu),包含16 個(gè)卷積層和3 個(gè)全連接層,比VGG16 減少3 個(gè)卷積層。結(jié)構(gòu)簡(jiǎn)潔且可通過(guò)加深網(wǎng)絡(luò)結(jié)構(gòu)使性能不斷提升,同時(shí)擁有大量參數(shù)。
2015 年ILSVRC-2015 分類任務(wù)冠軍ResNet 參考VGG19 網(wǎng)絡(luò),引入短路機(jī)制,加入殘差單元,解決深層網(wǎng)絡(luò)中的退化梯度彌散和訓(xùn)練集精度下降問(wèn)題。Inception V3為谷歌公司開發(fā)“Deep Learn?ing Evolutionary Architectures”系列的第三個(gè)版本,包含因子分解功能,在不降低網(wǎng)絡(luò)效率情況下減少連接數(shù)和參數(shù)。DenseNet 設(shè)計(jì)基本思路與ResNet 一致,建立前面所有層與后面層的密集連接(Dense connection),網(wǎng)絡(luò)名稱也由此而來(lái)。此外,DenseNet 通過(guò)特征在各通道上的連接實(shí)現(xiàn)特征重用(Feature reuse),使其在參數(shù)和計(jì)算成本更少的情形下實(shí)現(xiàn)比ResNet 更優(yōu)的性能。2017年4 月,谷歌提出專注于在移動(dòng)設(shè)備上的輕量級(jí)神經(jīng)網(wǎng)絡(luò)MobileNetV1(即MobileNet),MobileNetV1把VGG 中的標(biāo)準(zhǔn)卷積層換成深度可分離卷積,MobileNetV2 則加入1×1 卷積核升維,引入短路(Shortcut)且去掉ReLU 激活函數(shù),改為L(zhǎng)inear 激活函數(shù)。對(duì)于移動(dòng)端CNN 模型,其主要設(shè)計(jì)思路在于模型結(jié)構(gòu)設(shè)計(jì)和模型壓縮。ShuffleNet 和Mo?bileNet 通過(guò)設(shè)計(jì)更高效的網(wǎng)絡(luò)結(jié)構(gòu)實(shí)現(xiàn)模型變小和變快。
自2012 年以來(lái),ImageNet 數(shù)據(jù)集中模型較復(fù)雜,分類任務(wù)精度提高,但模型計(jì)算負(fù)載高。而EfficientNet模型以66 M參數(shù)準(zhǔn)確率達(dá)到84.4%,屬于最先進(jìn)模型之一。EfficientNet 為一組CNN 模型,由8個(gè)介于B0和B7之間的模型組成,隨著模型數(shù)量增加,計(jì)算參數(shù)數(shù)量不會(huì)大量增加且準(zhǔn)確度顯著提高。EfficientNet在縮小模型的同時(shí),通過(guò)均勻縮放深度、寬度和分辨率實(shí)現(xiàn)更高效結(jié)果,復(fù)合縮放的第一步為搜索網(wǎng)格,找到固定資源約束下基線網(wǎng)絡(luò)的不同縮放維度之間關(guān)系,確定深度、寬度和分辨率尺寸的合適比例因子,再將基線網(wǎng)絡(luò)縮放至目標(biāo)網(wǎng)絡(luò)。EfficientNet主要構(gòu)建模塊為MBConv,由一個(gè)先擴(kuò)展后壓縮通道的層組成,使用深度可分離卷積,有效減少參數(shù)數(shù)量。本研究所用網(wǎng)絡(luò)模型入口尺寸及參數(shù)量見(jiàn)表2,圖3為Effi?cientNet B0網(wǎng)絡(luò)模型示意圖。
表2 網(wǎng)絡(luò)模型入口尺寸及參數(shù)量Table 2 Detail parameters of CNN models
圖3 EfficientNet B0網(wǎng)絡(luò)模型Fig.3 Architecture of EfficientNet B0
遷移學(xué)習(xí)為一種機(jī)器學(xué)習(xí)技術(shù),指在源領(lǐng)域?qū)W習(xí),為解決特定任務(wù)將知識(shí)應(yīng)用于目標(biāo)領(lǐng)域[24]。深度學(xué)習(xí)中使用頻率最高的方法為基于模型的遷移學(xué)習(xí)。這一方法將訓(xùn)練于源領(lǐng)域數(shù)據(jù)集的CNN模型凍結(jié)全部或部分參數(shù),應(yīng)用在目標(biāo)領(lǐng)域數(shù)據(jù)集,解決目標(biāo)領(lǐng)域訓(xùn)練數(shù)據(jù)不足、訓(xùn)練效率低等問(wèn)題。凍結(jié)大部分參數(shù),訓(xùn)練小部分參數(shù)的遷移學(xué)習(xí)訓(xùn)練方法被稱為微調(diào)。遷移學(xué)習(xí)效果取決于源、目標(biāo)領(lǐng)域及任務(wù)的相似程度,否則會(huì)產(chǎn)生域遷移問(wèn)題。本研究中將ImageNet預(yù)訓(xùn)練模型去除全連接層后保存各層權(quán)重,在Plant Village 數(shù)據(jù)集上進(jìn)行微調(diào),此為第一次遷移。將Plant Village預(yù)訓(xùn)練模型去除全連接層后保存各層權(quán)重,在本地自建玉米病害數(shù)據(jù)集上凍結(jié)全部層進(jìn)行遷移,即第二次遷移。第一次遷移解決域遷移問(wèn)題,減少無(wú)關(guān)模式的干擾;第二次遷移解決訓(xùn)練效率低、資源利用率低以及過(guò)擬合導(dǎo)致的精度下降等問(wèn)題。本文工作流程圖如圖4所示。
圖4 兩階段遷移學(xué)習(xí)工作流程Fig.4 Flow of two-stage transfer learning
在第一次遷移過(guò)程中,學(xué)習(xí)率(Learning rate,lr)設(shè)定10-3~10-6,設(shè)置學(xué)習(xí)率衰減(Learning rate decay),即當(dāng)損失值(交叉熵,Cross-entropy)減少速度變慢時(shí),學(xué)習(xí)率降為原來(lái)的二分之一,耐心值設(shè)置為5;當(dāng)學(xué)習(xí)率最小,損失值在連續(xù)10個(gè)迭代次數(shù)內(nèi)增加或不變時(shí),設(shè)置訓(xùn)練早停(Early stop?ping),此時(shí)訓(xùn)練停止并保存最優(yōu)模型,記錄損失值收斂到最小的訓(xùn)練迭代次數(shù)(Epoch);允許模型最大迭代次數(shù)(Epoch_max)為100;本試驗(yàn)環(huán)境允許單次訓(xùn)練批處理數(shù)目(Batch_size)為32,訓(xùn)練集共49 193張圖片,經(jīng)過(guò)1 538個(gè)步長(zhǎng)(Steps)后完成一輪epoch。batch 訓(xùn)練過(guò)程不作為參考,僅記錄每輪epoch結(jié)束后準(zhǔn)確率、損失值變化。鑒于ReLU激活函數(shù)存在“死神經(jīng)元”現(xiàn)象,采用效果優(yōu)于ReLU的Mish[25]激活函數(shù),其表達(dá)式見(jiàn)式(1)。選擇adam優(yōu)化器(Optimizer)。
小數(shù)據(jù)集上訓(xùn)練深度CNN 時(shí)容易過(guò)擬合,Dropout 通過(guò)阻止特征檢測(cè)器共同作用防止過(guò)擬合,提高神經(jīng)網(wǎng)絡(luò)性能[26]。第一次遷移過(guò)程中設(shè)置Dropout 參數(shù)為0.5,即每個(gè)訓(xùn)練批次均忽略50%的特征檢測(cè)器(50%隱層節(jié)點(diǎn)值為0),減少特征檢測(cè)器(隱層節(jié)點(diǎn))的相互依賴,使模型不依賴局部特征,增強(qiáng)泛化性。
在第二次遷移過(guò)程中,學(xué)習(xí)率設(shè)定10-4~10-7,設(shè)置學(xué)習(xí)率衰減和訓(xùn)練早停,減少學(xué)習(xí)率衰減耐心值到5,早停耐心值到3,epoch_max 和batch_size 保持不變。訓(xùn)練集共1 892 張圖片,經(jīng)過(guò)60 個(gè)步長(zhǎng)(steps)后完成1 個(gè)epoch。使用Mish 激活函數(shù)和adam優(yōu)化器,設(shè)置Dropout參數(shù)為0.5。
考慮到PlantVillage 數(shù)據(jù)集內(nèi)有39 個(gè)分類,以混淆矩陣作為分類評(píng)判指標(biāo)存在困難,同時(shí)有誤導(dǎo)性,本文在兩次遷移過(guò)程中均使用準(zhǔn)確度(Accu?racy,下文中簡(jiǎn)稱為Acc,其余指標(biāo)同理)、靈敏度(Sensitivity,Sen)、特異性(Specificity,Spe)、精準(zhǔn)度(Precision,Pre)以及F1分?jǐn)?shù)(F1 score,F(xiàn)1)作為模型的評(píng)價(jià)指標(biāo)。準(zhǔn)確度為所有樣本中正確分類樣本的比率;靈敏度為所有真實(shí)陽(yáng)性中正確預(yù)測(cè)陽(yáng)性的比率,體現(xiàn)模型對(duì)陽(yáng)性樣本的識(shí)別能力;特異性為所有真陰性中正確預(yù)測(cè)陰性的比率,體現(xiàn)模型對(duì)陰性樣本的識(shí)別能力;精準(zhǔn)度為所有陽(yáng)性識(shí)別中正確預(yù)測(cè)陽(yáng)性的比例,體現(xiàn)模型對(duì)陽(yáng)性樣本的識(shí)別精準(zhǔn)度。F1 分?jǐn)?shù)用于評(píng)估模型性能,是基于精準(zhǔn)度與靈敏度計(jì)算得到的指標(biāo),用于衡量模型識(shí)別能力。
上述指標(biāo)除F1 分?jǐn)?shù)外,均可通過(guò)真陽(yáng)性(TP)、真陰性(TN)、假陽(yáng)性(FP)和假陰性(FN)四個(gè)指標(biāo)進(jìn)行計(jì)算,計(jì)算公式如式(2)~(6)所示。
在第一次遷移學(xué)習(xí)過(guò)程中,本文將ImageNet預(yù)訓(xùn)練模型在Plant Village 數(shù)據(jù)集上進(jìn)行遷移學(xué)習(xí)并微調(diào)。根據(jù)2.5 節(jié)模型評(píng)價(jià)指標(biāo),表3 給出第一次遷移中模型平均準(zhǔn)確度、敏感性、特異性、精準(zhǔn)度以及F1 分?jǐn)?shù),下劃線表示最優(yōu)模型與最優(yōu)性能。如表3所示,在第一次遷移學(xué)習(xí)過(guò)程中,所有模型準(zhǔn)確度和特異性均超過(guò)99%,表現(xiàn)較為理想,但各模型靈敏度和精確度值存在較大差異。說(shuō)明各模型對(duì)負(fù)樣本區(qū)分能力較強(qiáng),考慮到樣本分布不平衡導(dǎo)致準(zhǔn)確度失去參考價(jià)值,因此本階段不以準(zhǔn)確度為主要模型優(yōu)劣判別指標(biāo)。表3 中EfficientNet B4 模型具有最高靈敏度、最高精確度和最高F1 分?jǐn)?shù),為全部ImageNet 預(yù)訓(xùn)練模型中最優(yōu)模型。除EfficientNet B4 模型外,EfficientNet B5模型和Inception V3 模型為第一階段遷移學(xué)習(xí)過(guò)程中top3 模型,B4 比B5 模型平均靈敏度高1.37%,B5 模型比Inception V3 模型的平均靈敏度僅高0.07%,可見(jiàn)top3模型性能差距小。VGG19平均靈敏度僅為89.08%,F(xiàn)1分?jǐn)?shù)為0.8960,效果最差。
表3 ImageNet預(yù)訓(xùn)練模型遷移學(xué)習(xí)表現(xiàn)(第一階段)Table 3 Performance of ImageNet pretrained models(The first stage)(%)
本文與Chen 等研究結(jié)果一致,ImageNet 預(yù)訓(xùn)練模型具有強(qiáng)大特征提取能力[16]。對(duì)比Ferentinos等[27]以Plant Village為基礎(chǔ)構(gòu)建的數(shù)據(jù)集(包含25種植物,58種類別,共計(jì)87 848張圖片)進(jìn)行病害識(shí)別時(shí),經(jīng)典CNN 最高達(dá)到99.53%的準(zhǔn)確率,可見(jiàn)訓(xùn)練數(shù)據(jù)充足與否影響準(zhǔn)確率。理論上層數(shù)更深,結(jié)構(gòu)更復(fù)雜的網(wǎng)絡(luò)可更好提取特征,同時(shí)需要更多訓(xùn)練數(shù)據(jù)。因此,遷移學(xué)習(xí)訓(xùn)練方法能夠有效提高資源利用率,降低模型過(guò)擬合風(fēng)險(xiǎn)。但本階段遷移訓(xùn)練中的VGG19 模型靈敏度較低,即對(duì)正例的區(qū)分度不夠,與以往網(wǎng)絡(luò)結(jié)構(gòu)性能研究結(jié)論相符,但可能出現(xiàn)域遷移問(wèn)題。理論上,Ima?geNet 預(yù)訓(xùn)練模型具有更好的粗粒度識(shí)別能力,但細(xì)粒度識(shí)別能力可能較差。因此,在表3中,靈敏度較高模型具備較好的“葉片+病斑”細(xì)粒度特征提取能力,即對(duì)相似葉片、相似病斑區(qū)分能力較好。
對(duì)EfficientNet B0至B7模型,各模型準(zhǔn)確度和特異性接近,無(wú)顯著差別。隨著層數(shù)加深,各模型靈敏度和精確度呈先增后降趨勢(shì),在B4 模型達(dá)到最大靈敏度、最大精確度以及最大F1 分?jǐn)?shù)。反映各模型特征提取能力和細(xì)粒度識(shí)別能力的變化趨勢(shì),表明B4模型為該階段最優(yōu)模型。
B0、B1、B2 模型與MobileNet 和MobileNet V2參數(shù)量相似,本研究將對(duì)比其與MobileNet 系列網(wǎng)絡(luò)。在本階段遷移學(xué)習(xí)試驗(yàn)中,作為應(yīng)用在移動(dòng)端的輕量級(jí)網(wǎng)絡(luò),MobileNet 和MobileNet V2 模型性能不亞于深層網(wǎng)絡(luò)模型。參照表2 中模型參數(shù)量,B0 模型參數(shù)量略多于MobileNet 和MobileNet V2模型,但B0模型達(dá)到95.99%的靈敏度和0.9634的F1分?jǐn)?shù),綜合性能優(yōu)于除Inception V3外其他模型。可見(jiàn)B0 模型性能已超越MobileNet 系列模型,具備代替輕量級(jí)網(wǎng)絡(luò)的潛力。
在本階段遷移學(xué)習(xí)過(guò)程中,通過(guò)對(duì)比不同深度EfficientNet、經(jīng)典CNN 網(wǎng)絡(luò)以及輕量級(jí)網(wǎng)絡(luò)Im?ageNet 預(yù)訓(xùn)練模型在PlantVillage 數(shù)據(jù)集上表現(xiàn),各模型負(fù)樣本識(shí)別能力較好,考慮正樣本識(shí)別能力以及識(shí)別精準(zhǔn)度,EfficientNet B4 模型識(shí)別不同植物葉片、不同病害效果最好,B4 模型參數(shù)量介于深層網(wǎng)絡(luò)和輕量級(jí)網(wǎng)絡(luò)之間,為本階段最優(yōu)識(shí)別模型。EfficientNetB0 模型參數(shù)量雖略多于本試驗(yàn)中MobileNet 系列網(wǎng)絡(luò),但識(shí)別能力更優(yōu),可完全替代輕量級(jí)網(wǎng)絡(luò)模型??傮w而言,第一次遷移學(xué)習(xí)使模型獲得ImageNet 預(yù)訓(xùn)練模型提取粗粒度特征的能力,擴(kuò)充訓(xùn)練數(shù)據(jù)量,同時(shí)避免直接進(jìn)行“ImageNet-Local”遷移學(xué)習(xí)時(shí),樣本量較少導(dǎo)致的域遷移問(wèn)題。
在2.1 節(jié)模型訓(xùn)練、測(cè)試階段基礎(chǔ)上,本文將EfficientNet B4 模 型、 Inception V3 模 型 以 及ResNet50 模型在本地自建玉米病葉數(shù)據(jù)集上進(jìn)行第二次遷移訓(xùn)練和預(yù)測(cè),即“PlantVillage-Local”遷移過(guò)程。本地玉米病葉數(shù)據(jù)集中,2365 張圖片數(shù)據(jù)被劃分為訓(xùn)練集和測(cè)試集,參與模型訓(xùn)練和測(cè)試過(guò)程,剩余263 張圖片數(shù)據(jù)為2.1 節(jié)提及的預(yù)測(cè)集,用于評(píng)估模型識(shí)別性能。表4給出玉米病葉數(shù)據(jù)集上所有模型的平均準(zhǔn)確度、敏感性、特異性、精準(zhǔn)度以及F1 分?jǐn)?shù),下劃線標(biāo)記的值表示最佳評(píng)價(jià)指標(biāo)。
表4 Plant Village預(yù)訓(xùn)練模型遷移學(xué)習(xí)表現(xiàn)(第二階段)Table 4 Performance of Plant Village pretrained models(The second stage)(%)
與表3相比,表4 中所有模型的性能指標(biāo)均有提升。主要原因如下:首先,相對(duì)于第一次遷移,本階段的源領(lǐng)域和目標(biāo)領(lǐng)域更為相似,細(xì)粒度特征提取效果更好,增強(qiáng)模型性能;其次,參考Too等[28]在未進(jìn)行數(shù)據(jù)增強(qiáng)的Plant Village數(shù)據(jù)集(14 種作物,26 種疾病,共計(jì)54 306 幅圖像)上使用ImageNet 預(yù)訓(xùn)練模型遷移學(xué)習(xí)識(shí)別病害的經(jīng)驗(yàn),除VGG16 外其他模型均達(dá)到90%以上識(shí)別準(zhǔn)確率,而本階段試驗(yàn)使用經(jīng)過(guò)數(shù)據(jù)增強(qiáng)和數(shù)據(jù)增廣的Plant Village 數(shù)據(jù)集,對(duì)模型性能產(chǎn)生積極影響;最后,考慮到本地?cái)?shù)據(jù)集規(guī)模較小,且均為玉米葉片,類間差距較大,病斑區(qū)分度高,而第一階段的Plant Village 數(shù)據(jù)集類間差距小,病斑區(qū)分度低,識(shí)別難度下降,導(dǎo)致精度升高。
與第一階段類似,本階段所有模型的準(zhǔn)確度和特異性均達(dá)到較高水平,但敏感性和精確度存在較大差距。EfficientNet B4 模型在本階段訓(xùn)練中敏感性、精確度和F1 分?jǐn)?shù)均為最優(yōu),因此為兩階段遷移學(xué)習(xí)過(guò)程中表現(xiàn)最優(yōu)的網(wǎng)絡(luò)模型。
EfficientNet B4、Inception V3 和ResNet50 模型為第二階段遷移學(xué)習(xí)過(guò)程中的top3 模型,且B4 模型比Inception V3 模型的平均靈敏度高0.36%,In?ception V3 模型比ResNet50 模型的平均靈敏度僅高0.03%,因此本階段遷移學(xué)習(xí)中top3模型性能差距較小。相比于上階段遷移學(xué)習(xí),VGG19 的平均靈敏度上升至93.76%,F(xiàn)1 分?jǐn)?shù)增至0.9381,對(duì)比之下仍為最差模型。除VGG19 外,其余模型的靈敏度均超過(guò)96%,F(xiàn)1 分?jǐn)?shù)均在0.97 以上,試驗(yàn)結(jié)果表明,相比于ImageNet 預(yù)訓(xùn)練模型,PlantVillage上的預(yù)訓(xùn)練模型在玉米病葉數(shù)據(jù)集上具有更好識(shí)別效果。
參與本階段遷移學(xué)習(xí)的8個(gè)EfficientNet模型依然保持與第一階段類似的模型特點(diǎn),即靈敏度和精確度的先升高后降低,B4 模型為EfficientNet 模型中最優(yōu)模型。B0 模型達(dá)到97.81%的靈敏度和0.9780 的F1 分?jǐn)?shù),綜合性能優(yōu)于除Inception V3、ResNet50外的其他模型。兩階段試驗(yàn)中的Efficient?Net模型變化趨勢(shì)與Atila等的結(jié)論相似,本試驗(yàn)考查B0、B1、B2模型取代輕量級(jí)網(wǎng)絡(luò)的潛力,且綜合Sen、Pre 及F1 分?jǐn)?shù)后,發(fā)現(xiàn)B0 模型性能優(yōu)于MobileNet系列網(wǎng)絡(luò)[20]。
在兩階段的遷移學(xué)習(xí)過(guò)程中,EfficientNet B4模型的五個(gè)評(píng)價(jià)指標(biāo)均為最優(yōu)。尤其在第二次遷移中,以99.10%的靈敏度、99.05%的精確度以及0.9908的F1分?jǐn)?shù)超越所有模型。此外,Efficient?Net B4模型參數(shù)量為19.467M,介于DenseNet201和MobileNet 之間。綜合看來(lái),EfficientNet B4 模型對(duì)復(fù)雜背景下玉米病葉識(shí)別效果最佳。
在上述模型訓(xùn)練、測(cè)試階段基礎(chǔ)上,本文分別繪制EfficientNet B4模型、Inception V3模型以及ResNet50模型在預(yù)測(cè)集上混淆矩陣,如圖5中a、b和c 所示。橫、縱坐標(biāo)軸分別用0、1、2、3 代表灰斑病、銹病、大斑病以及健康葉四種狀態(tài)。評(píng)估預(yù)測(cè)集圖像數(shù)據(jù)發(fā)現(xiàn),三種模型均能夠?qū)】等~片實(shí)現(xiàn)100%的正確分類,但灰斑病與大斑病之間存在一定程度的誤識(shí)別。對(duì)EfficientNet B4 模型而言,銹病葉片可能被誤判為灰斑病,Inception V3 模型更傾向于將其誤判為大斑病,ResNet50 模型則判別正確。試驗(yàn)結(jié)果表明,采用Mish 激活函數(shù)兩階段遷移學(xué)習(xí)訓(xùn)練方法,能夠提升模型細(xì)粒度和粗粒度識(shí)別能力,解決遷移學(xué)習(xí)中存在的域遷移和樣本不足所導(dǎo)致的過(guò)擬合問(wèn)題。
圖5 Top3模型在預(yù)測(cè)集上的混淆矩陣Fig.5 Confusion matrix of Top3 models on prediction dataset
對(duì)于小規(guī)模玉米病葉數(shù)據(jù)集,兩階段遷移學(xué)習(xí)方法可解決域遷移問(wèn)題和小樣本問(wèn)題,且混用實(shí)驗(yàn)室圖片數(shù)據(jù)和真實(shí)圖片數(shù)據(jù)可增強(qiáng)模型的環(huán)境魯棒性。EfficientNet B4 模型參數(shù)量少于經(jīng)典深層網(wǎng)絡(luò),識(shí)別性能也超過(guò)先進(jìn)模型。與輕量級(jí)網(wǎng)絡(luò)參數(shù)量近似的B0 模型在性能上優(yōu)于先進(jìn)模型,可完全作為移動(dòng)端模型部署于農(nóng)機(jī)。對(duì)小規(guī)模數(shù)據(jù)集下葉部病害識(shí)別,本研究提供有效的訓(xùn)練方法和應(yīng)用實(shí)例,后續(xù)將擴(kuò)充病葉數(shù)據(jù)集內(nèi)的作物種類與病害類別,尤其是收集早期病斑細(xì)粒度識(shí)別樣本和復(fù)雜背景病斑樣本。此外,從服務(wù)器端模型到移動(dòng)端農(nóng)業(yè)設(shè)備應(yīng)用存在成本問(wèn)題。