李 玲 , 李艷樂 , 郭海麗 , 蘇明敏
(衡水學院,河北 衡水 053000)
為了探究農作物病蟲害自動識別方式,課題組以蘋果樹為對象,收集病害蘋果樹葉樣本,基于卷積網絡實現蘋果樹生長階段過程中病蟲害及類型的識別。結合數據樣本以及其圖像數據特點,基于卷積神經網絡技術,搭建CNN模型,在本文中稱其為CNNModel,最后在完成模型設計以及訓練之后,將其部署在計算機設備中,接入攝像頭模塊以及相關執(zhí)行控制模塊,通過實時采集圖像后進行分類識別從而根據所識別的類型實現相關功能。如圖1所示。
圖1 基于CNN的蘋果樹病蟲害識別流程
首先人工收集標注的蘋果樹葉圖像數據集,在搭建的識別模型上進行訓練,然后將其部署在連接了相機的后端設備中,連接的相機以一定的角度實時拍攝蘋果樹葉照片,并輸入訓練好的模型進行分類識別,輸出檢測結果。為了對比CNN模型的效果,引入RNN以及基于機器學習SVM模型進行對比[1-2]。
本文數據為蘋果樹葉病蟲害圖像數據,一共含有26 368張帶標簽的蘋果樹葉圖像數據,部分數據如圖2所示。
圖2 部分數據展示
圖中一共有5類數據,Alternaria_Boltch(斑點落葉?。?、Brown_Spot(褐斑?。?、Grey_Spot(灰斑?。osaic(花葉?。?、Rust(銹病)。為使圖像便于輸入模型,選用線性插值方法將圖像尺寸調整為224×224,同時對圖像進行中心化處理,使數據分布在-1到1之間,加快模型的擬合。對原始圖像數據預處理后,按7∶1∶2將數據分為訓練集、驗證集、測試集。將訓練集輸入模型訓練,用驗證集監(jiān)控訓練過程以及協(xié)助參數調整,最后用測試集評估模型的性能。
深度學習是一種機器學習方法,其算法實質上是基于“擬合”的機制,通過大量數據在不斷的試錯和調整中,逐漸得出有效的參數。因為其構成是基于大量的層的神經網絡,這些深層的網絡結構可以有著大量的權重和偏差參數,因此能夠對對象的特征進行自動提取,不同于傳統(tǒng)需要手動提取的特征,在很多時候,深度學習能夠更加方便和準確地提取到有用的特征來完成相應的任務。深度學習是一種端到端的學習。相較于傳統(tǒng)方法,深度學習能夠學習到更高效的特征與模式。
在深度學習算法應用中,卷積神經網絡(CNN)是最成功的領域之一,其中,有一維到高維(三維)的神經網絡。每個維度的神經網絡在不同領域有不一樣的表現效果。如圖3所示,展示了卷積神經網絡的基本結構。
圖3 卷積神經網絡基本結構
基本的神經網絡首先包含輸入層,然后接下來是隱藏層,最后是輸出層。輸入層為原始的數據,也就是需要進行特征提取和學習的數據,隱藏層由多個神經元組成,每個神經元都接收一些輸入,并做一些計算,輸出是每個分類的分數,最后的輸出層為模型通過輸入經過神經元后輸出的結果,對于不同的任務,輸出的形式略有不同[3-4]。
典型的CNN由一系列的卷積、池化和全連接(密集)層組成,實現了端到端的圖像處理及識別任務。在圖像分類領域內,深度卷積神經網絡已經取得了十分優(yōu)秀的分類性能,但較多網絡層數也導致了網絡性能退化等問題的出現。為提升識別模型性能,可增加網絡深度或寬度。但一味地疊加網絡深度,易導致計算量過大等問題,在實際部署時不利于移動設備的部署。移動輕量級網絡MobileNet的提出解決了一般卷積神經網絡隨著網絡深度的增加而出現的性能退化問題。而預訓練的MobileNet模型優(yōu)化更容易,收斂速度更快,因此本文中基于預訓練的MobileNet搭建蘋果樹病蟲害識別的CNN模型, MobileNet的結構如圖4所示。
圖4 MobileNet的結構
對于MobileNet模型的網絡結構。首先,通過修改輸出層尺寸,使其能適用于本文中蘋果樹病害識別。其次,將經過ImageNet數據集預訓練的MobileNet權重載入進來,遷移到本文的蘋果樹病害診斷模型中,這種做法被稱為遷移學習,在傳統(tǒng)機器學習中,如果要使得分類準確,不但需要其訓練集、測試集擁有相同的特征空間,而且要服從相同的分布。但在現實應用中,滿足這兩個條件的情況是很少的,這就導致訓練好的分類模型泛化性不強,不得不構建新的模型。隨著遷移學習的發(fā)展,同時因為其不再局限于傳統(tǒng)機器學習對訓練集以及測試集的相同分布等的要求,其作為一種跨領域的學習方法已被廣泛應用于圖像分類、信號處理、語音識別等眾多領域[5-7]。
遷移學習方法有許多, Sinno Jialin Pan和Qiang Yang在TKDE 2010 上的文章,將遷移學習算法根據所要遷移的知識表示形式分為四大類:1)基于實例的遷移學習。源領域中的數據的某一部分可以通過reweighting的方法重用,用于目標域的學習。2)基于特征表示的遷移學習。通過源領域學習一個好的特征表示,把知識通過特征的形式進行編碼,并從源領域傳遞到目標域,提升目標域的任務效果。3)基于參數的遷移學習。目標域和源領域的任務之間共享相同的模型參數。4)基于關系知識的遷移學習。相關領域之間的知識遷移,假設源領域和目標域中,數據之間的關系是相同的,其中,通過基于特征表示的遷移學習構建源領域與目標域之間的潛在特征子空間減小兩者之間的差異性,縮小特征的維數并優(yōu)化精煉特征。
在大型數據集(ImageNet)上訓練使用遷移學習的方法,將這些預訓練模型在不同對象中學習的基本結構用于對組織病理學圖像進行分類,可以加快訓練過程并加快新CNN模型的構建。
然后訓練該網絡的所有層,使得模型權重適用于本文的蘋果樹病害診斷任務。通過MobileNet的卷積層,實現特征提取,同時接入丟棄率為0.5的DropOut層,降低模型出現過擬合的概率,最后連接全連接層,輸出維度為5×1的向量結果。該結果表征了蘋果樹葉圖像反映的病害類型。對蘋果這五個病害類的識別,是深度學習中的多分類問題,對于多分類問題來說,常見的損失函數是交叉熵損失函數CE(cross entropy loss),其表達式如式(1)所示:
式中,M表示類別數,在本文中M為5,表示所有類型的數量;yc為真實的只有0和1的向量;Pc為預測的結果,需要經過激活函數將結果放縮到0~1之間,在本文中選擇softmax激活函數。
在一般的二分類任務中,常以召回率(Recall)、特異性(Specificity)、精度(Precision)、準確率(Accuracy)和F1值作為二分類模型的評價指標,定義如式(2) ~(6)所示:
式中,TP為識別正確的正樣本總數;TN為識別正確的負樣本總數;FN為識別錯誤的正樣本總數;FP表示識別錯誤的負樣本總數。在多分類任務中,分別計算每個類別的PRF,然后分別求平均得到PRF。即對多個混淆矩陣求PRF,然后求Precision、Recall,F1的算術平均,分別為micro-Precision、micro-Recall,micro-F1,3個指標都是越接近1表示效果越好[8-10]。
為了探究本文中的MobileNet方法的有效性,使用python語言基于tensorflow框架搭建了兩個深度模型,即MobileNet、 RNN,同時基于傳統(tǒng)的圖像識別方法和opencv庫提取圖像的顏色及紋理特征作為樣本特征,基于scikit-learn框架搭建SVM模型。然后在同樣的硬件環(huán)境下,使用同樣的數據集訓練這3種模型。在訓練兩個深度學習模型時,對每個模型都訓練20個epochs(輪次),優(yōu)化器為Adam,初始學習率為0.001;batch sizes(一次訓練所選取的樣本量)設置為32,訓練SVM的參數為默認參數。MobileNet訓練過程損失下降曲線圖如圖5所示。
圖5 訓練過程損失下降曲線對比圖
由圖5損失下降曲線可知,MobileNet在訓練過程中損失都明顯下降,這一定程度上說明了深度學習方法的有效性,為了消除隨機的影響,因此重復進行5次實驗,求出平均準確度及標準差,結果如表1所示。
表1 測試結果統(tǒng)計量化表示
根據表1的數據可知,本文基于MobileNet提出的蘋果樹病害識別模型的平均準確度分數遠高于其余兩種方法,并且對比3個模型測試結果的標準差,也能說明MobileNet模型在本文數據中使得檢測模型更加穩(wěn)定,也有更好的擬合效果。訓練及驗證說明了模型在訓練過程中表現效果較好,但還不能充分地說明本模型的優(yōu)越性,因此在測試數據中,引入RPF評價指標,從而更加有力地證明本模型的優(yōu)良效果,在導入測試集后,3個模型對應的評價指標如表2所示。
表2 評價指標對比結果
如表2所示,其中基于MobileNet的蘋果樹病害識別模型的micro-Precision為0.99、micro-Recall為0.98、micro-F1值為0.99, 綜合3項性能指標與其余模型進行對比可知,MobileNet模型的性能要優(yōu)于其余2種模型。因此可以認為在學習率為0.001、優(yōu)化器為adam、batch_size為16的情況下MobileNet在本文數據中分類性能比其他模型要好。
1)本文基于卷積神經網絡模型,以及MobileNet,修改輸出的全連接層尺寸,搭建了MobileNet蘋果樹葉分類模型,實現Alternaria_Boltch(斑點落葉?。?、Brown_Spot(褐斑?。?、Grey_Spot(灰斑病)、Mosaic(花葉病)、Rust(銹病)這5種蘋果樹病害的識別。平均準確率達到了0.99的分數,micro-Precision、micro-Recall、micro-F1指標分別達到了0.99、0.98、0.99,綜合評價這幾個模型,本模型能用于蘋果樹葉病害識別系統(tǒng)的視覺模型開發(fā)及部署。
2)本文所使用的數據集包含的類別數較小,因此代表性不強,同時本文也僅僅是針對蘋果樹病害進行了識別,未充分考慮其他農作物的綜合情況,因此未來將考慮收集更多的農作物實況數據,制定更多的指標,實現更高精度的分類識別[11-13],從而為開展嵌入式實時農作物病蟲害視覺系統(tǒng)應用研究提供參考,以推動我國農業(yè)自動化建設的發(fā)展。