摘 要:番茄葉發(fā)生較為普遍,現(xiàn)有的檢測(cè)手段存在檢測(cè)效率和準(zhǔn)確性不高的問題。因此,利用深度學(xué)習(xí)技術(shù)對(duì)番茄葉進(jìn)行診斷意義重大。近年來,以卷積神經(jīng)網(wǎng)絡(luò)(CNN)為代表的作物病害診斷方法憑借較強(qiáng)的特征抽取能力,已成為作物病害診斷的一種重要手段。為了解決傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)模型規(guī)模大、訓(xùn)練時(shí)間長(zhǎng)的問題,擬基于MobileNetV3網(wǎng)絡(luò)模型,通過模型壓縮、模型結(jié)構(gòu)和損耗函數(shù)的改進(jìn),以及訓(xùn)練參數(shù)的優(yōu)化,實(shí)現(xiàn)基于MobileNetV3的網(wǎng)絡(luò)模型。試驗(yàn)證明,在測(cè)試用例上,提出的方法能有效地提高識(shí)別率,減少運(yùn)算量。同時(shí),該方法能夠提高系統(tǒng)的識(shí)別率。
關(guān)鍵詞:番茄葉片病害識(shí)別;卷積神經(jīng)網(wǎng)絡(luò);遷移學(xué)習(xí);MobileNetV3
中圖分類號(hào):S436.412 文獻(xiàn)標(biāo)志碼:B 文章編號(hào):2095–3305(2024)07–00-03
近年來,由于計(jì)算機(jī)技術(shù)的快速發(fā)展,基于深度學(xué)習(xí)的計(jì)算機(jī)視覺研究得到了長(zhǎng)足的發(fā)展。作為一種常見的深度網(wǎng)絡(luò),卷積神經(jīng)網(wǎng)絡(luò)在圖像、視頻等方面有著廣泛的應(yīng)用。卷積神經(jīng)網(wǎng)絡(luò)是一種基于卷積神經(jīng)網(wǎng)絡(luò)的對(duì)象檢測(cè)方法,它是一種模仿人眼視覺的方法,可以實(shí)現(xiàn)對(duì)物體的特征提取與分類[1]。卷積神經(jīng)網(wǎng)絡(luò)是一種高效的特征抽取方法,可以從圖像中有效地獲取關(guān)鍵信息,并對(duì)其進(jìn)行自動(dòng)分類。
1 研究方法
以MobileNetV3為研究對(duì)象,在此基礎(chǔ)上,對(duì)其模型進(jìn)行了壓縮與完善。MobileNetV3網(wǎng)絡(luò)由卷積層、池化層和完全連通層三部分構(gòu)成[2]。第二層卷積由2個(gè)1×2卷積和1個(gè)3×3卷積構(gòu)成,用于提取圖像的特征。其中,完全連通層為6×6卷積網(wǎng)絡(luò),可以對(duì)標(biāo)記進(jìn)行預(yù)測(cè)。最后的完全連通層是3×3卷積和2×3×3卷積,實(shí)現(xiàn)標(biāo)記信息的輸出。當(dāng)前,卷積神經(jīng)網(wǎng)絡(luò)存在對(duì)圖像進(jìn)行標(biāo)準(zhǔn)化處理的問題,即首先對(duì)圖像進(jìn)行歸一化處理,然后對(duì)其進(jìn)行反卷積運(yùn)算,獲得相應(yīng)的特征信息,最后由完整連通層輸出。但其具有數(shù)據(jù)規(guī)模龐大、運(yùn)算量大的不足。
為了降低計(jì)算復(fù)雜度,利用SGD算法優(yōu)化了移動(dòng)網(wǎng)絡(luò)V3模型的參數(shù)。SGD是一種基于Sigmoid函數(shù)的快速迭代算法,可以調(diào)節(jié)梯度遞減學(xué)習(xí)速率。Sigmoid由于是一個(gè)指數(shù)型的,可以很好地解決梯度下降法中容易陷入局部極小的問題。
1.1 模型壓縮
MobileNetV3模型使用的是卷積運(yùn)算,而卷積運(yùn)算的權(quán)重固定不變,若將其直接用于小樣本的訓(xùn)練,極易造成網(wǎng)絡(luò)過擬合,從而影響預(yù)測(cè)精度。因此,網(wǎng)絡(luò)模型的壓縮顯得尤為重要。在對(duì)網(wǎng)絡(luò)進(jìn)行壓縮時(shí),首先確定網(wǎng)絡(luò)的權(quán)重,然后調(diào)整各單元的權(quán)值,最后利用SGD算法優(yōu)化各單元的權(quán)值。在樣本較少的情況下,可以將訓(xùn)練集劃分為若干子集。試驗(yàn)結(jié)果表明,該方法的預(yù)測(cè)精度較原預(yù)測(cè)方法提高了4%,所以選擇了最優(yōu)模型為基本模型。
1.2 改進(jìn)的輕量級(jí)卷積神經(jīng)網(wǎng)絡(luò)模型
傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)的參數(shù)選擇主要依賴于訓(xùn)練誤差[3]。針對(duì)此問題,本研究提出一種基于卷積神經(jīng)網(wǎng)絡(luò)的新型卷積神經(jīng)網(wǎng)絡(luò)方法,通過以下幾個(gè)方面的研究:(1)將卷積核轉(zhuǎn)化為1×4卷積核,省去了解卷積的步驟;(2)對(duì)卷積核進(jìn)行縮放運(yùn)算;(3)采用LeakyRe LU替代ReLU,使得該算法更輕量化。
試驗(yàn)結(jié)果顯示:(1)該方法在應(yīng)用于番茄葉數(shù)據(jù)集時(shí),其運(yùn)算速度比原有的MobileNetV3模型快3倍以上,并且在檢測(cè)速度上有較大的提升。(2)該方法的識(shí)別準(zhǔn)確率明顯高于原有方法;在參數(shù)個(gè)數(shù)上,該算法相當(dāng)于原算法的1/3,從而大幅度降低了參數(shù)個(gè)數(shù)。(3)該方法能有效提高檢測(cè)的速度。(4)該方法在應(yīng)用于番茄葉分類識(shí)別方面有較大的優(yōu)越性。(5)采用輕量化的網(wǎng)絡(luò)結(jié)構(gòu)LMN,降低模型的參數(shù)個(gè)數(shù),提高模型的執(zhí)行效率。(6)該方法利用卷積神經(jīng)網(wǎng)絡(luò)中的3×3卷積核代替?zhèn)鹘y(tǒng)的2×2卷積核,既能保證計(jì)算精度,又能適應(yīng)輕量化的網(wǎng)絡(luò)結(jié)構(gòu)[4]。
2 數(shù)據(jù)集的準(zhǔn)備
為了驗(yàn)證該方法在番茄葉診斷中的有效性,擬采用已公布的番茄葉部疾病數(shù)據(jù)庫(VTDCD),對(duì)該模型進(jìn)行訓(xùn)練與檢驗(yàn)。試驗(yàn)過程中,收集了18幅番茄葉片病害和1幅非番茄葉片病害的影像,其中番茄葉片病害12幅,非番茄葉片病害數(shù)據(jù)集共13幅,包括霜霉病、葉斑、白粉病、炭疽病、枯萎病、黑星病、赤星病、黃化癥等。按發(fā)病程度,將各病害劃分為1級(jí)灰霉、4級(jí)病害,各8幅圖片。病害類型的鑒別困難程度也不同,灰葡萄孢在圖像上的像素?cái)?shù)很少,但在圖像上的像素?cái)?shù)很大,而且分布不均勻。
通過對(duì)不同類型疾病的分類,建立了同一類別的疾病分類模型。為提高模型的訓(xùn)練效率,從樣本集中隨機(jī)選取部分圖像并組成測(cè)試集。其中,灰葡萄孢灰霉菌侵染10份,病害10份,其中僅1份為灰霉病,8份中僅1份為疫病。試驗(yàn)選擇了訓(xùn)練集作為試驗(yàn)樣本。每種病害類別抽取100個(gè)樣本作為模型的訓(xùn)練樣本。該方法首先對(duì)樣本進(jìn)行預(yù)處理,然后再對(duì)樣本進(jìn)行訓(xùn)練,最后用樣本集對(duì)模型的有效性進(jìn)行檢驗(yàn)。
為了檢驗(yàn)該方法的有效性,在同一樣本上對(duì)多個(gè)模型進(jìn)行了檢驗(yàn)。在此基礎(chǔ)上,擬對(duì)所采集的圖像進(jìn)行訓(xùn)練,提高模型的多樣性。在試驗(yàn)中,對(duì)訓(xùn)練好的訓(xùn)練樣本進(jìn)行訓(xùn)練。針對(duì)圖像預(yù)處理后的圖像尺寸與原始圖像尺寸相近的特點(diǎn),將其分為2個(gè)階段:訓(xùn)練階段和試驗(yàn)階段。試驗(yàn)結(jié)果顯示,在對(duì)原始數(shù)據(jù)進(jìn)行預(yù)處理后,對(duì)原始數(shù)據(jù)進(jìn)行檢測(cè)的方法,其正確率要比直接檢測(cè)高(圖1)。
3 模型訓(xùn)練與參數(shù)優(yōu)化
Adam算法是一種基于梯度下降的優(yōu)化算法,其基本原理是通過優(yōu)化梯度,找到全局最優(yōu)解,然后將其應(yīng)用于各個(gè)參數(shù),重復(fù)不斷地調(diào)整超參數(shù)以使模型達(dá)到最優(yōu)。研究中采用Adam優(yōu)化算法對(duì)模型的超參數(shù)進(jìn)行優(yōu)化,使用的訓(xùn)練集是一個(gè)包含593張番茄葉片數(shù)據(jù)的圖像數(shù)據(jù)集,而測(cè)試集是在原數(shù)據(jù)集中隨機(jī)選取的。為了能夠?qū)W(wǎng)絡(luò)進(jìn)行訓(xùn)練,在訓(xùn)練過程中將圖像進(jìn)行了大小為256×256的像素級(jí)別裁剪。其中,將圖像裁剪為256×256和1024×1024的2種規(guī)格,是為了保證在訓(xùn)練過程中,這2種規(guī)格能夠在神經(jīng)網(wǎng)絡(luò)中同時(shí)起到作用。
訓(xùn)練過程中,選取了不同的超參數(shù)進(jìn)行試驗(yàn)。其中,權(quán)重初始化為0.000 1,最大學(xué)習(xí)率為0.000 1,初始連接層個(gè)數(shù)為5,步長(zhǎng)為0.02。試驗(yàn)中設(shè)定訓(xùn)練時(shí)間為30 min。為了防止過擬合現(xiàn)象出現(xiàn),還利用交叉熵?fù)p失函數(shù)。為了更好地獲取模型性能,對(duì)照參數(shù)進(jìn)行了優(yōu)化。
4 試驗(yàn)結(jié)果分析與方法
試驗(yàn)素材包括訓(xùn)練集和測(cè)試集,采用交叉驗(yàn)證方法進(jìn)行。為了提高模型的泛化能力,將模型在測(cè)試集上的表現(xiàn)作為訓(xùn)練集,訓(xùn)練集的數(shù)據(jù)來自網(wǎng)絡(luò)公開數(shù)據(jù)集 Tokenized Volume,共包含7個(gè)類別的葉片病害圖像數(shù)據(jù)集。為驗(yàn)證改進(jìn)后的模型在不同網(wǎng)絡(luò)模型大小下識(shí)別葉片病害的性能,對(duì)MobileNetV3網(wǎng)絡(luò)進(jìn)行模型壓縮處理,將其分為大小為3×3的測(cè)試集、5×5的訓(xùn)練集和16×16的測(cè)試集3部分。經(jīng)過壓縮處理后的網(wǎng)絡(luò)模型,在測(cè)試集上識(shí)別準(zhǔn)確率達(dá)到93.2%,而MobileNetV3網(wǎng)絡(luò)模型在測(cè)試集上識(shí)別準(zhǔn)確率為81.3%。經(jīng)過壓縮后網(wǎng)絡(luò)模型在測(cè)試集上的分類精度顯著提高。
為了進(jìn)一步驗(yàn)證該網(wǎng)絡(luò)模型在實(shí)際應(yīng)用中的性能,將MobileNetV3網(wǎng)絡(luò)模型與改進(jìn)前的MobileNetV3網(wǎng)絡(luò)模型進(jìn)行對(duì)比。為了便于對(duì)比分析,分別使用訓(xùn)練集數(shù)據(jù)和測(cè)試集數(shù)據(jù)訓(xùn)練了2個(gè)網(wǎng)絡(luò)模型,以驗(yàn)證改進(jìn)后的MobileNetV3網(wǎng)絡(luò)模型的有效性。訓(xùn)練過程中使用交叉驗(yàn)證方法對(duì)參數(shù)進(jìn)行優(yōu)化,并獲得2個(gè)模型在不同參數(shù)下識(shí)別準(zhǔn)確率的曲線圖(圖2)。
4.1 模型壓縮前后的識(shí)別準(zhǔn)確率對(duì)比方法
在試驗(yàn)過程中,分別對(duì)MobileNetV3網(wǎng)絡(luò)模型進(jìn)行了壓縮,并在訓(xùn)練過程中使用交叉驗(yàn)證法對(duì)模型參數(shù)進(jìn)行優(yōu)化,使其在不同的網(wǎng)絡(luò)模型大小下都具有較高的識(shí)別準(zhǔn)確率。為了分析不同網(wǎng)絡(luò)模型大小對(duì)識(shí)別準(zhǔn)確率的影響,對(duì)MobileNetV3網(wǎng)絡(luò)進(jìn)行了壓縮處理,并使用訓(xùn)練集數(shù)據(jù)和測(cè)試集數(shù)據(jù)對(duì)其進(jìn)行訓(xùn)練,以驗(yàn)證該網(wǎng)絡(luò)模型在不同的網(wǎng)絡(luò)模型大小下的識(shí)別準(zhǔn)確率。因此,提出的改進(jìn)后MobileNetV3網(wǎng)絡(luò)模型具有良好的識(shí)別效果。
4.2 不同網(wǎng)絡(luò)模型大小的識(shí)別準(zhǔn)確率對(duì)比方法
為了對(duì)比不同網(wǎng)絡(luò)模型大小對(duì)番茄葉片病害識(shí)別準(zhǔn)確率的影響,利用訓(xùn)練集和測(cè)試集分別對(duì)MobileNet V3網(wǎng)絡(luò)模型與改進(jìn)后的MobileNetV3網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練,并對(duì)比不同網(wǎng)絡(luò)模型大小的識(shí)別準(zhǔn)確率結(jié)果顯示,隨著網(wǎng)絡(luò)模型大小的增加,其在測(cè)試集上識(shí)別準(zhǔn)確率逐漸降低,當(dāng)網(wǎng)絡(luò)模型大小為16×16時(shí),其在訓(xùn)練集上識(shí)別準(zhǔn)確率為92.3%,而在測(cè)試集上識(shí)別準(zhǔn)確率僅為81.3%。這主要是因?yàn)榫W(wǎng)絡(luò)模型越大,其特征提取能力越強(qiáng),但其計(jì)算量也隨之增加。當(dāng)網(wǎng)絡(luò)模型大小達(dá)到一定程度時(shí),對(duì)訓(xùn)練集和測(cè)試集的特征提取能力已經(jīng)沒有過大的提升空間。為了進(jìn)一步驗(yàn)證改進(jìn)后的MobileNetV3網(wǎng)絡(luò)模型對(duì)番茄葉片病害識(shí)別準(zhǔn)確率的影響,將網(wǎng)絡(luò)模型分為大小為3×3、5×5和16×16三部分進(jìn)行訓(xùn)練和測(cè)試[5]。
4.3 交叉驗(yàn)證法
交叉驗(yàn)證法是一種用于尋找最優(yōu)參數(shù)的優(yōu)化方法,其目標(biāo)是選擇一個(gè)或多個(gè)在訓(xùn)練集上表現(xiàn)良好的參數(shù),然后用此參數(shù)測(cè)試不同的測(cè)試集數(shù)據(jù),比較其識(shí)別準(zhǔn)確率。隨著網(wǎng)絡(luò)模型深度的增加,其識(shí)別準(zhǔn)確率逐漸降低,但模型在深度為2、3、4和5層時(shí)的識(shí)別準(zhǔn)確率均達(dá)到90%以上。試驗(yàn)中沒有使用更深的網(wǎng)絡(luò)模型進(jìn)行研究,主要是因?yàn)檩^深的網(wǎng)絡(luò)模型訓(xùn)練時(shí)間較長(zhǎng)且其識(shí)別準(zhǔn)確率會(huì)隨著網(wǎng)絡(luò)深度的增加而降低。此外,在實(shí)際應(yīng)用中,為提高識(shí)別準(zhǔn)確率,一般會(huì)使用更深的網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練。由于采用改進(jìn)后的輕量級(jí)卷積神經(jīng)網(wǎng)絡(luò)MobileNetV3,相較于普通卷積神經(jīng)網(wǎng)絡(luò)MobileNetV3的網(wǎng)絡(luò)訓(xùn)練時(shí)間,較深網(wǎng)絡(luò)模型訓(xùn)練時(shí)間大幅縮短,因此在實(shí)際應(yīng)用中更具有優(yōu)勢(shì)。
5 模型的可視化分析
改進(jìn)后的MobileNetV3模型采用的是輕量級(jí)模型,但由于其尺寸較小,在處理大規(guī)模數(shù)據(jù)時(shí)仍會(huì)出現(xiàn)梯度爆炸問題。因此,為了避免出現(xiàn)該問題,需要在模型訓(xùn)練過程中適當(dāng)調(diào)整損失函數(shù),使其盡可能地收斂。同時(shí),為了保證在模型訓(xùn)練過程中能夠及時(shí)檢測(cè)到訓(xùn)練的參數(shù),需要及時(shí)調(diào)整網(wǎng)絡(luò)。由于圖像特征的提取是一個(gè)相對(duì)復(fù)雜的過程,因此通過使用CNN自適應(yīng)權(quán)重更新算法調(diào)整卷積層的權(quán)重,實(shí)現(xiàn)模型的優(yōu)化。該方法充分利用了CNN所具有的多尺度和深層特征提取能力,加快了圖像特征提取速度。同時(shí),在損失函數(shù)中加入了梯度下降法進(jìn)行優(yōu)化。經(jīng)過對(duì)試驗(yàn)數(shù)據(jù)進(jìn)行訓(xùn)練后,將測(cè)試數(shù)據(jù)與訓(xùn)練集一起進(jìn)行測(cè)試。通過可視化分析可知,改進(jìn)后的網(wǎng)絡(luò)模型在測(cè)試集上取得了較好的分類效果(準(zhǔn)確率為92.8%)。
5.1 測(cè)試集分類效果
通過對(duì)試驗(yàn)數(shù)據(jù)集進(jìn)行預(yù)處理,使其更適合模型的訓(xùn)練。在預(yù)處理時(shí),對(duì)于原始圖像進(jìn)行裁剪,再對(duì)圖像進(jìn)行旋轉(zhuǎn)、放大、鏡像等操作,使其更符合模型的訓(xùn)練要求。對(duì)于預(yù)處理后的圖像使用Focus進(jìn)行裁剪,裁剪后的圖像使用RGB模式進(jìn)行顯示。改進(jìn)后的MobileNetV3模型在測(cè)試集上的準(zhǔn)確率為92.8%,高于采用VGG16、ResNet50等傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)模型對(duì)測(cè)試集進(jìn)行分類,同時(shí)在一定程度上減少了計(jì)算量,提高了模型的訓(xùn)練效率。該模型在識(shí)別番茄病害時(shí),準(zhǔn)確率為92.8%。檢測(cè)到病害的葉片數(shù)為72個(gè),其中有32個(gè)病害葉片被正確識(shí)別。
5.2 模型收斂速度
為了對(duì)模型的收斂速度進(jìn)行評(píng)價(jià),使用了2種方法,分別是單次訓(xùn)練法和多次訓(xùn)練法。單次訓(xùn)練法是指在訓(xùn)練過程中只使用一次網(wǎng)絡(luò)模型的參數(shù),多次訓(xùn)練法是指在每次訓(xùn)練過程中都使用多次參數(shù)進(jìn)行訓(xùn)練。由于單次訓(xùn)練法和多次訓(xùn)練法都需要調(diào)整模型參數(shù),因此兩者的收斂速度存在明顯差異。因此,通過試驗(yàn)對(duì)比了這2種方法對(duì)網(wǎng)絡(luò)模型收斂速度的影響。其中,將設(shè)計(jì)的MobileNetV3模型與經(jīng)典的卷積神經(jīng)網(wǎng)絡(luò)(如VGG)和ResNet50等進(jìn)行對(duì)比,發(fā)現(xiàn)經(jīng)過改進(jìn)后的MobileNetV3模型在收斂速度上優(yōu)于其他2種模型。試驗(yàn)結(jié)果表明,通過引入自適應(yīng)權(quán)重更新算法和優(yōu)化損失函數(shù),MobileNetV3模型的收斂速度明顯加快,這一點(diǎn)符合預(yù)期。
6 結(jié)束語
試驗(yàn)結(jié)果表明,在不降低識(shí)別精度的前提下,改進(jìn)了MobileNetV3模型的結(jié)構(gòu)和損失函數(shù),將網(wǎng)絡(luò)大小縮小3倍,計(jì)算成本降低40%。改進(jìn)后的模型不僅可以達(dá)到較高的分類精度,還具有較低的計(jì)算成本。該模型可應(yīng)用于農(nóng)業(yè)領(lǐng)域中對(duì)番茄葉片病害進(jìn)行快速、準(zhǔn)確地識(shí)別,具有較好的應(yīng)用前景。
參考文獻(xiàn)
[1] 苗榮慧,李志偉,武錦龍.基于改進(jìn)YOLO v7的輕量化櫻桃番茄成熟度檢測(cè)方法[J].農(nóng)業(yè)機(jī)械學(xué)報(bào),2023,54(10):225 -233.
[2] 周巧黎,馬麗,曹麗英,等.基于改進(jìn)輕量級(jí)卷積神經(jīng)網(wǎng)絡(luò)MobileNetV3的番茄葉片病害識(shí)別[J].智慧農(nóng)業(yè)(中英文), 2022,4(1):47-56.
[3] 胡玲艷,周婷,許巍,等.面向番茄病害識(shí)別的改進(jìn)型Sque-ezeNet輕量級(jí)模型[J].鄭州大學(xué)學(xué)報(bào)(理學(xué)版),2022, 54(4): 71-77.
[4] 羅鳴,方睿,徐銘美,等.基于遷移學(xué)習(xí)和輕量級(jí)卷積神經(jīng)網(wǎng)絡(luò)農(nóng)作物病害識(shí)別[J].現(xiàn)代計(jì)算機(jī),2021,27(32):16-21.
[5] 賈鶴鳴,郎春博,姜子超.基于輕量級(jí)卷積神經(jīng)網(wǎng)絡(luò)的植物葉片病害識(shí)別方法[J].計(jì)算機(jī)應(yīng)用,2021,41(6):1812-1819.