吳 蔚
(泰山學(xué)院 信息科學(xué)技術(shù)學(xué)院,山東 泰安 271000)
蘋果是世界上重要的水果作物之一,具有重要的經(jīng)濟(jì)和營(yíng)養(yǎng)價(jià)值。蘋果葉部的外觀和生長(zhǎng)狀態(tài)可以為蘋果生長(zhǎng)態(tài)勢(shì)提供預(yù)判依據(jù)。然而蘋果葉部時(shí)常遭受病蟲害侵襲,及時(shí)識(shí)別葉病種類并采取針對(duì)性措施進(jìn)行葉病防治,對(duì)于保證蘋果增量增產(chǎn)具有十分重要的經(jīng)濟(jì)價(jià)值和現(xiàn)實(shí)意義。從20世紀(jì)80年代開始,計(jì)算機(jī)視覺技術(shù)在農(nóng)作物病害識(shí)別領(lǐng)域得到了廣泛的研究和發(fā)展。近十幾年來,隨著大數(shù)據(jù)技術(shù)和硬件設(shè)備的不斷提升,深度學(xué)習(xí)技術(shù)在視覺識(shí)別領(lǐng)域取得了矚目的成就,并被迅速應(yīng)用到植物葉病識(shí)別領(lǐng)域。比如Liu等[1]使用基于GoogLeNet和AlexNet的深度網(wǎng)絡(luò)模型進(jìn)行蘋果葉病診斷,達(dá)到了97.62%的識(shí)別準(zhǔn)確率。宋晨勇[2]等以蘋果作為研究對(duì)象,提出了一種基于深度學(xué)習(xí)的GoogLeNet改進(jìn)模型,在提高蘋果病害識(shí)別準(zhǔn)確率的同時(shí),也降低了模型訓(xùn)練收斂時(shí)間,實(shí)現(xiàn)了蘋果病害的實(shí)時(shí)檢測(cè)。
深度學(xué)習(xí)方法通過構(gòu)建深度神經(jīng)網(wǎng)絡(luò)進(jìn)行模型訓(xùn)練,伴隨著大量的調(diào)參任務(wù)。為了提高神經(jīng)網(wǎng)絡(luò)模型的泛化能力,避免模型訓(xùn)練過程的過擬合,需要輸入大量帶標(biāo)簽的數(shù)據(jù)樣本進(jìn)行學(xué)習(xí)。然而在實(shí)際應(yīng)用中,數(shù)據(jù)樣本的獲取可能存在環(huán)境的變化,比如蘋果葉部圖像可能在不同的光照、不同的拍攝設(shè)備以及不同的拍攝角度下獲取。環(huán)境的變化往往導(dǎo)致獲取的圖像有著不同的數(shù)據(jù)分布。對(duì)某種數(shù)據(jù)分布的樣本識(shí)別效果良好的網(wǎng)絡(luò)模型,用于其他數(shù)據(jù)分布的數(shù)據(jù)識(shí)別時(shí)準(zhǔn)確率可能會(huì)嚴(yán)重降低。為了解決該問題,領(lǐng)域自適應(yīng)方法應(yīng)運(yùn)而生,該方法是一種遷移學(xué)習(xí)方法,目的是將在源域上學(xué)到的分類識(shí)別能力遷移到目標(biāo)域上。領(lǐng)域自適應(yīng)方法根據(jù)數(shù)據(jù)分布的不同將訓(xùn)練數(shù)據(jù)集分為帶標(biāo)簽的源域和帶少量或不帶標(biāo)簽的目標(biāo)域。領(lǐng)域自適應(yīng)的思想就是將不同領(lǐng)域數(shù)據(jù)集映射到同一個(gè)特征空間,使其特征分布盡可能相近,從而可以將源域數(shù)據(jù)集的識(shí)別能力遷移到目標(biāo)域數(shù)據(jù)集上。
基于領(lǐng)域?qū)沟纳窠?jīng)網(wǎng)絡(luò)DANN[3]被提出之后,基于對(duì)抗的思想成為實(shí)現(xiàn)領(lǐng)域?qū)R的主要方法之一。比如chen等[4]在圖像級(jí)別和實(shí)例級(jí)別兩個(gè)層面解決領(lǐng)域偏移問題,實(shí)現(xiàn)了跨域物體檢測(cè),其中所使用的域分類器便是采用對(duì)抗訓(xùn)練方式進(jìn)行。Hsu[5]等通過構(gòu)建過渡領(lǐng)域?qū)崿F(xiàn)源域圖片向目標(biāo)域的轉(zhuǎn)換,采用對(duì)抗訓(xùn)練思想在特征層面實(shí)現(xiàn)源域和目標(biāo)域?qū)R。本研究針對(duì)樣本獲取時(shí)環(huán)境變化導(dǎo)致的數(shù)據(jù)分布差異問題,提出一種基于領(lǐng)域自適應(yīng)的蘋果葉病種類識(shí)別方法,采用對(duì)抗訓(xùn)練思想進(jìn)行領(lǐng)域?qū)R,避免了網(wǎng)絡(luò)模型的重新訓(xùn)練,實(shí)現(xiàn)了較好的蘋果葉病種類跨域識(shí)別效果。
卷積神經(jīng)網(wǎng)絡(luò)(Convolutional neural networks,CNN)的應(yīng)用是深度學(xué)習(xí)在計(jì)算機(jī)視覺識(shí)別領(lǐng)域取得重要進(jìn)展的關(guān)鍵因素之一。與傳統(tǒng)機(jī)器學(xué)習(xí)方法不同,CNN不需要進(jìn)行手工特征提取,而是能夠?qū)斎雸D像實(shí)現(xiàn)端到端的自動(dòng)特征提取。典型的CNN結(jié)構(gòu)主要由卷積層、池化層和全連接層構(gòu)成。
卷積層是CNN的重要結(jié)構(gòu)之一,它通過卷積核對(duì)輸入特征進(jìn)行卷積運(yùn)算,從而實(shí)現(xiàn)特征的提取。卷積層的模型參數(shù)分成卷積核部分和偏差值部分。多個(gè)卷積層之間可以通過并行或串行連接設(shè)計(jì)出不同結(jié)構(gòu)和復(fù)雜程度的卷積網(wǎng)絡(luò)。第i層卷積網(wǎng)絡(luò)的特征輸出yi可用公式表示為:
其中Wi表示第i層卷積核的權(quán)重參數(shù);bi表示偏差值參數(shù);yi-1表示卷積層的特征輸入(其中y0表示網(wǎng)絡(luò)輸入端原始圖像);f表示激活函數(shù)。
池化層的主要作用是強(qiáng)化卷積層提取特征的空間不變性,減輕對(duì)空間位置的過度依賴,從而使得同一物體即使存在位置變化也可以被網(wǎng)絡(luò)模型很好地識(shí)別出來。常用的池化方法有最大池化法和平均池化法,分別計(jì)算池化窗口內(nèi)的最大值和平均值,從而實(shí)現(xiàn)對(duì)特征的下采樣過程。第s個(gè)池化層的第j塊池化區(qū)域的特征輸出可用公式表示為:
經(jīng)過一系列的卷積和池化操作之后,通常連接一個(gè)或多個(gè)全連接層進(jìn)行圖像分類任務(wù)。最后的輸出層通常再經(jīng)過Softmax函數(shù)將輸出結(jié)果變?yōu)橹禐檎液蜑?的概率分布。第j個(gè)輸出結(jié)果Oj可表示為:
其中j∈{1,…,K},K為最后一個(gè)連接層的輸出個(gè)數(shù);z代表最后一個(gè)連接層的輸出向量。
傳統(tǒng)的深度學(xué)習(xí)模型主要針對(duì)相同數(shù)據(jù)分布的訓(xùn)練樣本進(jìn)行訓(xùn)練,并應(yīng)用于相同分布的測(cè)試樣本上。當(dāng)訓(xùn)練樣本和測(cè)試樣本存在不同數(shù)據(jù)分布時(shí),基于某一種數(shù)據(jù)分布學(xué)習(xí)到的模型通常無法很好適應(yīng)這種數(shù)據(jù)分布差異,在具體的分類識(shí)別任務(wù)中表現(xiàn)出較差的泛化性。領(lǐng)域自適應(yīng)就是用來解決這種數(shù)據(jù)分布差異問題的方法。它將分布不同的數(shù)據(jù)分為源域和目標(biāo)域,通過不同的方式實(shí)現(xiàn)源域和目標(biāo)域的數(shù)據(jù)對(duì)齊,從而將從源域數(shù)據(jù)學(xué)到的分類識(shí)別能力遷移到目標(biāo)域上。所以,領(lǐng)域自適應(yīng)方法本質(zhì)是一種遷移學(xué)習(xí)方法。
用于本研究的蘋果葉病圖片數(shù)據(jù)來源于AI-Challenger-Plant-Disease-Recognition(https://challenger.ai/),共包含健康型、一般黑星病型、嚴(yán)重黑星病型、灰斑病型、一般雪松銹病型、嚴(yán)重雪松銹病型6種類型。對(duì)每種葉病類型進(jìn)行數(shù)據(jù)增廣操作以擴(kuò)充數(shù)據(jù)量,主要包括隨機(jī)裁剪、隨機(jī)縮放、隨機(jī)旋轉(zhuǎn)等操作。擴(kuò)充后的數(shù)據(jù)集共8169張圖片,針對(duì)每種類別隨機(jī)選取70%數(shù)據(jù)作為訓(xùn)練集,30%數(shù)據(jù)作為測(cè)試集。訓(xùn)練集中每個(gè)類別按照4:1的比例劃分源域數(shù)據(jù)和目標(biāo)域數(shù)據(jù)。為了模擬源域和目標(biāo)域不同的數(shù)據(jù)分布,針對(duì)訓(xùn)練集中的目標(biāo)域數(shù)據(jù)和測(cè)試集數(shù)據(jù)原始圖片進(jìn)行增加亮度操作[6]。所有圖片被處理為224×224的固定分辨率。
本研究中源域數(shù)據(jù)集包含大量有標(biāo)簽數(shù)據(jù),目標(biāo)域數(shù)據(jù)集包含大量無標(biāo)簽數(shù)據(jù)。假設(shè)蘋果葉病訓(xùn)練集中源域圖片XS的數(shù)據(jù)量為ns,所屬類別數(shù)為K,則源域數(shù)據(jù)可表示為,其中 xs∈XS,ys∈YS={1,2,…,K}。目標(biāo)域圖片Xt的數(shù)據(jù)量為nt,則目標(biāo)域數(shù)據(jù)可表示為,其中 xt∈Xt。Xs與 Xt中數(shù)據(jù)相似但分布不同,構(gòu)成跨域數(shù)據(jù)集,且Xt中數(shù)據(jù)標(biāo)簽Yt與Ys相同。領(lǐng)域自適應(yīng)的目的是通過降低源域和目標(biāo)域中的數(shù)據(jù)分布差異,使得具備對(duì)源域數(shù)據(jù)分類識(shí)別能力的網(wǎng)絡(luò)模型能夠?qū)δ繕?biāo)域數(shù)據(jù)進(jìn)行分類預(yù)測(cè)。
本研究中基于領(lǐng)域自適應(yīng)的蘋果葉病分類網(wǎng)絡(luò)模型如圖1所示,主要包含三個(gè)模塊:特征提取模塊G,葉病分類模塊C和領(lǐng)域分類模塊D。其中特征提取模塊的功能是提取特征用于葉病分類識(shí)別,同時(shí)混淆源域和目標(biāo)域的特征分布;葉病分類模塊的功能是利用提取的特征對(duì)葉病種類進(jìn)行識(shí)別;領(lǐng)域分類模塊的功能是識(shí)別傳入的特征來自源域還是目標(biāo)域??梢钥闯?,通過特征提取模塊得到的特征同時(shí)作為其他兩個(gè)模塊的輸入。
圖1 基于領(lǐng)域自適應(yīng)的神經(jīng)網(wǎng)絡(luò)模型
為了對(duì)模型進(jìn)行訓(xùn)練,需要輸入源域圖片流經(jīng)特征提取模塊后進(jìn)入葉病分類模塊進(jìn)行預(yù)測(cè),得到的結(jié)果與真實(shí)標(biāo)簽通過交叉熵?fù)p失函數(shù)計(jì)算出分類損失Ly,并進(jìn)行反向傳播更新該網(wǎng)絡(luò)分支的參數(shù)。另外,需要輸入源域圖片和目標(biāo)域圖片,流經(jīng)特征提取模塊后進(jìn)入領(lǐng)域分類模塊進(jìn)行領(lǐng)域預(yù)測(cè),該分支的領(lǐng)域預(yù)測(cè)損失Ld可表示為:
其中I表示輸入的源域和目標(biāo)域圖片,d∈{0,1},且當(dāng)輸入圖片來自源域時(shí)取值0,來自目標(biāo)域時(shí)取值1。領(lǐng)域分類模塊的訓(xùn)練目標(biāo)是使領(lǐng)域分類器更加準(zhǔn)確,而網(wǎng)絡(luò)提取模塊的訓(xùn)練目標(biāo)是提取源域和目標(biāo)域中共性的特征,使得領(lǐng)域分類器無法辨別。因此,該分支的網(wǎng)絡(luò)訓(xùn)練是一種典型的對(duì)抗思想,其訓(xùn)練目標(biāo)可表示為maxGminDLd。在具體實(shí)施時(shí),特征提取模塊和領(lǐng)域?qū)鼓K之間通過添加梯度反轉(zhuǎn)層(Gradient Reversal Layer,GRL)[7],實(shí)現(xiàn)對(duì)抗訓(xùn)練的效果。匯總以上兩條分支的損失函數(shù),便構(gòu)成了網(wǎng)絡(luò)模型的最終損失Ltotal,表示為:
其中λ是用來平衡兩條網(wǎng)絡(luò)分支的超參數(shù)。訓(xùn)練階段結(jié)束后,使用測(cè)試集數(shù)據(jù)進(jìn)行蘋果葉病分類預(yù)測(cè)。此時(shí)需要移除模型中的領(lǐng)域分類模塊,只保留特征提取模塊和葉病分類模塊。
為了驗(yàn)證本研究算法中領(lǐng)域自適應(yīng)方法的有效性,與傳統(tǒng)神經(jīng)網(wǎng)絡(luò)模型方法進(jìn)行了實(shí)驗(yàn)對(duì)比,兩者的特征提取模塊和葉病分類模塊均使用經(jīng)過預(yù)訓(xùn)練的GoogLeNet神經(jīng)網(wǎng)絡(luò)架構(gòu)。領(lǐng)域分類模塊由3個(gè)全連接層構(gòu)成,每一層的神經(jīng)元個(gè)數(shù)分別為1024、512和1。實(shí)驗(yàn)對(duì)比結(jié)果如表1所示??梢钥闯?,在只使用源域數(shù)據(jù)訓(xùn)練的傳統(tǒng)神經(jīng)網(wǎng)絡(luò)模型進(jìn)行跨域葉病種類識(shí)別的平均準(zhǔn)確率只有37.6%,說明經(jīng)過圖片亮度處理后的目標(biāo)域圖片與源域圖片存在較大數(shù)據(jù)分布差異,識(shí)別準(zhǔn)確率較低。而經(jīng)過領(lǐng)域自適應(yīng)訓(xùn)練的神經(jīng)網(wǎng)絡(luò),能夠縮小這種數(shù)據(jù)分布差異,使得對(duì)測(cè)試集樣本的識(shí)別準(zhǔn)確率提高到82.3%。實(shí)驗(yàn)結(jié)果充分說明了在蘋果葉病跨域數(shù)據(jù)集上使用領(lǐng)域自適應(yīng)算法的必要性,可以帶來較大的準(zhǔn)確率提升。
表1 基于不同網(wǎng)絡(luò)模型的蘋果葉病分類準(zhǔn)確率對(duì)比
本文基于領(lǐng)域自適應(yīng)方法進(jìn)行蘋果葉病跨域樣本上的分類識(shí)別研究,首先使用源域數(shù)據(jù)訓(xùn)練蘋果葉病分類器,然后通過網(wǎng)絡(luò)對(duì)抗訓(xùn)練對(duì)齊不同領(lǐng)域之間的數(shù)據(jù)分布,實(shí)現(xiàn)了跨域樣本上較好的葉病分類識(shí)別效果。實(shí)驗(yàn)結(jié)果驗(yàn)證了領(lǐng)域自適應(yīng)方法在蘋果葉病跨域識(shí)別上的有效性。未來的研究中將在農(nóng)業(yè)領(lǐng)域跨域識(shí)別問題上進(jìn)行更加有益的探索。