吳葉輝 李汝嘉 季榮彪 李亞東 孫曉海 陳嬌嬌 楊建平
摘要: 針對(duì)圖像識(shí)別中獲取全局特征的局限性及難以提升識(shí)別準(zhǔn)確性的問題, 提出一種基于隨機(jī)增強(qiáng)Swin-Tiny Transformer輕量級(jí)模型的圖像識(shí)別方法. 該方法在預(yù)處理階段結(jié)合基于隨機(jī)數(shù)據(jù)增強(qiáng)(random data augmentation based enhancement, RDABE)算法對(duì)圖像特征進(jìn)行增強(qiáng), 并采用Transformer的自注意力機(jī)制, 以獲得更全面的高層視覺語義信息. 通過在玉米病害數(shù)據(jù)集上優(yōu)化Swin-Tiny Transformer模型并進(jìn)行參數(shù)微調(diào), 在農(nóng)業(yè)領(lǐng)域的玉米病害上驗(yàn)證了該算法的適用性, 實(shí)現(xiàn)了更精確的病害檢測(cè). 實(shí)驗(yàn)結(jié)果表明, 基于隨機(jī)增強(qiáng)的輕量級(jí)Swin-Tiny+RDABE模型對(duì)玉米病害圖像識(shí)別準(zhǔn)確率達(dá)93.586 7%. 在參數(shù)權(quán)重一致, 與性能優(yōu)秀的輕量級(jí)Transformer、 卷積神經(jīng)網(wǎng)絡(luò)(CNN)系列模型對(duì)比的實(shí)驗(yàn)結(jié)果表明, 改進(jìn)的模型準(zhǔn)確率比Swin-Tiny Transformer,Deit3_[HT5]Small,Vit_[HT5]Small,Mobilenet_[HT5]V3_[HT5]Small,ShufflenetV2和Efficientnet_[HT5]B1_[HT5F]Pruned模型提高了1.187 7%~4.988 1%,且能迅速收斂.
關(guān)鍵詞: Swin-Tiny Transformer模型; 數(shù)據(jù)增強(qiáng); 遷移學(xué)習(xí); 玉米病害識(shí)別; 圖像分類
中圖分類號(hào): TP391文獻(xiàn)標(biāo)志碼: A文章編號(hào): 1671-5489(2024)02-0381-10
Maize Disease Recognition and Application Based onRandom Augmentation Swin-Tiny Transformer
WU Yehui, LI Rujia, JI Rongbiao, LI Yadong, SUN Xiaohai, CHEN Jiaojiao, YANG Jianping
(College of Big Data, Yunnan Agricultural University, Kunming 650201, China)
Abstract: Aiming at the problems of the limitation of obtaining global features in image recognition and the difficulty in improving recognition accuracy, we proposed? an image recognition method based on the lightweight model of random augmentation Swin-Tiny Transformer.? The method combined the random data augmentation based enhancement (RDABE) algorithm to enhance image features in the preprocessing stage, and adopted the Transformers self-attention mechanism to obtain more comprehensive high-level visual semantic information. By optimizing the Swin-Tiny Transformer model and fine-tuning the parameters on a maize disease dataset, the applicability of the algorithm was verified on maize diseases in the agricultural field, and more accurate disease detection was achieved. The experimental results show that the lightweight Swin-Tiny+RDABE model based on stochastic enhancement has an accuracy of 93.586 7% for maize disease image recognition. The experimental results compared with the excellent performance lightweight Transformer and convolutional neural network (CNN) series models with consistent parameter weights show that? the accuracy of the improved model is higher than that of the? Swin-Tiny Transformer, Deit3_Small, Vit Small, Mobilenet_V3_Small, ShufflenetV2 and Efficientnet_B1_Pruned models by 1.187 7% to 4.988 1%, and can converge rapidly.
Keywords: Swin-Tiny Transformer model; data augmentation; transfer learning; maize disease recognition; image classification
圖像分類是計(jì)算機(jī)視覺領(lǐng)域中的一項(xiàng)重要任務(wù). 近年來, 隨著卷積神經(jīng)網(wǎng)絡(luò)(CNN)[1]在圖像分類問題中的廣泛應(yīng)用和不斷發(fā)展, 涌現(xiàn)出了許多性能優(yōu)異的卷積神經(jīng)網(wǎng)絡(luò)模型. 例如, Krizhevsky等[2]在數(shù)據(jù)集ImageNet上提出的AlexNet模型, 以其15.3%的top5錯(cuò)誤率遠(yuǎn)超其他傳統(tǒng)特征提取方法, 引起了深度學(xué)習(xí)領(lǐng)域的廣泛關(guān)注; 陳智超等[3]改進(jìn)了MobileNetv2算法并應(yīng)用于垃圾圖像分類, 通過多種優(yōu)化策略在自建數(shù)據(jù)集上實(shí)現(xiàn)了94.6%的準(zhǔn)確率; 邵偉平等[4]提出了一種輕量化卷積神經(jīng)網(wǎng)絡(luò)YOLO-Slim, 該模型將模型大小減小了90%, 在測(cè)試數(shù)據(jù)集VOC2007上獲得了76.42%的平均精度均值(mAP), 識(shí)別速度為16 ms, 適用于小型圖像處理平臺(tái). 卷積神經(jīng)網(wǎng)絡(luò)擅長解構(gòu)圖像信息和提取底層特征, 但其模型存在缺陷, 如不擅長捕捉圖像全局信息、 卷積操作感受野的局限、 梯度消失問題和信噪比下識(shí)別效果易受影響等[5].
Transformer的出現(xiàn)為解決CNN的這些缺點(diǎn)提供了一種有效方法. Vaswani等[6]引入了Transformer架構(gòu)作為一種新的序列建模方法, 對(duì)輸入序列中的全局依賴關(guān)系進(jìn)行建模, 取得了在翻譯任務(wù)中優(yōu)異的性能, 并在計(jì)算機(jī)視覺領(lǐng)域引起了廣泛關(guān)注. 而Swin Transformer技術(shù)作為其改進(jìn)模型, 不僅具有全局建模能力, 還通過層級(jí)化網(wǎng)絡(luò)結(jié)構(gòu)和移動(dòng)窗口信息交互方式擴(kuò)大感受范圍、 降低計(jì)算量, 適用于不同尺度目標(biāo)的特征提?。?].
隨著計(jì)算機(jī)技術(shù)的深入應(yīng)用和快速發(fā)展, 機(jī)器學(xué)習(xí)已成為農(nóng)作物病害識(shí)別領(lǐng)域的重要研究方向, 同時(shí), 圖像識(shí)別技術(shù)的不斷成熟也促進(jìn)了機(jī)器學(xué)習(xí)技術(shù)與圖像識(shí)別技術(shù)的結(jié)合越來越普及[8]. 玉米作為我國種植面積和總產(chǎn)量最大的糧食作物之一, 對(duì)其進(jìn)行病害檢測(cè)以保障農(nóng)作物產(chǎn)量具有重要意義[9-10].
本文采用基于隨機(jī)數(shù)據(jù)增強(qiáng)的增強(qiáng)算法對(duì)數(shù)據(jù)集進(jìn)行預(yù)處理, 然后在增強(qiáng)的玉米葉片病害數(shù)據(jù)集上采用遷移學(xué)習(xí)進(jìn)行訓(xùn)練. 在訓(xùn)練過程中, 使用輕量級(jí)的Swin-Tiny Transformer模型框架進(jìn)行優(yōu)化, 以分析玉米病害葉片圖像的特征, 并進(jìn)行鑒定.
1 隨機(jī)增強(qiáng)的Swin-Tiny Transformer
本文提出一種基于Swin Transformer模型中的輕量版本Swin-Tiny Transformer為骨干網(wǎng)絡(luò)的圖像識(shí)別模型, 該模型的結(jié)構(gòu)如圖1所示.
首先, 利用基于隨機(jī)數(shù)據(jù)增強(qiáng)算法(random data augmentation based enhancement, RDABE)對(duì)已有數(shù)據(jù)集進(jìn)行數(shù)據(jù)增強(qiáng), 然后在數(shù)據(jù)集ImageNet上預(yù)先訓(xùn)練的Swin Transformer圖像分類模型的tiny版本, 在經(jīng)過增強(qiáng)后的圖像數(shù)據(jù)集上進(jìn)行調(diào)整, 通過玉米病害圖像實(shí)現(xiàn)對(duì)其疾病分類.
該模型的總體框架包括數(shù)據(jù)預(yù)處理、 分類核心網(wǎng)絡(luò)和圖像預(yù)測(cè). 與傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)模型相比, 基于隨機(jī)增強(qiáng)Swin-Tiny Transformer的圖像識(shí)別模型主要進(jìn)行了如下優(yōu)化:
1) 對(duì)玉米葉片病害圖片數(shù)據(jù)集中的訓(xùn)練集在傳入后進(jìn)行數(shù)據(jù)預(yù)處理和數(shù)據(jù)增強(qiáng). 數(shù)據(jù)處理時(shí), 用RDABE算法進(jìn)行數(shù)據(jù)增強(qiáng), 與現(xiàn)有方法相反, RDABE算法是在定義的范圍內(nèi)隨機(jī)生成增強(qiáng)超參數(shù)范圍, 使得其很健壯, 不但提高了模型的泛化能力, 而且防止過度擬合到特定數(shù)據(jù)集.
2) 為得到玉米病害圖像的整體信息及上層視覺語義信息, 本文用Swin-Tiny Transformer作為分類核心網(wǎng)絡(luò). 該主干網(wǎng)絡(luò)的核心采用類似于CNN的分層建構(gòu)方法, 使用不同的下采樣比例對(duì)圖像進(jìn)行下采樣. 在特征提取的整個(gè)過程中, 選擇Swin Transformer的輕量版本Tiny, 它具有較小的計(jì)算量, 但可以加強(qiáng)各分割模塊之間的信息聯(lián)系, 從而更好地提取玉米病害圖像的綜合病害特征, 進(jìn)而能更準(zhǔn)確地識(shí)別和劃分玉米病害的種類.
3) 通過遷移學(xué)習(xí)技術(shù), 將預(yù)訓(xùn)練的Swin-Tiny Transformer模型的權(quán)重信息遷移到改進(jìn)玉米病害檢測(cè)模型中, 從而降低了對(duì)數(shù)據(jù)集大小的要求. 該技術(shù)的最大優(yōu)點(diǎn)是在輕量級(jí)模型已經(jīng)擁有較小計(jì)算量的基礎(chǔ)上, 進(jìn)一步縮短了訓(xùn)練時(shí)間并增加了玉米病害識(shí)別的準(zhǔn)確率.
改進(jìn)的Swin-Tiny Transformer玉米病害識(shí)別模型主要通過對(duì)數(shù)據(jù)預(yù)處理階段進(jìn)行數(shù)據(jù)提升, 然后進(jìn)行玉米病害分類識(shí)別, 并對(duì)模型權(quán)重進(jìn)行調(diào)整, 從而構(gòu)建了基于Swin-Tiny Transformer的玉米病害分類模型.
1.1 基于隨機(jī)數(shù)據(jù)增強(qiáng)的增強(qiáng)算法
在復(fù)雜的深度學(xué)習(xí)(DL)架構(gòu)和使用依賴數(shù)據(jù)集的靜態(tài)超參數(shù)提高數(shù)據(jù)質(zhì)量方面, 由于數(shù)據(jù)質(zhì)量和超參數(shù)對(duì)特定數(shù)據(jù)集的過度擬合, 導(dǎo)致性能依舊受限[11], 如圖2所示. 而RDABE算法是一種生成化、 數(shù)據(jù)獨(dú)立和計(jì)算高效的增強(qiáng)方法, 以此提高DL的植物病害數(shù)據(jù)質(zhì)量. 通過提高圖像的亮度和對(duì)比度提高質(zhì)量, 與現(xiàn)有方法相反, RDABE算法在定義的范圍內(nèi)隨機(jī)生成增強(qiáng)超參數(shù)范圍, 使得其很健壯, 并防止過度擬合到特定數(shù)據(jù)集, 如圖3所示. 傳統(tǒng)RDABE算法嘗試使用直方圖均衡化方法對(duì)顏色對(duì)比度進(jìn)行數(shù)據(jù)增強(qiáng), 以提高圖像質(zhì)量. 但實(shí)驗(yàn)發(fā)現(xiàn), 這種方法與顏色對(duì)比度之間的相關(guān)性較小, 且增強(qiáng)后的數(shù)據(jù)無法很好地突出圖像特征. 數(shù)據(jù)增強(qiáng)技術(shù)是數(shù)據(jù)預(yù)處理的一種重要方法, 通過使用已有的玉米病害圖像訓(xùn)練樣本, 創(chuàng)造出更多不同風(fēng)格的訓(xùn)練數(shù)據(jù), 為使經(jīng)過增強(qiáng)后的圖像樣本更接近真實(shí)情況, 從而提升檢測(cè)的準(zhǔn)確度并增強(qiáng)模型的泛化能力, RDABE算法以數(shù)據(jù)集特征為依據(jù), 限制增強(qiáng)參數(shù)生成范圍, 并綜合考慮數(shù)據(jù)集的統(tǒng)計(jì)特征和數(shù)據(jù)增強(qiáng)策略, 以確保圖像在增強(qiáng)過程中保持語義一致性. 從而可確保數(shù)據(jù)增強(qiáng)過程不會(huì)對(duì)圖像的語義內(nèi)容造成顯著改變, 同時(shí)提高了算法在實(shí)際應(yīng)用中的可靠性和穩(wěn)定性.
使用數(shù)據(jù)增強(qiáng)技術(shù)可增大深度學(xué)習(xí)網(wǎng)絡(luò)的訓(xùn)練數(shù)據(jù)集, 以此處理網(wǎng)絡(luò)的過擬合問題和數(shù)據(jù)樣本分布不均衡的困難, 因?yàn)槠渲苯佑绊懩P偷姆夯芰汪敯粜? 單樣本數(shù)據(jù)增強(qiáng)和多樣本數(shù)據(jù)增強(qiáng)是兩種最常用的數(shù)據(jù)增強(qiáng)方法. 其中, 單樣本數(shù)據(jù)增強(qiáng)方法可基于顏色空間變換或基于幾何變換, 本文使用的RDABE算法即為前者. 相反, 多樣本數(shù)據(jù)增強(qiáng)方法則不是對(duì)單個(gè)樣本進(jìn)行變換, 而是使用多個(gè)圖像樣本生成新的樣本. 該方法通過將離散的樣本點(diǎn)連續(xù)化擬合真實(shí)樣本分布.
本文引入RDABE數(shù)據(jù)增強(qiáng)算法對(duì)玉米病害數(shù)據(jù)進(jìn)行處理, 以提高玉米病害識(shí)別模型的泛化能力. RDABE是一種計(jì)算高效的基于隨機(jī)數(shù)據(jù)增強(qiáng)的增強(qiáng)方法, 除數(shù)據(jù)的選擇是隨機(jī)的, 增強(qiáng)超參數(shù)同樣不是根據(jù)數(shù)據(jù)手動(dòng)選擇的, 因此增強(qiáng)方法不會(huì)過度擬合特定數(shù)據(jù)集. 通過RDABE算法可以改進(jìn)網(wǎng)絡(luò)架構(gòu)的泛化能力, 并提高網(wǎng)絡(luò)模型對(duì)圖像樣本識(shí)別的魯棒性, 與其他先進(jìn)的算法相比, RDABE算法在準(zhǔn)確性和執(zhí)行時(shí)間方面都性能優(yōu)異. RDABE算法的主要原理如下:
1) 設(shè)f(i)是輸入圖像, g(i)是增強(qiáng)后的圖像, 則
g(i)=af(i)+β,(1)
其中α和β為增益和偏置, 用這些參數(shù)調(diào)節(jié)對(duì)比度(α)和亮度(β).
2) 與其他使用固定超參數(shù)進(jìn)行增強(qiáng)并容易在特定數(shù)據(jù)集上過度擬合的增強(qiáng)方法不同, RDABE算法從定義的集合中隨機(jī)選擇α和β的值. 為防止過度擬合, 使用的集合由α和β的正負(fù)值組成, 這些值從該集合中隨機(jī)選取, 然后用于增強(qiáng)數(shù)據(jù).
1.2 基于遷移學(xué)習(xí)的Swin-Tiny Transformer模型
遷移學(xué)習(xí)能使模型在訓(xùn)練初期就達(dá)到較好的性能, 從而縮短訓(xùn)練時(shí)間并降低計(jì)算資源的使用量. 此外, 遷移學(xué)習(xí)還有助于提高訓(xùn)練后模型的魯棒性和泛化能力, 使其性能更好[12].
Transformer模型[6]主要用于自然語言處理. 由于該模型的優(yōu)異性能, 研究人員開始嘗試將Transformer應(yīng)用于計(jì)算機(jī)視覺領(lǐng)域[13], 并取得了很好的效果. Vision Transformer在計(jì)算機(jī)視覺領(lǐng)域性能優(yōu)異, 但其參數(shù)量較大.
文獻(xiàn)[14]提出的Swin Transformer展現(xiàn)了一種滑動(dòng)窗口自注意力機(jī)制, 能在局部窗口上執(zhí)行自注意力機(jī)制(self-attention), 從而有效降低了參數(shù)量, 并且結(jié)合了卷積神經(jīng)網(wǎng)絡(luò)的思想, 采用層次化構(gòu)建方式堆疊Transformer模型, 可同時(shí)提取全局特征并高效并行計(jì)算, 而CNN只能提取局部特征. Swin Transformer分層特征圖如圖4所示.
Swin Transformer算法通過采用滑動(dòng)窗口操作計(jì)算自注意力和層次化構(gòu)建方式建立模型, 允許跨窗口連接, 以降低模型的復(fù)雜度, 提高模型的運(yùn)行效率, 從而極大減少了模型的參數(shù)量, 更好地實(shí)現(xiàn)輕量化目標(biāo). Swin Transfomer模型組成: 窗口多頭自注意力層(W-MSA)、 滑動(dòng)窗口多頭自注意力層 (SW-MSA)、 標(biāo)準(zhǔn)化層(LN)和多層感知機(jī)(MLP).
在對(duì)玉米病害圖片進(jìn)行訓(xùn)練時(shí), Swin-Tiny Transformer模型采用以下步驟進(jìn)行圖像處理: 首先, 使用Patch Partition模塊將圖片進(jìn)行分塊處理, 規(guī)定每個(gè)Patch為4×4相鄰的像素, 并在channel方向進(jìn)行展平; 其次, 圖像通過4個(gè)Stage構(gòu)建特征圖, 在每個(gè)Stage中, 圖像先經(jīng)過Linear Embedding層, 然后剩下的3個(gè)Stage都要經(jīng)過Patch Merging層[15]; 最后, 在圖像通過第4個(gè)Stage后, 會(huì)經(jīng)過Layer Norm層、 全局池化層以及全連接層的處理, 最終得到分類后的圖像[16]. Swin-Tiny Transformer網(wǎng)絡(luò)架構(gòu)的結(jié)構(gòu)如圖1所示.
全局自注意力的計(jì)算復(fù)雜度以平方倍提升, 特別是在進(jìn)行CV領(lǐng)域的下游任務(wù)中處理非常大尺寸的圖片時(shí), 其計(jì)算復(fù)雜度非常高. 針對(duì)該問題, Swin Transformer采用了窗口計(jì)算自注意力的方法. 在每個(gè)窗口內(nèi)進(jìn)行自注意力計(jì)算, 但窗口之間無法進(jìn)行信息傳遞, 因此提出了平移窗口多頭自注意力機(jī)制(SW-MSA)模塊, 使窗口之間能進(jìn)行信息交流[7], 如圖5所示, 從而有效解決了不同窗口之間無法進(jìn)行信息交流的問題.
1.3 模型評(píng)估
為科學(xué)衡量本文模型在玉米植株病害分類任務(wù)中的性能, 采用常用的經(jīng)典性能衡量標(biāo)準(zhǔn), 如準(zhǔn)確率、 精確度、 召回率、 F1分?jǐn)?shù)和混淆矩陣進(jìn)行性能分析, 計(jì)算公式分別為準(zhǔn)確率
F1分?jǐn)?shù)=2×TP/2×TP+FP+FN,(5)其中: TP表示準(zhǔn)確預(yù)測(cè)為玉米病害葉片樣本的數(shù)量, 也稱為真陽性樣本數(shù)量; TN表示被正確預(yù)測(cè)為健康玉米葉片樣本的數(shù)量, 也稱為真陰性樣本數(shù)量; FP表示被錯(cuò)誤預(yù)測(cè)為玉米病害葉片樣本的數(shù)量, 也稱為假陽性樣本數(shù)量; FN表示被錯(cuò)誤預(yù)測(cè)為健康玉米葉片樣本的數(shù)量, 也稱為假陰性樣本數(shù)量.
2 實(shí) 驗(yàn)
2.1 圖像數(shù)據(jù)集
本文使用源于Kaggle的公開可用的玉米葉片病害數(shù)據(jù)集[17], 該圖像數(shù)據(jù)集是用流行數(shù)據(jù)集PlantVillage和PlantDoc制作的[18], 在數(shù)據(jù)集的形成過程中, 刪除了一些無用的圖像. 數(shù)據(jù)集共包含4個(gè)類別圖像集合, 共4 185張玉米葉片圖像, 其中健康玉米葉片圖像1 162張, 感染枯萎病的玉米葉片病害圖像1 146張、 感染銹病的玉米葉片病害圖像1 306張、 感染灰斑病的玉米葉片病害圖像574張. 玉米葉片病害圖像數(shù)據(jù)樣例如圖6所示. 其中: 第一列為兩張感染枯萎病的葉子, 葉端出現(xiàn)萎蔫、 卷曲, 逐漸向下蔓延, 整個(gè)葉片逐漸干枯, 并出現(xiàn)褐色斑點(diǎn)和缺失區(qū)域; 第二列為兩張感染銹病的葉子, 出現(xiàn)黃色或橙色的斑點(diǎn)或斑塊, 這些斑點(diǎn)或斑塊周圍有明顯的紅色或棕色邊緣; 第三列為兩張感染灰斑病的葉子, 出現(xiàn)小而圓的灰色或灰白色斑點(diǎn), 斑點(diǎn)周圍邊緣會(huì)出現(xiàn)黃色或褐色的區(qū)域; 第四列為兩張健康的玉米葉片, 呈現(xiàn)深綠色, 葉片質(zhì)地柔軟而富有光澤, 整體看起來較飽滿. 玉米數(shù)據(jù)集的圖像類別以及圖像數(shù)量列于表1.
數(shù)據(jù)集處理采用Python將數(shù)據(jù)集中的每個(gè)子目錄作為一個(gè)類別, 使用隨機(jī)采樣的方式將每個(gè)類別的圖像劃分為訓(xùn)練集、 驗(yàn)證集和測(cè)試集, 并將它們的路徑和標(biāo)簽存儲(chǔ)在相應(yīng)的列表中, 生成類別名稱和對(duì)應(yīng)的數(shù)字索引存儲(chǔ)于JSON文件中.
2.2 實(shí)驗(yàn)設(shè)備
輕量級(jí)模型需要更少的內(nèi)存和計(jì)算資源, 更低的成本, 更容易部署在各種設(shè)備上, 為使實(shí)驗(yàn)研究更具對(duì)比性, 所有對(duì)比模型都選擇輕量級(jí)版本. 其中3個(gè)輕量級(jí)卷積神經(jīng)網(wǎng)絡(luò)模型分別為Mobilenet_V3_Small,ShufflenetV2,Efficientnet_B1_Pruned; 3個(gè)輕量級(jí)Transformer系列模型為Deit3_Small,Vit_Small,Swin-Tiny.
實(shí)驗(yàn)使用的硬件設(shè)備是一塊RTX 3090顯卡, 軟件使用jupyter,Pytorch深度學(xué)習(xí)框架, torch-1.9.1+cu111,torchvision-0.10.1+cu111構(gòu)建所需的訓(xùn)練環(huán)境.
實(shí)驗(yàn)過程中, 將玉米病害數(shù)據(jù)集中的全部圖像進(jìn)行調(diào)整, 以符合所選模型框架對(duì)圖像尺寸的要求, 將其像素大小轉(zhuǎn)換為224×224, 以便在輸入模型進(jìn)行計(jì)算時(shí)使用. 按圖像類別的70%,20%,10%, 將其劃分為訓(xùn)練集、 驗(yàn)證集和測(cè)試集, 并完成了基于遷移學(xué)習(xí)的后續(xù)模型訓(xùn)練對(duì)比實(shí)驗(yàn). 在進(jìn)行模型訓(xùn)練時(shí), 訓(xùn)練集和驗(yàn)證集被用來賦予模型的參數(shù)值, 而測(cè)試集則用于測(cè)試經(jīng)訓(xùn)練后的模型并對(duì)其性能進(jìn)行評(píng)估. 先加入RDABE算法作為數(shù)據(jù)增強(qiáng)技術(shù), 進(jìn)行與玉米病害相關(guān)的數(shù)據(jù)增強(qiáng), 然后將其輸入模型進(jìn)行訓(xùn)練, 在進(jìn)行訓(xùn)練數(shù)據(jù)前完成該過程. 采用遷移學(xué)習(xí)技術(shù)對(duì)模型進(jìn)行訓(xùn)練, 利用預(yù)先在數(shù)據(jù)集ImageNet上訓(xùn)練的權(quán)重值, 從而顯著提升了模型速度和性能.
為確保對(duì)比公平, 本文對(duì)每個(gè)模型的訓(xùn)練數(shù)據(jù)都單獨(dú)分析并多次實(shí)驗(yàn)調(diào)整, 以確保每個(gè)模型的權(quán)重參數(shù)都被優(yōu)化到其性能的最佳狀態(tài). 在使用這些參數(shù)計(jì)算測(cè)試模型時(shí), 對(duì)準(zhǔn)確率、 精確度、 召回率和F1分?jǐn)?shù)進(jìn)行考察, 并且保存測(cè)試數(shù)據(jù)的模型預(yù)測(cè)結(jié)果及相應(yīng)的標(biāo)簽, 然后用其繪制混淆矩陣. 其Swin-Tiny Transformer模型訓(xùn)練超參數(shù)設(shè)置如下: 優(yōu)化器采用SGD, 損失函數(shù)為Cross-Entropy Loss, epochs為100, 批量大小為64, 學(xué)習(xí)率設(shè)為0.001, 權(quán)重衰減為0.000 1.
2.3 實(shí)驗(yàn)結(jié)果分析
為評(píng)估深度學(xué)習(xí)訓(xùn)練模型在玉米病害分類識(shí)別任務(wù)中的性能, 本文選擇表現(xiàn)優(yōu)秀的7個(gè)模型進(jìn)行基于遷移學(xué)習(xí)的實(shí)驗(yàn)訓(xùn)練和測(cè)試. 其中包括3個(gè)基于CNN架構(gòu)的輕量級(jí)版本, 分別為Mobilenet_V3_Small,ShufflenetV2和Efficientnet_B1_Pruned, 以及3個(gè)基于Transformer架構(gòu)的輕量級(jí)版本, 分別為Deit3_Small,Vit_Small和Swin-Tiny, 此外還有經(jīng)過提升的Swin-Tiny+RDABE模型. 使用Pytorch框架對(duì)這7個(gè)模型進(jìn)行構(gòu)建, 并進(jìn)行基于遷移學(xué)習(xí)實(shí)驗(yàn)訓(xùn)練和測(cè)試, 從而全面評(píng)估這些模型在玉米病害圖像分類識(shí)別任務(wù)中的分類性能.
圖7和圖8為本文各模型在玉米病害數(shù)據(jù)集訓(xùn)練過程中的結(jié)果. 這些曲線記錄了每個(gè)訓(xùn)練周期的測(cè)試集準(zhǔn)確率和訓(xùn)練集損失, 從而有助于評(píng)估每個(gè)模型的訓(xùn)練情況. 通過這些記錄, 可確保所有模型都能在收斂狀態(tài)下完成訓(xùn)練. 由圖7和圖8可見, 所有模型都是基于遷移學(xué)習(xí)技術(shù), 并且都采用了輕量級(jí)版本的前提下, Swin-Tiny Transformer模型在準(zhǔn)確率和損失值上都取得了比其他模型更優(yōu)的結(jié)果.
本文改進(jìn)的Swin-Tiny+RDABE模型相比原Swin-Tiny模型, 無論是在測(cè)試集準(zhǔn)確率還是在訓(xùn)練集損失中, 都獲得了更優(yōu)的訓(xùn)練結(jié)果. Swin-Tiny Transformer訓(xùn)練對(duì)比曲線如圖9和圖10所示.
在輕量級(jí)模型中無論是CNN系列還是Transformer系列都有較好性能, 其中性能最佳的是Swin-Tiny Transformer模型, 準(zhǔn)確率高達(dá)92.399%, F1分?jǐn)?shù)也達(dá)到89.915 7%, 相比Mobilenet_V3_Small,ShufflenetV2,Efficientnet_B1_Pruned,Deit3_Small,Vit_Small模型具有顯著優(yōu)勢(shì). 不同模型實(shí)驗(yàn)結(jié)果參數(shù)指標(biāo)列于表2.
相對(duì)于原始的玉米病害數(shù)據(jù)集, 本文比較了使用和不使用RDABE增強(qiáng)算法的Swin-Tiny Transformer模型的效果. 結(jié)果表明, 使用RDABE算法的模型在準(zhǔn)確率、 精確度、 召回率和F1分?jǐn)?shù)等指標(biāo)上都取得了相對(duì)較好的改進(jìn), 準(zhǔn)確率達(dá)到93.586 7%, 約提升1.2%, F1分?jǐn)?shù)達(dá)到92.316 6%, 約提升2.4%, 證明在加入了RDABE算法后的Swin-Tiny+RDABE模型提取特征效果優(yōu)于之前. 因此, 通過RDABE增強(qiáng)算法改進(jìn)了網(wǎng)絡(luò)架構(gòu)的泛化能力, 防止網(wǎng)絡(luò)模型過擬合, 并提升了網(wǎng)絡(luò)模型對(duì)圖像樣本識(shí)別的魯棒性.
使用輕量級(jí)模型旨在希望擁有更快的訓(xùn)練速度、 更低的計(jì)算資源、 更好的模型泛化能力、 更適合實(shí)時(shí)應(yīng)用, 更容易部署和維護(hù). 表3列出了模型的計(jì)算量(PLOPs)和參數(shù)量(parameter). 由表3可見, 基于隨機(jī)增強(qiáng)的Swin-Tiny+RDABE模型的計(jì)算量和參數(shù)量與提升前沒有變化, 并且能提升各項(xiàng)指標(biāo). 相比其他模型, Swin-Tiny+RDABE模型在計(jì)算量上有一定優(yōu)勢(shì), 在參數(shù)量上有更多的自由度和靈活性, 可以應(yīng)對(duì)更多的數(shù)據(jù)變化和挑戰(zhàn).
圖11為本文RDABE算法通過訓(xùn)練得到的混淆矩陣在Swin-Tiny Transformer模型使用前后的預(yù)測(cè)識(shí)別結(jié)果. 由圖11可見, 使用RDABE算法的模型在玉米病害類別銹病(Common_rust)的漏報(bào)和誤差上性能明顯改善. 因此, 可證明RDABE算法在提高Swin-Tiny Transformer模型性能方面有效.
2.4 小程序部署應(yīng)用
為更快速、 準(zhǔn)確地識(shí)別玉米病害并提供更直觀的體驗(yàn), 本文設(shè)計(jì)了一個(gè)玉米病害智能識(shí)別小程序系統(tǒng), 該系統(tǒng)集成了本文訓(xùn)練的玉米病害識(shí)別模型.
在小程序開發(fā)中, 使用 HBuilderX 進(jìn)行前端開發(fā), 包括創(chuàng)建頁面、 組件和樣式, 并編寫業(yè)務(wù)邏輯. 同時(shí), 在 PyCharm 中進(jìn)行服務(wù)端開發(fā), 編寫服務(wù)器端的業(yè)務(wù)邏輯、 數(shù)據(jù)處理和接口邏輯, 并進(jìn)行本地測(cè)試和調(diào)試. 使用微信開發(fā)者工具進(jìn)行調(diào)試和發(fā)布, 包括創(chuàng)建小程序并配置基本信息, 如名稱、 AppID、 服務(wù)器地址等. 完成開發(fā)后, 將前端和后端代碼上傳到微信服務(wù)器, 并進(jìn)行代碼審核和發(fā)布. 通過微信開發(fā)者工具中的真機(jī)調(diào)試功能, 在iPhone 12 mini手機(jī)上進(jìn)行測(cè)試和調(diào)試, 如圖12所示.
玉米病害識(shí)別小程序的主要功能是: 通過上傳本地圖庫或現(xiàn)場(chǎng)拍攝的玉米葉片圖像, 利用Swin-Tiny+RDABE模型進(jìn)行圖像檢測(cè), 以預(yù)測(cè)該圖像可能屬于哪種玉米病害. 一旦完成上傳檢測(cè), 該小程序會(huì)立即提供關(guān)于該圖像所屬病害的名稱、 可能性以及相關(guān)特點(diǎn)描述信息. 因Swin-Tiny+RDABE模型是一種輕量級(jí)模型, 故可以方便地進(jìn)行部署和應(yīng)用. 目前, 該小程序已經(jīng)完成制作并應(yīng)用, 該算法模型的使用與部署取得了較好成果.
綜上所述, 為解決在圖像識(shí)別過程中提取全局特征的局限性, 并更好地捕捉整體信息, 本文提出了一種使用遷移學(xué)習(xí)基于隨機(jī)增強(qiáng)的輕量級(jí)Swin-Tiny Transformer模型. 通過在農(nóng)業(yè)領(lǐng)域的玉米病害圖像檢測(cè)驗(yàn)證, 證明了該算法的適用性. 該方法采用了基于隨機(jī)數(shù)據(jù)增強(qiáng)的RDABE算法增強(qiáng)玉米葉片數(shù)據(jù)集, 并對(duì)Swin-Tiny Transformer網(wǎng)絡(luò)模型進(jìn)行微調(diào). 實(shí)驗(yàn)結(jié)果表明, 輕量級(jí)Transformer系列模型與其他優(yōu)秀的輕量級(jí)CNN系列模型相比, Swin-Tiny Transformer模型在準(zhǔn)確率、 精確度、 召回率和F1分?jǐn)?shù)方面性能更優(yōu). 在本文模型使用RDABE數(shù)據(jù)增強(qiáng)算法時(shí), 準(zhǔn)確率可達(dá)93.586 7%, 相比于不使用該算法時(shí)有明顯提高. 此外, 該方法采用了輕量級(jí)設(shè)計(jì), 并已成功應(yīng)用于微信小程序中取得了較好的效果, 實(shí)現(xiàn)了實(shí)際的應(yīng)用價(jià)值.
參考文獻(xiàn)
[1]LECUN Y, BOTOU L, BENGIO Y, et al. Gradient-Based Learning Applied to Document Recognition [J]. Procedings of the IEEE, 1998, 86(11): 2278-2324.
[2]KRIZHEVSKY A, SUTSKEVER I, HINTON G. ImageNet Classification with Deep Convolutional Neural Networks [J]. Communications of the ACM, 2017, 60(6): 84-90.
[3]陳智超, 焦海寧, 楊杰, 等. 基于改進(jìn)MobileNet V2的垃圾圖像分類算法 [J]. 浙江大學(xué)學(xué)報(bào)(工學(xué)版), 2021, 55(8): 1490-1499. (CHEN Z C, JIAO H N, YANG J, et al. Garbage Image Classification Algorithm Based on Improved MobileNet V2 [J]. Journal of Zhejiang University (Engineering Science), 55(8): 1490-1499.)
[4]邵偉平, 王興, 曹昭睿, 等. 基于MobileNet與YOLOv3的輕量化卷積神經(jīng)網(wǎng)絡(luò)設(shè)計(jì) [J]. 計(jì)算機(jī)應(yīng)用, 2020, 40(增刊1): 8-13. (SHAO W P, WANG X, CAO Z R, et al. Design of Lightweight Convolutional Neural Network Based on MobileNet and YOLOv3 [J].? Computer Applications, 2020, 40(Suppl 1): 8-13.)
[5]蘇琮智, 楊承志, 邴雨晨, 等. 基于CNN-Swin Transformer Network的LPI雷達(dá)信號(hào)識(shí)別 [J]. 現(xiàn)代雷達(dá), 2021, 43(2): 1-9. (SU C Z, YANG C Z, BING Y C, et al. LPI Radar Signal Recognition Based on CNN-Swin Transformer Network [J]. Modern Radar, 2021, 43(2): 1-9.)
[6]VASWANI A, SHAZEER N, PARMAR N, et al. Attention Is All You Need [J]. Advances in Neural Information Processing Systems, 2017, 30(12): 5998-6008.
[7]高家軍, 張旭, 郭穎, 等. 融合Swin Transformer的蟲害圖像實(shí)例分割優(yōu)化方法研究 [J]. 南京林業(yè)大學(xué)學(xué)報(bào)(自然科學(xué)版), 2021, 45(5): 1-10. (GAO J J, ZHANG X, GUO Y, et al. Research on Optimization Method for Insect Image Instance Segmentation Based on Swin Transformer Fusion [J]. Journal of Nanjing Forestry University (Natural Sciences Edition), 2021, 45(5): 1-10.)
[8]何前, 郭峰林, 方皓正, 等. 基于改進(jìn)LeNet-5模型的玉米病害識(shí)別 [J]. 江蘇農(nóng)業(yè)科學(xué), 2022, 50(20): 35-41. (HE Q, GUO F L, FANG H Z, et al. Corn Disease Recognition Based on an Improved LeNet-5 Model [J]. Jiangsu Agricultural Sciences, 2022, 50(20): 35-41.)
[9]鄧朋飛, 官錚, 王宇陽, 等. 基于遷移學(xué)習(xí)和模型壓縮的玉米病害識(shí)別方法 [J]. 計(jì)算機(jī)科學(xué), 2022, 49(增刊2): 444-449. (DENG P F, GUAN Z, WANG Y Y, et al. Corn Disease Recognition Method Based on Transfer Learning and Model Compression [J]. Journal of Computer Science, 2022, 49(Suppl 2): 444-449.)
[10]熊夢(mèng)園, 詹煒, 桂連友, 等. 基于 ResNet 模型的玉米葉片病害檢測(cè)與識(shí)別 [J]. 江蘇農(nóng)業(yè)科學(xué), 2021, 49(12): 1-8. (XIONG M Y, ZHAN W, GUI L Y, et al. Detection and Recognition of Maize Leaf Diseases Based on ResNet Model [J]. Jiangsu Agricultural Sciences, 2021, 49(12): 1-8.)
[11]ALEEM S, KUMAR T, LITTLE S, et al. Random Data Augmentation Based Enhancement: A Generalized Enhancement Approach for Medical Datasets [EB/OL]. (2022-10-03)[2023-01-10]. https://arxiv.org/abs/2210.00824.
[12]張瑞青, 李張威, 郝建軍, 等. 基于遷移學(xué)習(xí)的卷積神經(jīng)網(wǎng)絡(luò)花生莢果等級(jí)圖像識(shí)別 [J]. 農(nóng)業(yè)工程學(xué)報(bào), 2020, 36(23): 171-180. (ZHANG R Q, LI Z W, HAO J J, et al. Peanut Pod Grading Image Recognition Based on Transfer Learning Using Convolutional Neural Networks [J]. Transactions of the Chinese Society of Agricultural Engineering, 2020, 36(23): 171-180.)
[13]高洪波, 殷俊爽, 李長英. 基于Swin Transformer和CNN模型融合的包裝食品目標(biāo)檢測(cè)方法研究 [C]//2022年中國家用電器技術(shù)大會(huì)論文集. 北京: 《電器》雜志社, 2023: 52-57. (GAO H B, YIN J S, LI C Y. Research on Object Detection Method for Packaged Food Based on Fusion of Swin Transformer and CNN Model [C]//Proceedings of the 2022 China Household Electrical Appliances Technical Conference. Beijing: Electric Journal Press, 2023: 52-57.)
[14]LIU Z, LIN Y T, CAO Y, et al. Swin Transformer: Hierarchical Vision Transformer Using Shifted Windows [EB/OL]. (2021-08-17)[2023-01-15]. https://arxiv.org/abs/2103.14030.
[15]祝冰艷, 陳志華, 盛斌. 基于感知增強(qiáng)Swin Transformer的遙感圖像檢測(cè) [J]. 計(jì)算機(jī)工程, 2021, 47(8): 1-9. (ZHU B Y, CHEN Z H, SHENG B. Remote Sensing Image Detection Based on Perception-Enhanced Swin Transformer [J]. Computer Engineering, 2021, 47(8): 1-9.)
[16]鄭楚偉, 林輝. 基于Swin Transformer的YOLOv5安全帽佩戴檢測(cè)方法 [J]. 計(jì)算機(jī)測(cè)量與控制, 2023, 31(3): 15-21. (ZHENG C W, LIN H. YOLOv5 Helmet Detection Method Based on Swin Transformer [J]. Computer Measurement & Control, 2023, 31(3): 15-21.)
[17]SINGH D, JAIN N, JAIN P, et al. PlantDoc: A Dataset for Visual Plant Disease Detection [EB/OL]. (2019-11-23)[2023-02-01]. https://arxiv.org/abs/1911.10317.
[18]GEETHARAMANI G, PANDIAN A. Identification of Plant Leaf Diseases Using a 9-Layer Deep Convolutional Neural Network [J]. Computer & Electrical Engineering, 2019, 76: 323-338.
(責(zé)任編輯: 韓 嘯)
收稿日期: 2023-04-24.
第一作者簡(jiǎn)介: 吳葉輝(1999—), 男, 漢族, 碩士研究生, 從事計(jì)算機(jī)視覺和自然語言處理的研究, E-mail: 1617899733@qq.com.
通信作者簡(jiǎn)介: 楊建平(1977—), 男, 漢族, 博士, 教授, 從事信息技術(shù)的研究, E-mail: yangjpyn@163.com.
基金項(xiàng)目: 云南省重大科技專項(xiàng)基金(批準(zhǔn)號(hào): 202302AE09002003).