吳 蔚
(泰山學(xué)院 信息科學(xué)技術(shù)學(xué)院,山東 泰安 271000)
蘋果因其重要的營養(yǎng)價值和經(jīng)濟價值,成為世界上最重要的水果作物之一。在中國,蘋果的種植面積和經(jīng)濟產(chǎn)量位居世界前列,且有逐年增加的趨勢。然而,蘋果葉部時常遭受病蟲害侵襲,而葉子狀態(tài)常常是植物健康的晴雨表,很多病癥的發(fā)展最初往往源于葉部。因此,對于蘋果葉部病蟲害種類進行及時有效識別,從而采取針對性措施進行防治,是保持蘋果產(chǎn)量和質(zhì)量進一步增長的重要舉措之一,具有重要的經(jīng)濟價值和現(xiàn)實意義。
過去識別蘋果葉部病蟲害的方法主要通過專家診斷或者請教有經(jīng)驗的農(nóng)民。然而,專家咨詢可能存在花費高且缺乏時效性的缺點。而最有經(jīng)驗的農(nóng)民由于其個體的局限性,也不能保證準確識別出所有葉部病蟲害種類。因此,在智慧農(nóng)業(yè)的背景下,由傳統(tǒng)農(nóng)業(yè)中完全依靠人力輔助轉(zhuǎn)為借助機器智能的方式進行葉部病蟲害識別,成為推動蘋果產(chǎn)業(yè)增量增產(chǎn)的新趨勢。前幾年主要采用傳統(tǒng)機器學(xué)習(xí)的方法進行葉病種類識別。該類方法主要通過手工的方式提取及處理不同病蟲害種類的葉部形狀、顏色、紋理等特征,然后采用諸如K-means、支持向量機(Support Vector Machines,SVM)、貝葉斯等方法實現(xiàn)分類。例如王建璽等[1]采用葉部病灶部位的顏色差異和邊界輪廓追蹤算法提取出病灶區(qū)域,然后采用SVM方法進行種類識別。李超等[2]提出一種基于特征融合和局部特征映射的方法識別蘋果葉病種類,識別率高達96%。Sivakamasundari等[3]將RGB格式的圖片轉(zhuǎn)化為HSV格式的顏色空間并進行葉部病灶區(qū)域的顏色特征提取,得到的特征通過分割成相同大小的區(qū)域后進行紋理特征分析,之后輸入到SVM分類器進行識別。該方法在蘋果葉部病蟲害種類識別的精度和計算效率上都得到提升。傳統(tǒng)機器學(xué)習(xí)方法的分類精度很大程度上依賴于手工設(shè)計特征的優(yōu)劣,在一些具有復(fù)雜背景的高噪音環(huán)境下的圖像識別效果卻會大打折扣。
深度學(xué)習(xí)屬于機器學(xué)習(xí)領(lǐng)域的范疇,然而該技術(shù)更強調(diào)通過構(gòu)建“深層”的網(wǎng)絡(luò)結(jié)構(gòu),借助卷積的操作方式來強化對數(shù)據(jù)的非線性表達能力。相比傳統(tǒng)的機器學(xué)習(xí)方法,深度學(xué)習(xí)具有更優(yōu)秀的特征學(xué)習(xí)能力,即使在處理復(fù)雜圖像的分類問題時仍然展現(xiàn)出高效的識別效果。隨著機器學(xué)習(xí)的不斷發(fā)展,深度學(xué)習(xí)技術(shù)逐漸在計算機視覺領(lǐng)域獲得極大的突破,并被迅速而廣泛應(yīng)用到植物病蟲害的識別和診斷中,其中就包括在蘋果葉病識別領(lǐng)域的成功應(yīng)用。比如Liu等[4]提出了一種基于AlexNet和GoogLeNet的深度網(wǎng)絡(luò)模型用于蘋果葉病診斷,識別準確率達到97.62%,高于傳統(tǒng)的機器學(xué)習(xí)方法。Zhang等[5]將傳統(tǒng)的深度網(wǎng)絡(luò)結(jié)構(gòu)中最后的全連接層替換為全局平均池化層進行蘋果葉病識別,克服了過擬合的問題,提升了模型訓(xùn)練效率和識別準確率。
深度學(xué)習(xí)之所以能夠獲得成功,主要得益于大數(shù)據(jù)技術(shù)的發(fā)展以及設(shè)備計算能力的提升。一個典型的深度學(xué)習(xí)框架需要構(gòu)建深度網(wǎng)絡(luò)結(jié)構(gòu),并輸入大量帶標簽的數(shù)據(jù)對海量網(wǎng)絡(luò)參數(shù)進行調(diào)節(jié),此即通常所說的“調(diào)參”或者“學(xué)習(xí)”過程。然而在實際的植物病蟲害識別場景中,有些種類的數(shù)據(jù)往往不易獲取,導(dǎo)致訓(xùn)練樣本數(shù)量過少或者不同種類數(shù)據(jù)的分布不均,往往造成訓(xùn)練的模型過擬合或者無法快速有效收斂。因此在數(shù)據(jù)量較少或數(shù)據(jù)分布不均的情況下,仍使訓(xùn)練模型保持較高的識別準確率,是決定深度學(xué)習(xí)技術(shù)能否在具體應(yīng)用領(lǐng)域進一步推廣的關(guān)鍵。受到人類學(xué)習(xí)特點的啟發(fā),遷移學(xué)習(xí)技術(shù)可以有效解決小樣本的問題。眾所周知,人類認識新物體并不需要大量的數(shù)據(jù)加以訓(xùn)練,往往少量的幾張圖片就可以獲取準確的辨別能力。這得益于人類對已有知識的總結(jié)、凝練,并運用到新知識的學(xué)習(xí)中,此即所謂人類的遷移學(xué)習(xí)能力。
本研究過程中,提出了一種基于深度遷移學(xué)習(xí)的蘋果葉病識別方法,將遷移學(xué)習(xí)應(yīng)用到基于Inception V3的特征提取網(wǎng)絡(luò)結(jié)構(gòu)中,并通過改進損失函數(shù)的方式,實現(xiàn)了對蘋果葉病種類的準確識別效果。
卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)是深度學(xué)習(xí)在圖像分類和識別中獲得突破性成果的重要基石。區(qū)別于傳統(tǒng)機器學(xué)習(xí)手工設(shè)計特征的方式,基于CNN的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)能夠?qū)崿F(xiàn)端到端的自動特征提取。典型的CNN架構(gòu)主要包括卷積層、池化層和全連接層。
1.1.1 卷積層
卷積層通過卷積核對輸入特征進行卷積運算,并加上一個偏差值得到輸出結(jié)果。卷積層的模型參數(shù)包括卷積核部分和偏差值部分。可以通過多個卷積層的疊加設(shè)計不同復(fù)雜程度的卷積網(wǎng)絡(luò)。第i層卷積網(wǎng)絡(luò)的特征輸出yi可表示為:
其中Wi表示第i層卷積核的權(quán)重;bi表示標準偏差;yi-1表示卷積層的特征輸入(y0表示輸入圖像);f表示激活函數(shù)。
1.1.2 池化層
池化層的功能是減輕卷積層對位置的過度敏感性,從而使得模型對不同位置的同一物體也具備良好的識別能力。常用的池化方法有最大池化法和平均池化法,分別計算池化窗口內(nèi)的最大值和平均值。第s層池化層的第j個池化區(qū)域的特征輸出可表示為:
1.1.3 全連接層
經(jīng)過深層網(wǎng)絡(luò)的特征提取后,通常連接一層或多層全連接層進行圖像分類任務(wù)。最后的輸出層通常采用softmax函數(shù)將輸出值變換成值為正且和為1的概率分布。第j個輸出結(jié)果Oj可表示為:
其中j∈{1,…,K},K表示最后一個連接層的輸出個數(shù);z代表示最后一個連接層的輸出向量。
普通的深度學(xué)習(xí)模型是針對特定數(shù)據(jù)或者任務(wù)進行訓(xùn)練,當這些數(shù)據(jù)或任務(wù)變化時,學(xué)習(xí)到的模型通常具有較差的泛化性,需要重新進行模型訓(xùn)練。然而,很多時候模型學(xué)習(xí)到的知識可以被相似的任務(wù)重復(fù)利用。遷移學(xué)習(xí)就是研究如何對已學(xué)知識進行重用,從而避免模型從頭訓(xùn)練,提升模型的訓(xùn)練效率和穩(wěn)定性的技術(shù)。
一種典型的遷移學(xué)習(xí)方法是從預(yù)訓(xùn)練的模型中進行知識遷移。該方法首先通過大量的與目標任務(wù)相關(guān)的數(shù)據(jù)對網(wǎng)絡(luò)模型進行預(yù)訓(xùn)練,學(xué)習(xí)到的模型參數(shù)即知識被保存下來。基于這些學(xué)到的知識再對目標數(shù)據(jù)集進行參數(shù)微調(diào),從而學(xué)習(xí)到新數(shù)據(jù)集的知識信息。
本研究提出一種基于深度遷移學(xué)習(xí)的蘋果葉病識別方法,接下來從數(shù)據(jù)集、特征提取模塊、遷移學(xué)習(xí)以及損失函數(shù)幾個方面分別加以介紹。
本研究中選用的蘋果葉病圖片數(shù)據(jù)集來源于AIChallenger-Plant-Disease-Recognition(https://challenger.ai/),包括健康型、一般黑星病、嚴重黑星病、灰斑病、一般雪松銹病、嚴重雪松銹病共六種類型,對應(yīng)的標簽編號為0到5。將標簽值轉(zhuǎn)化為one-hot向量方式,以對應(yīng)神經(jīng)網(wǎng)絡(luò)最后一層的輸出。對于原始標簽i,轉(zhuǎn)化后的one-hot向量形式的標簽長度為6,且第i個元素的值為1,其余值為0。比如一般黑星病類型的原始標簽值為1,轉(zhuǎn)化為 one-hot形式后的標簽為[0,1,0,0,0,0]。
為了降低模型訓(xùn)練時由于數(shù)據(jù)量少造成過擬合的風(fēng)險,本研究采用隨機旋轉(zhuǎn)、隨機裁剪、隨機顏色變化并對圖像每個通道做標準化的方式進行數(shù)據(jù)預(yù)處理,處理后的數(shù)據(jù)共包含8169張圖片,數(shù)據(jù)分布比例如圖1所示,可以看出不同種類葉病圖片的比例分布是不均衡的,后文將提出具體解決方法。
圖1 蘋果葉病數(shù)據(jù)分布
本研究使用Inception V3模型[6]對輸入圖像數(shù)據(jù)進行特征提取。該模型使用的Inception模塊組不像之前大多流行的CNN一樣僅僅追求網(wǎng)絡(luò)的深度,而是對網(wǎng)絡(luò)的寬度和深度進行了均衡設(shè)計,增強了不同位置和大小信息的特征表達能力。同時它減少了全連接層的使用,并通過將較大的n×n卷積核尺寸分解為不對稱的n×1和1×n兩種卷積的方式,降低了模型的參數(shù)量,提升了模型運算和存儲效率。
本研究對基于Inception V3的網(wǎng)絡(luò)模型采取遷移學(xué)習(xí)的策略進行蘋果葉病識別的訓(xùn)練。其主要分為以下步驟:
(1)首先將Inception V3模型的線性連接層之前的網(wǎng)絡(luò)層定義為瓶頸層。提取使用公開數(shù)據(jù)集ImageNet進行預(yù)訓(xùn)練的瓶頸層網(wǎng)絡(luò)參數(shù),并在接下來的模型訓(xùn)練中保持固定不變。ImagetNet是一種大規(guī)模數(shù)據(jù)集,可以使網(wǎng)絡(luò)模型學(xué)習(xí)到物體的幾何、形狀、姿態(tài)等低層次信息,從而增強網(wǎng)絡(luò)識別的泛化能力。
(2)瓶頸層后面接上全連接層,使用蘋果葉病圖像數(shù)據(jù)作為模型的輸入,訓(xùn)練一個新的全連接神經(jīng)網(wǎng)絡(luò)用于葉病種類的識別。網(wǎng)絡(luò)模型基于已學(xué)到的底層特征識別能力對葉病種類識別進行參數(shù)微調(diào),可以更快速準確地掌握新數(shù)據(jù)的識別能力。
損失函數(shù)用來衡量網(wǎng)絡(luò)模型預(yù)測的結(jié)果和真實標簽之間的差異,并通過反向傳播的方式更新模型參數(shù)以降低預(yù)測誤差。在分類任務(wù)中最常用的是交叉熵損失函數(shù),可定義為:
其中θ表示模型訓(xùn)練的參數(shù);N表示訓(xùn)練樣本數(shù)量;K表示分類總數(shù)目;y和分別表示真實標簽和模型預(yù)測結(jié)果,且均為矢量表示第i個樣本對應(yīng)的真實標簽中第c個標量值,表示第i個樣本預(yù)測的結(jié)果中第c個標量值。
針對不同蘋果葉病類型的數(shù)據(jù)分布不均衡且數(shù)據(jù)規(guī)模不大的特點,本文提出引入焦點損失[7]的方法對交叉熵損失函數(shù)進行改進,最終使用的損失函數(shù)為:
其中平衡因子α用于控制不同類別數(shù)據(jù)分布不均衡的問題;γ用于降低易區(qū)分樣本的預(yù)測損失,提升難識別樣本的重要性,從而使得模型訓(xùn)練時更好地挖掘數(shù)據(jù)中隱藏的重要信息。
為了驗證本研究算法的有效性,進行了相關(guān)實驗。輸入圖片大小固定為128×128,模型訓(xùn)練均采用小批量隨機梯度下降算法進行損失函數(shù)優(yōu)化,學(xué)習(xí)率初始化為0.001。針對蘋果葉病數(shù)據(jù)集中占比較小的嚴重黑星病、一般雪松銹病和嚴重雪松銹病三種類型的焦點損失函數(shù)平衡因子α設(shè)置為0.25,其余類別設(shè)置為0.75,γ統(tǒng)一設(shè)置為2。
圖2展示了使用遷移學(xué)習(xí)和使用隨機參數(shù)進行蘋果葉病類型識別訓(xùn)練的準確率和驗證準確率對比折線圖??梢钥闯鲞w移學(xué)習(xí)基于已學(xué)到的知識進行訓(xùn)練,可以使模型更快速地收斂,且模型訓(xùn)練準確率和驗證準確率均更高,驗證了遷移學(xué)習(xí)策略在蘋果葉病種類識別的有效性。
圖2 基于隨機參數(shù)和遷移學(xué)習(xí)的訓(xùn)練準確率和驗證準確率對比
表1對使用普通交叉熵損失函數(shù)和焦點損失函數(shù)的蘋果葉病測試集準確率進行了對比,實驗中均使用遷移學(xué)習(xí)方法進行模型預(yù)訓(xùn)練。可以看出,使用焦點損失函數(shù)相比交叉熵損失函數(shù)的Top1準確率提升了0.927%,驗證了損失函數(shù)改進后的網(wǎng)絡(luò)模型分類準確率得到了有效提升。
表1 基于交叉熵損失函數(shù)和焦點損失函數(shù)的分類準確率對比
本研究基于深度遷移學(xué)習(xí)的策略,構(gòu)建深度學(xué)習(xí)網(wǎng)絡(luò)用于蘋果葉病種類的識別,其準確率可達到93.5%以上,驗證了遷移學(xué)習(xí)在蘋果病蟲害識別應(yīng)用中的有效性和可行性。同時,針對數(shù)據(jù)分布不均衡的問題進行損失函數(shù)的改進,分類準確率進一步得到有效提升。未來將針對農(nóng)作物中樣本難以獲取和標注成本高昂的問題繼續(xù)開展遷移學(xué)習(xí)策略的研究。