邱文杰 葉進 胡亮青 楊娟 李其利 莫賤友 易萬茂



摘要: 卷積神經網絡(CNN)的發展帶來了大量的網絡參數和龐大的模型體積,極大地限制了其在小規模計算資源設備上的應用。為將CNN應用在各種小型設備上,研究了一種基于知識蒸餾的結構化模型壓縮方法。該方法首先利用VGG16訓練了一個識別率較高的教師模型,再將該模型中的知識通過蒸餾的方法遷移到MobileNet,從而大幅減少了模型的參數量。將知識蒸餾后的Distilled-MobileNet模型應用在14種作物的38種常見病害分類中。進行了知識蒸餾在VGG16、AlexNet、GoogleNet和ResNet 4種不同網絡結構上的表現測試,結果表明,當VGG16作為教師模型時,模型準確率提升了97.54%;使用單個病害識別率、平均準確率、模型內存、平均識別時間4個指標對訓練好的Distilled-MobileNet模型進行真實環境下準確性評估,經測試,模型的平均準確率達到了97.62%,平均識別時間縮短至0.218 s,僅占VGG16模型的13.20%,模型大小壓縮僅為19.83 MB,相比于VGG16縮小了93.60%,使其具備了較高的準確性和實時性要求。本方法模型在壓縮內存體積和縮短識別時間上較傳統神經網絡有了明顯提高,為內存和計算資源受限設備上的病害識別提供了新的思路。
關鍵詞: 病害識別;深度學習;模型壓縮;知識蒸餾;卷積神經網絡
中圖分類號: TP3-0? 文獻標志碼: A? 文章編號: 202009-SA004
引用格式:邱文杰, 葉進, 胡亮青, 楊娟, 李其利, 莫賤友, 易萬茂. 面向植物病害識別的卷積神經網絡精簡結構Distilled-MobileNet模型[J]. 智慧農業(中英文), 2021, 3 (1): 109-117.
Citation:QIU Wenjie, YE Jin, HU Liangqing, YANG Juan, LI Qili, MO Jianyou, YI Wanmao. Distilled-mobilenet model of convolutional neural network simplified structure for plant disease recognition[J]. Smart Agriculture, 2021, 3 (1): 109-117. (
1? 引? 言
卷積神經網絡(Convolutional Neural Networks,CNN)由于具有自動提取特征和無壓力處理高維數據等優勢,已經在各個領域都有了非常廣泛的應用,在農業病蟲害識別方面的應用已經成為了熱門的研究方向[1]。例如,Karleka和Seal[2]提出了一種識別大豆病害的方法,將大豆的葉片從復雜的背景中分割出后,通過設計CNN模型SoyNet進行分類;Tetila等[3]對模型中的網絡權重進行分析,并使用簡單線性迭代聚類(Simple Linear Iterative Clustering,SLIC)方法對圖片分割出大豆葉片進行了識別,準確率高達99.04%。Adeel等[4]提出了一種新的識別框架對葡萄病害進行早期檢測,通過提取AlexNet和ResNet101經過遷移學習后的特征,使用YEaK技術選擇出最好的特征,之后使用并行方法融合這些強特征,最后輸入最小二乘支持向量機(Least Squared Support Vector Machine,LSSVM)中進行分類,對從PlantVillage數據集得到的受感染葡萄葉片進行模擬,獲得了99%的準確率。Zhang等[5]使用基于深度學習的改進的GoogleLeNet和Cifar-10模型,用于玉米葉片病害的識別,平均識別準確率為98.9%。陳桂芬等[6]使用遷移學習的方法在預訓練模型的基礎上訓練了卷積神經網絡,識別準確率達到了96.6%。吳華瑞[7]使用深度殘差網絡模型,對番茄四種常見病害進行了識別,準確率達到95%以上。上述病害識別方法的準確率均達到了90%以上,由此可見,CNN已經在農業病蟲害識別領域有了廣泛的應用,并取得了不錯的效果。
然而,CNN經過多年的發展,網絡結構越來越復雜,網絡參數不計其數,需要耗費大量的存儲資源跟計算資源。經典的VGG-16圖像分類網絡包含1.38億個參數,而最新的ResNet-200仍然包含超過6000萬個參數。網絡越復雜,消耗的磁盤空間和內存就越大,并且識別速度就越慢。研究表明,在計算資源受限的ARM平臺上,單張圖片的識別時間達到13.2 s以上[8],遠遠不能滿足用戶對于實時性的要求。即使將模型部署在云服務器,也無法從本質上解決復雜神經網絡模型內存占用大、識別時間長的問題,且部署在服務器上的模型識別時間易受到網絡環境波動的影響,無法在網絡受限的環境中使用。因此,如何對復雜的神經網絡模型進行壓縮,使其滿足在終端設備使用時的實時性要求和更低的內存占用限制,是目前神經網絡亟待解決的問題。
針對上述情況,近年來有學者提出了不同的模型精簡方法。Han等[9]提出了ClipDL模型,通過同時減少模型參數的數量以及減少僅對關鍵數據的計算來加速深度學習系統運行,將模型訓練過程平均加速了2.32倍,模型大小基本保持不變,而準確性損失僅為1.86%。Rahman等[10]針對移動設備提出了一種具有兩個階段的小型CNN模型,該模型在準確率上達到了期望準確率的93.3%,并且具有更小的結構規模,跟VGG16對比,其結構規模減少了99%。Shih等[11]提出了具有擴張卷積和多尺度特征串聯的簡化區域提議網絡(Reduced Region Proposal Network,RRPN),模型的檢測準確率相比ZF-Net提高了2.2%~60.2%,相對壓縮了ZF-Net網絡的81.3%的規模大小。Hc等[12]提出了一種稱為塊更改學習(Block Change Learning,BCL)的方法,該方法通過更改由“層”組成的“塊”來執行局部和全局知識提煉。在專門針對特征提取任務當中,BCL僅表現出約5%的性能下降,而其他方法的模型性能下降約為17%。Wu等[13]提出了用于壓縮視頻動作識別的框架來對模型進行壓縮,壓縮后的模型準確率下降了0.35%,但參數量上的壓縮率達到2.4倍,計算量減少1.2倍。
目前,上述模型壓縮方法存在壓縮率不高和壓縮后模型精度下降的問題,因此,本研究結合PlantVillage[14]植物病害數據集,提出了一種基于知識蒸餾[15]的輕量級卷積神經網絡精簡方法,在廣西壯族自治區農業科學院提供的含有復雜背景的數據集上做了真實環境下的模型性能測試,結果表明,該方法不以損失模型精度為代價,能夠大幅降低模型內存的要求。本方法具有通用性,無論是將模型部署在云服務器還是本地設備中,都可以在少量的教師機內存占用和訓練開銷降低的同時,降低模型參數量、提高模型精度。
2? 數據樣本集
本研究使用的數據集來自PlantVillage標準數據集和自建數據集兩個部分。
2.1PlantVillage數據集
PlantVillage數據集包含來自14種植物的54,305張植物葉片圖,共38種常見病害。葉片圖像均為實驗室環境下拍攝的單一背景圖像,每類的圖像數量從152張到5507張不等。將數據集按照80%和20%的比例劃分為訓練集和驗證集。數據集中部分病害的為害狀如圖1所示。由于病原體感染農作物的方式相似,不同的農作物可能會感染相同的病原體,因此導致圖1中不同農作物會患有同種疾病。
為使識別模型具有更好的魯棒性[16],本研究還使用了基于深度卷積生成對抗網絡(Deep Convolutional Generative Adversarial Networks,DCGAN)的數據增強方法[17]模擬產生了5861張新圖像參與建模,部分樣本如圖2所示。經過感知哈希算法[18]測試,生成模型產生的新樣本和真實樣本之間的平均相似度達到了98.75%以上,表明產生的圖像和真實圖片相類似,能夠作為擴充樣本。
2.2自建數據集
在使用PlantVillage數據集的基礎上,本研究還使用了一個自建數據集,其中包括4835張芒果炭疽病圖片和4810張芒果白粉病圖片,如圖3所示。該數據集由廣西壯族自治區農業科學研究院植保所提供,圖片使用佳能5D mark III型數碼相機拍攝,像素為4475×3840,圖片中病斑點輪廓所占面積大于葉片面積的10%。自建數據集中的圖片均為真實環境下拍攝的具有復雜背景的照片,主要用于模型的測試。表1給出了本研究所用數據集的詳細分布情況。
3? 識別模型訓練及其精簡結構設計
本研究提出了一種結構化的病害識別方法及輕量級神經網絡精簡方法,圖4為本研究的整體設計,大致分為以下三個步驟。
(1)采用DCGAN產生大量數據樣本,實現數據擴充。此外,本研究對擴充后的數據使用了幾種常見數據增強方法,包括平移、旋轉、縮放、剪裁和翻轉等,從而提高了模型的平移、縮放等不變性,有效地防止了模型過擬合。
(2)為了加快模型在訓練過程中的收斂速度,本研究使用遷移學習[19]的方法,將不同網絡結構在ImageNet數據集上預先訓練好的權值遷移到對應的不同網絡結構中,在此基礎上訓練不同神經網絡模型。
(3)在訓練好的模型上使用知識蒸餾方法,將知識從冗余的集成模型轉移到輕量級模型中,并保留復雜網絡的性能,從而訓練得到精簡模型,通過這種方法有效地降低模型體積,提高模型精度。
3.1識別模型MobileNet的訓練
MobileNet是Google提出的輕量級神經網絡,用于解決復雜模型在移動端和嵌入式終端上無法使用的問題[20]。相比于其他神經網絡,MobileNet的計算復雜度和模型內存都很小,網絡參數總量為132萬,內存僅占VGG16的3%。因此,本研究選擇MobileNet作為學生模型進行訓練。MobileNet模型的核心是深度可分離卷積(Depthwise Separable Convolution,DSC),原理如圖5所示,DSC將標準卷積分解成深度卷積和逐點卷積。
假設神經網絡的輸入圖片維度為D_F×D_F×M,深度卷積的卷積核大小為D_K×D_K×1,個數為M,逐點卷積的卷積核大小為1×1×M,個數為N,經過卷積后輸出維度為D_G×D_G×N,則深度可分離卷積的計算成本與常規卷積操作的比值如公式(1)所示。
DSC/(Std ????????????????????????????????? conv)=1/N+1/〖D_K〗^2 ??? (1)其中,DSC和Std conv分別表示深度可分離卷積和常規卷積操作的參數量;N為逐點卷積核的個數,個;D_K為深度卷積核的大小。
由公式(1)可知,當卷積核個數越少、尺寸越小時,深度可分離卷積相對于常規卷積操作就可以減少更多的參數量。
3.2精簡模型Distilled-MobileNet設計
在知識蒸餾的學習過程中,學生模型是通過模仿教師模型在相同樣本下的輸出來進行訓練的,在傳統Softmax分類器中,給定任何輸入圖片x,模型生成一個向量S^t (x)=[S_1^t (x),S_2^t (x),…,S_k^t (x)],其中,S_k^t (x)代表第k種病害所對應的得分,在神經網絡的最后,使用Softmax作為分類器將神經網絡的輸出S^t (x)轉化成概率分布p^t (x),即p^t (x)=[p_1^t (x),p_2^t (x),…,p_k^t (x)],對于p^t (x)中的每個元素p_k^t (x),其計算方法如公式2所示。
p_k^t (x)=e^(s_k^t (x) )/(∑_j?e^(s_j^t (x) ) )??? (2)
Hinton等[15]提出,訓練有素的教師模型的輸出會無限接近于One-Hot編碼的真實輸出,這就造成有用的類間信息在訓練過程中被忽視,進而直接導致學生模型的訓練效果不理想,因此,需要使用溫度標度“軟化”這些概率,如公式(3)所示。
p┴?_k^t (x)=e^(s_k^t (x)/T)/(∑_j?e^(s_j^t (x)/T) ) (3)其中,T是可調的超參數,T ??????????????????????????? >1。通過在Softmax分類器中加入T這一參數,學生會類似地產生更“柔和”的分類概率分布p┴?^s (x),從而保留了樣本不同類別之間的概率關系。與使用傳統One-Hot編碼[15]的硬標簽作為訓練目標相比,由于教師模型經過Softer-Softmax分類器后輸出的軟目標很好地保留了樣本不同類別之間的概率關系,所以通常會帶來更好的性能。為了獲得更好的分類結果,將知識蒸餾中的損失函數由交叉熵替換為巴氏距離[21],令BC定義為巴氏系數,滿足:0≤BC≤1,其關系定義如公式(4)所示。
BC(P,Q)=∑√(P(x)Q(x))? (4)其中,P、Q分別表示教師模型和學生模型;P(x)和Q(x)分別代表教師模型和學生模型的輸出。
由公式(4)可知,當P、Q兩個標簽趨同時,巴氏系數值BC會隨之變大;而當兩個標簽完全沒有重疊時,BC將會趨于零。
采用巴氏距離后的L_KD、L_cls和學生損失函數L分別如公式(5)~(7)所示:
L_KD=-ln ????????????????????????? (BC(r_k (x),p┴?_k^t (x)))? (5)
L_cls=-ln ????????????????????????? (BC(q_k (x),p_k^t (x))) (6)
L=αL_cls+(1-α)L_KD??? (7)其中,q_k (x)為樣本的真實標簽;r_k (x)為教師模型的輸出;α為可調的超參數;通常T∈{1,3,4,5},α∈[0.5,0.9]。
本研究通過知識蒸餾的方法,結合公式(5)~(7)中的損失函數,訓練了精簡模型Distilled-MobileNet。首先,使用圖像的真實標簽來預訓練教師模型,之后再使用相同的訓練樣本作為學生模型的輸入并進行訓練,所建立的Distilled-MobileNet模型與教師模型相比,可以達到輕量級的體積。圖6給出了知識蒸餾的具體結構。
同時,在損失函數的設計上,使用兩個不同目標函數的加權平均值,其中,損失函數L_KD用來表示當教師模型和學生模型共享相同的溫度T時,教師模型和學生模型輸出之間的巴氏距離;損失函數L_cls為學生模型和真實標簽之間的交叉熵。最后,通過線性加權的方式計算損失函數L,如公式(8)所示。
L=αL_cls+(1-α)L_KD??? (8)
表2給出了模型在不同α和T下的試驗結果。經試驗驗證,當超參數α的值設為0.6、蒸餾溫度T的值為3時,模型驗證集準確率達到最高90.62%,表明模型獲得最佳性能。
4? 試驗結果及分析
本試驗硬件環境包括具有Intel i9-10900X (3.20 GHz) 10核20線程CPU,NVIDIA GeForce RTX2080Ti 11GBx2的服務器。軟件環境為64位Windows10系統,CUDA 9.0,CUDNN 7.0,PyCharm 2018.2。用于訓練模型的試驗框架的前端和后端分別是Keras和Tensorflow。
為確保試驗結果的公平性和有效性,本研究對超參數進行了統一化。將學習率設置為0.001,batch size設置為128,L2正則化參數設置為0.0005。
其次,在模型訓練中使用了SGD、Adam和Nadam三種不同的優化器,該類優化算法應用在非凸優化問題中有計算高效、所需內存少等諸多優勢,三種優化算法超參數的具體參數如表3所示。
4.1學習模型性能測試
為確定教師和學生網絡最佳模型,本研究在128×128大小的3通道RGB圖像下對比了VGG16、AlexNet、GoogLeNet、MobileNet和ResNet 5種主流神經網絡結構的驗證集準確率、損失函數以及參數量的大小。圖7給出了迭代過程中驗證集準確率與損失函數變化情況。
由圖7(a)可以看出,不同模型在迭代過程中驗證集準確率變化呈現不同特點。具體來講,除GoogleNet外,5種模型在迭代過程中其準確率均出現抖動現象,對于MobileNet模型,雖在初始迭代時驗證集準確率較低,但隨著訓練的深入,準確率一直呈現上升趨勢,且在75輪后超越了其余5種模型的準確率,說明MobileNet模型相較于其他對比模型具有較高穩定性。
表4給出了5種模型最終驗證集準確率的對比情況。可知,VGG16和AlexNet雖準確率較高,但模型內存在128×128的3通道輸入下內存占用分別達到了1022.6和443.0 MB,這必然會降低某些設備(如智能手機,物聯網設備甚至是計算能力較低的計算機)的運行速度,同時占用大量內存空間。因此,本研究將在上述方法的基礎上,使用知識蒸餾方法對模型進行壓縮。
結合不同模型的內存占用情況,本研究選用MobileNet作為知識蒸餾的學生網絡。此結果與本研究之前的設計相一致。
4.2知識蒸餾在不同模型上的表現
表5給出了知識蒸餾在VGG16、AlexNet、GoogleNet和ResNet 4種不同網絡結構上的表現。根據表5可知,由于學生模型不僅學習樣本的真實標簽,同時還學習了教師模型產生的保留了類間關系的軟化標簽,因而不同網絡結構經過知識蒸餾后,模型準確率均出現了明顯提升[22,23],平均提升了1.42%。具體地說,當VGG16作為教師模型時,模型準確率提升了2.04%,達到97.54%,相比于ResNet作為教師模型,準確率提高了2.38%,因此,經過綜合考慮識別準確率和識別時間兩個因素,本研究最終選擇將VGG16作為教師模型。
在內存方面,由于學生模型均采用MobileNet,導致不同網絡模型經過知識蒸餾后的內存相差不大,但相較于原教師模型內存則出現明顯降低,平均降低79.62%,其中AlexNet模型壓縮率最高,達到94.11%。總的來說,試驗結果表明,知識蒸餾不僅可以加快模型的運行速度,使其滿足實時性要求,同時還能減少模型內存。
4.3真實環境下的性能測試
為評估Distilled-MobileNet模型在真實環境下的表現,本研究在由廣西壯族自治區農業科學院提供的真實數據集合上用3.2節所述方法對經過知識蒸餾改進的Distilled-MobileNet模型進行了性能測試。模型訓練過程中的準確率和損失函數變化曲線如圖8所示。
從圖8中可以看出,在訓練過程中,損失函數下降平穩,同時,模型的驗證集準確率呈整體上升趨勢,且模型的收斂速度很快,在60次迭代后即達到了較好的收斂狀態。
使用單個病害識別率、平均準確率、模型內存、平均識別時間4個指標對訓練好的Distilled-MobileNet模型進行準確性評估。模型在真實環境下的評估結果見表6。結果表明,模型的平均準確率達到了97.62%,平均識別時間縮短至0.218 s,僅占VGG16模型的13.20%,模型大小壓縮僅為19.83 MB,相比于VGG16縮小了93.60%。綜上,Distilled-MobileNet模型通過將復雜模型轉化為簡單的小模型,使其能夠部署在單片機、智能手機中,從而能夠不受不同應用場景對于模型的內存、時間限制,更能滿足不同應用場景的要求,由此證明了本方法的有效性和可行性。
5? 總? 結
本研究針對常規的植物病害識別方法存在的識別效率較低的問題,提出了基于知識蒸餾的結構化壓縮模型Distilled-MobileNet,與經典的卷積神經網絡模型相比,本方法的優越性是能夠在略微提高準確率的同時大幅降低參數內存占用量、縮短識別時間,從而使模型滿足更高的實時性要求。本研究對不同模型的性能進行了對比分析,取得的主要試驗結果及結論如下。
(1)對比了VGG16,AlexNet,GoogLeNet,MobileNet和ResNet共5種網絡結構的準確率及參數內存占用量,結果表明,雖然MobileNet準確率略低于VGG16和ResNet,但網絡參數最少,因此,本研究選擇MobileNet作為知識蒸餾中的學生模型。
(2)對比了知識蒸餾在不同教師/學生模型上的表現,結果表明,Distilled-MobileNet模型可以在小幅提高準確率同時明顯降低模型的參數量內存,加快模型識別速度。
參考文獻:
[1]??? KAMILARIS A, PRENAFETA-BOLD? F X. A review of the use of convolutional neural networks in agriculture[J]. The Journal of Agricultural Science, 2018, 156(3): 312-322.
[2]??? KARLEKAR A, SEAL A. SoyNet: Soybean leaf diseases classification[J]. Computers and Electronics in Agriculture, 2020, 172: ID 105342.
[3]??? TETILA E C, MACHADO B B, MENEZES G K, et al. Automatic recognition of soybean leaf diseases Using UAV images and deep convolutional neural networks[J]. IEEE Geoscience and Remote Sensing Letters, 2019, 17(5): 903-907.
[4]??? ADEEL A, KHAN M A, AKRAM T, et al. Entropy controlled deep features selection framework for grape leaf diseases recognition[J]. Expert Systems, 2020(1): DOI: 10.1111/exsy.12569.
[5]??? ZHANG X, QIAO Y, MENG F , et al. Identification of maize leaf diseases using improved deep convolutional neural networks[J]. IEEE Access, 2018(6): 30370-30377.
[6]??? 陳桂芬, 趙姍, 曹麗英, 等.基于遷移學習與卷積神經網絡的玉米植株病害識別[J]. 智慧農業, 2019, 1(2): 34-44.CHEN G, ZHAO S, CAO L, et al. Corn plant disease recognition based on migration learning and convolutional neural network[J]. Smart Agriculture, 2019, 1(2): 34-44.
[7]??? 吳華瑞. 基于深度殘差網絡的番茄葉片病害識別方法[J]. 智慧農業, 2019, 1(4): 42-49.WU H. Method of tomato leaf diseases recognition method based on deep residual network[J]. Smart Agriculture, 2019, 1(4): 42-49.
[8]??? 雷小康, 尹志剛, 趙瑞蓮. 基于FPGA的卷積神經網絡定點加速[J]. 計算機應用, 2020, 40(10): 2811-2816.LEI X, YIN Z, ZHAO R. FPGA-based convolutional neural network fixed-point acceleration[J]. Computer Applications, 2020, 40(10): 2811-2816.
[9]??? HAN R, LIU C, LI S, et al. Accelerating deep learning systems via critical set identification and model compression[J]. IEEE Transactions on Computers, 2020, 69(7): 1059-1070.
[10]? RAHMAN C R, ARKO P S, ALI M E, et al. Identification and recognition of rice diseases and pests using convolutional neural networks[EB/OL]. arXiv:1812.01
043v3 [cs.CV] 4 Mar 2020.
[11]? SHIH K H, CHIU C, LIN J A, et al. Real-time object detection with reduced region proposal network via multi-feature concatenation[J]. IEEE Transactions on Neural Networks and Learning Systems, 2020, 31: 2164-2173.
[12]? HC A, YL A, KCY B, et al. Block change learning for knowledge distillation[J]. Information Sciences, 2020, 513: 360-371.
[13]? WU M, CHIU C, WU K. Multi-teacher knowledge distillation for compressed video action recognition based on deep learning[C]// ICASSP 2019-2019 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP). Piscataway, New York, USA: IEEE, 2019.
[14]? HUGHES D P , SALATHE M. An open access repository of images on plant health to enable the development of mobile disease diagnostics[EB/OL]. 2015. arXiv:1511.08060 [cs.CY].
[15]? HINTON G, VINYALS O, DEAN J. Distilling the knowledge in a neural network[EB/OL]. Computer Science, 2015. arXiv:1503.02531 [stat.ML].
[16]? SHORTEN C, KHOSHGOFTAAR T M. A survey on image data augmentation for deep learning[J]. Journal of Big Data, 2019, 6(1): ID 60.
[17]? RADFORD A, METZ L, CHINTALA S. Unsupervised representation learning with deep convolutional generative adversarial networks[EB/OL]. 2015. arXiv:1511.06434v1 [cs.LG] 19 Nov 2015.
[18]? WENG L, PRENEEL B. A secure perceptual hash algorithm for image content authentication[C]// 12th IFIP TC 6/TC 11 International Conference on Communications and Multimedia Security. Berlin Heidelberg, German: Springer Verlag, 2011: 108-121.
[19]? PAN S J, YANG Q. A survey on transfer learning[J]. IEEE Transactions on Knowledge and Data Engineering, 2009, 22(10): 1345-1359.
[20]? HOWARD A G, ZHU M, CHEN B, et al. MobileNets: Efficient convolutional neural networks for mobile vision applications[EB/OL]. 2017. arXiv:1704.04861? [cs.CV].
[21]? KAILATH T. The divergence and Bhattacharyya distance measures in signal selection[J]. IEEE Transactions on Communication Technology, 1967, 15(1): 52-60.
[22]? ASHOK A , RHINEHART N , BEAINY F, et al. N2N learning: Network to network compression via policy Gradient Reinforcement Learning[C]// 6th International Conference on Learning Representations, ICLR 2018. Vancouver, BC, Canada: International Conference on Learning Representations, ICLR, 2018.
[23]? CHEBOTAR Y, WATERS A. Distilling knowledge from ensembles of neural networks for speech recognition[C]// Proceedings of the Annual Conference of the International Speech Communication Association, INTERSPEECH. San Francisco, CA, United States: International Speech Communication Association, 2016: 3439-3433.
Distilled-MobileNet Model of Convolutional Neural Network Simplified Structure for Plant Disease Recognition
QIU Wenjie1, YE Jin1*, HU Liangqing1, YANG Juan2, LI Qili3, MO Jianyou3, YI Wanmao1
(1.School of Computer and Electronic Information, Guangxi University, Nanning 530004, China;
2.School of Agriculture, Guangxi University, Nanning 530004, China;
3.Institute of Plant Protection, Guangxi Academy of Agricultural Sciences, Nanning 530007, China)
Abstract: The development of convolutional neural networks(CNN) has brought a large number of network parameters and huge model volumes, which greatly limites the application on devices with small computing resources, such as single-chip microcomputers and mobile devices. In order to solve the problem, a structured model compression method was studied in this research. Its core idea was using knowledge distillation to transfer the knowledge from the complex integrated model to a lightweight small-scale neural network. Firstly, VGG16 was used to train a teacher model with a higher recognition rate, whose volume was much larger than the student model. Then the knowledge in the model was transfered to MobileNet by using distillation. The parameters number of the VGG16 model was greatly reduced. The knowledge-distilled model was named Distilled-MobileNet, and was applied to the classification task of 38 common diseases (powdery mildew, Huanglong disease, etc.) of 14 crops (soybean, cucumber, tomato, etc.). The performance test of knowledge distillation on four different network structures of VGG16, AlexNet, GoogleNet, and ResNet showed that when VGG16 was used as a teacher model, the accuracy of the model was improved to 97.54%. Using single disease recognition rate, average accuracy rate, model memory and average recognition time as 4 indicators to evaluate the accuracy of the trained Distilled-MobileNet model in a real environment, the results showed that, the average accuracy of the model reached 97.62%, and the average recognition time was shortened to 0.218 s, only accounts for 13.20% of the VGG16 model, and the model size was reduced to only 19.83 MB, which was 93.60% smaller than VGG16. Compared with traditional neural networks, distilled-mobile model has a significant improvement in reducing size and shorting recognition time, and can provide a new idea for disease recognition on devices with limited memory and computing resources.
Key words: disease identification; deep learning; model compression; knowledge distillation; convolutional neural network