羅 玲,宋 科,王 皓,資彩飛,奉 偉,杜銘銘,孫仲享,曹志勇
(1.云南農(nóng)業(yè)大學,a.大數(shù)據(jù)學院;b.植物保護學院,昆明 650500;2.云南高創(chuàng)人才服務有限公司,昆明 650221)
外來入侵物種是指在中華人民共和國境內(nèi)無天然分布,經(jīng)自然或人為途徑傳入,并對生態(tài)系統(tǒng)、生境、物種帶來威脅或者危害,影響中國生態(tài)環(huán)境,損害農(nóng)林牧漁業(yè)可持續(xù)發(fā)展和生物多樣性的外來物種。云南省是中國重要的生物多樣性寶庫和全球34 個物種最豐富的熱點地區(qū)之一,同時也是中國西南生態(tài)安全屏障,是外來入侵物種侵入中國的南大門。近年來,云南省重大植物疫情呈嚴重態(tài)勢,植物界“頭號殺手”紫莖澤蘭已遍布云南省80%的土地,并以每年10~30 km2北進,給中國的農(nóng)業(yè)生產(chǎn)帶來巨大損失,對生態(tài)安全造成嚴重威脅。入侵物種防治迫在眉睫,準確識別外來入侵物種至關重要,這對保障中國糧食安全、生物安全和生態(tài)安全有著重要意義,而農(nóng)業(yè)技術與信息技術結合是未來中國農(nóng)業(yè)的發(fā)展方向,二者融合也是中國農(nóng)業(yè)生產(chǎn)智能化、現(xiàn)代化的關鍵[1]。2018 年喬曦等[2]采用卷積神經(jīng)網(wǎng)絡模型對野外薇甘菊圖像進行識別,GoogLeNet、VGG-16 的準確率分別達95.5%、97.5%;2022 年閆瑞華[3]提出基于百度AI 開發(fā)平臺圖像識別接口服務的濕地外來入侵物種監(jiān)測系統(tǒng),可有效支持濕地外來入侵物種監(jiān)測工作。上述研究均取得不錯的效果,可見在過去的幾年中,深度神經(jīng)網(wǎng)絡已經(jīng)取得了顯著的發(fā)展,但這些網(wǎng)絡的計算復雜度和資源消耗也不斷增加,要將其部署在實時應用程序或者資源受限的設備中,無疑是一個巨大的挑戰(zhàn)[4],終端設備產(chǎn)生的數(shù)據(jù)需發(fā)送到服務器端,利用龐大的計算資源進行訓練后返回結果,需保證高質量的網(wǎng)絡信號。然而云南省地形特征以山地高原為主,地勢起伏較大,通信網(wǎng)絡覆蓋率較低,若位于無網(wǎng)或者網(wǎng)絡延時較長的地區(qū),以上研究則無法滿足實時性需求,不能很好地應用于實際。隨著外侵物種數(shù)據(jù)越來越多地在介于終端和云端之間的網(wǎng)絡邊緣設備中產(chǎn)生,邊緣端不僅在靠近數(shù)據(jù)源頭的一側匯集數(shù)據(jù),而且通過計算機系統(tǒng)就近提供服務,所以在邊緣端處理數(shù)據(jù)會更有效,而智能手機的普及度及圖像處理能力和傳輸能力大幅提升,其輕巧便捷性和精確性更能滿足采樣的特殊要求[5],且為了向公眾普及農(nóng)業(yè)外來入侵物種知識,便于廣泛開展宣傳培訓,提高廣大人民群眾對外來入侵物種的識別能力和防控意識,可以在物聯(lián)網(wǎng)設備及其附近部署的網(wǎng)絡節(jié)點上實現(xiàn)人工智能算法的能力,將數(shù)據(jù)的處理、分析和應用推到離用戶更近的地方,更加快速、準確地響應用戶需求的邊緣智能無疑更加可行,所以外侵物種識別技術需要在邊緣端發(fā)力,將傳統(tǒng)數(shù)據(jù)中心的算力向邊緣側遷移。本研究使用MobileNet-v2 模型進行遷移學習,并對網(wǎng)絡模型作出改進,旨在建立一種能夠快速訪問邊緣設備生成的實時數(shù)據(jù)、響應實時識別事件的邊緣計算模型,這將是云南省外侵物種防治新途徑,是中國外來物種入侵精準防控、保障生物安全、生態(tài)安全和糧食安全的重要支撐。
試驗數(shù)據(jù)集主要來自云南農(nóng)業(yè)大學外侵物種數(shù)據(jù)系統(tǒng)和云南省外侵物種監(jiān)管部門無人機采集數(shù)據(jù),試驗共采集到5 000 余張圖像,最終挑選出4 720個合格樣本構成云南省主要外侵物種樣本集,包含鬼針草、喀西茄、水花生和紫莖澤蘭4 種云南省主要外侵物種。將樣本集以8∶1∶1 的比例劃分為訓練集、驗證集和測試集。在訓練網(wǎng)絡模型之前,將獲取的原始圖像裁剪成大小為224 px×224 px 的圖像,外侵物種部分樣本如圖1 所示。
圖1 外侵物種部分樣本
MobileNet 網(wǎng)絡是針對于邊緣端或嵌入式設備的輕量級卷積神經(jīng)網(wǎng)絡,與傳統(tǒng)的神經(jīng)網(wǎng)絡相比,MobileNet 網(wǎng)絡在準確率小幅降低的同時大大減少了模型的參數(shù)量和運算量,能夠實現(xiàn)外侵物種圖像的實時識別[6,7]。
在外侵物種識別領域,由于外侵物種的各個部位(花、果、葉)受季節(jié)影響,短期內(nèi)無法獲得每個部位大量的高質量訓練數(shù)據(jù)用于模型的訓練,而利用深度學習解決圖像識別問題往往需要大量的訓練樣本,數(shù)據(jù)量過少時,模型結構層次一旦加深就容易出現(xiàn)過擬合的問題,導致訓練得出的模型泛化能力不足。遷移學習是指通過從已經(jīng)學習的相關任務中轉移知識來改進在新任務中的學習,目前已成為機器學習的一個熱門領域[8],基于遷移學習的方法能在一定程度上減緩過擬合問題[9]。
由于大部分數(shù)據(jù)集存在相關性,所以通過遷移學習可以將已經(jīng)學習到的模型權重遷移到新模型中,從而加快新模型的訓練效率。本研究的數(shù)據(jù)集為4 種植物圖片,而ImageNet 數(shù)據(jù)集一直是評估圖像分類算法性能的基準,涵蓋了大部分生活中的圖片類別,因此試驗將已在ImageNet 數(shù)據(jù)集上預訓練好的MobileNet 模型作為基礎模型,用于解決云南省主要外侵物種識別問題,實現(xiàn)機器學習在相似領域的遷移。
輕量化模型設計的思想是在不損失網(wǎng)絡準確度的前提下,降低網(wǎng)絡的參數(shù)量,使模型更簡單化。目前輕量化主要沿著2 個方向進行展開,一是將已經(jīng)訓練好的網(wǎng)絡模型進行壓縮等操作后得到輕量化模型,二是直接設計較小的卷積神經(jīng)網(wǎng)絡再進行訓練,本研究采用后者。2017 年,Google 團隊提出了MobileNet-v1 網(wǎng)絡,它是一種專門針對移動端或者嵌入式設備的輕量級卷積神經(jīng)網(wǎng)絡[10];與傳統(tǒng)的卷積神經(jīng)網(wǎng)絡相比,MobileNet-v1 網(wǎng)絡在準確率上有小幅降低,但減少了模型的參數(shù)量和計算量。MobileNet-v1 模型由多個深度可分解卷積[11]構成。在每個卷積后進行批歸一化[12](Batch normalization,BN)和ReLU 操作,在MobileNet-v1 模型中主要有2個值得注意的地方,一是引入深度可分解卷積,減少了模型參數(shù)量,二是增加了超參數(shù)α、β(α為寬度倍率,主要用來控制卷積過程中所采用卷積核的個數(shù),當α取不同值時,其效果也不一致;β為輸入圖像分辨率,不同分辨率也會影響網(wǎng)絡模型的準確度),本研究采用分辨率為224 px×224 px的圖像作為研究對象。2018 年,Google 團隊提出MobileNet-v2 模型,相比MobileNet-v1 模型其準確率更高,模型更?。?3],與MobileNet-v1模型相比主要進行了以下方面的改進。
1)提出了倒殘差(Inverted residual)結構[14]。首先采用1 ×1 的卷積核進行升維,然后采用3×3 的卷積核進行深度卷積操作,最后通過1×1 的卷積核進行降維,采用ReLU6 激活函數(shù),其與ReLU 相比,具有更強的非線性特性,對于更復雜的數(shù)據(jù)分布和模型擬合能力有更好的表現(xiàn)。ReLU6 激活函數(shù)將最大輸出設為6,更容易出現(xiàn)權重不更新的現(xiàn)象;使用ReLU6 激活函數(shù)可以防止數(shù)值爆炸;由于整數(shù)位最大為6,只占3 個bit ,其他bit 將全部用于表示小數(shù)位,可以增強浮點數(shù)的小數(shù)位表達能力。
2)使用了線性瓶頸(Linear bottlenecks)。在倒殘差結構最后一個1×1 卷積層中使用了線性的激活函數(shù)。倒殘差結構是一種兩端細中間粗的結構,輸出時是一個低維的特征向量,而ReLU6 激活函數(shù)對低維特征信息造成的損失較大,對高維特征信息造成的損失較小,因此需使用線性激活函數(shù)替代Re-LU6 激活函數(shù)來避免信息損失。
針對ImageNet 數(shù)據(jù),集取MobileNet-v2 模型中不同寬度倍率α的識別結果[13]。由表1 可知,MobileNet-v2 模型中的寬度倍率越大其準確率越高,模型參數(shù)量越大[13]。
表1 不同寬度倍率α 在ImageNet上的試驗結果
分別將α為1.0 和1.4 的MobileNet-v2 模型應用在本研究數(shù)據(jù)集上,結果如表2 所示。寬度倍率增大后的網(wǎng)絡模型識別準確率反而更低。由此可見,網(wǎng)絡模型越復雜,其識別效果并不一定越好;相同的超參數(shù)取值在不同的數(shù)據(jù)集上表現(xiàn)結果可能不一致。這可能是因為寬度倍率直接控制卷積過程中的卷積核個數(shù),將寬度倍率由1.0 調整到1.4 意味著卷積過程中采用了更多的卷積核個數(shù),使得模型更復雜、參數(shù)量更大,但本研究的數(shù)據(jù)集有限,不適合用過于復雜的網(wǎng)絡模型。這也驗證了模型越復雜,越需要大量的數(shù)據(jù)對其進行訓練,以保證模型的收斂性和泛化性能[15]。
表2 不同寬度倍率α 在本研究數(shù)據(jù)集上的試驗結果
試驗將MobileNet-v2 模型中的超參數(shù)α賦值為1.0,對測試集中472 個樣本進行識別測試,其中,有452 個樣本被正確識別,20 個被錯誤識別。圖2 為部分錯誤識別樣本,每一個被錯誤識別的樣本都可以清晰辨認,但MobileNet-v2 模型卻不能正確識別。
圖2 MobileNet-v2 模型部分錯誤識別樣本
針對MobileNet-v2 模型識別不穩(wěn)定的問題,分析其原因可能是MobileNet 的直筒結構使其缺乏網(wǎng)絡層之間的交流,對不同的特征圖都賦予相同的權重,不利于有效特征的學習。因此,基于以上問題提出3 點改進方法:①增加通道注意力機制模塊;②更新激活函數(shù);③壓縮倒殘差塊數(shù)量。
在模型中加入通道注意力機制模塊,提高網(wǎng)絡模型對特征的獲取能力。Tang 等[16]等在輕量型神經(jīng)網(wǎng)絡模型Shuffle Net-V1 和Shuffle Net-V2 中添加了注意力機制模塊,經(jīng)過改進后的2 種模型具有較高的實時性和識別性能。本研究通過嵌入通道注意力機制的代表網(wǎng)絡壓縮-激勵網(wǎng)絡[17](Squeezeand-Excitation network,SE 網(wǎng)絡)來更新基礎網(wǎng)絡模型的倒殘差結構,SE 網(wǎng)絡會對特征圖向量進行1 次平均池化和1 次全連接操作,假設輸入特征圖的通道數(shù)為2,先對每個通道上的特征圖進行平均池化操作得到一個元素個數(shù)為2 的向量,然后依次通過2個全連接層,輸出向量中的每個元素對應輸入特征圖中每個通道的權重,最終將得到的權重和輸入特征圖的對應通道數(shù)據(jù)相乘得到最終SE 模塊的輸出。
MobileNet-v2 模型中使用ReLU6 激活函數(shù),僅在ReLU 激活函數(shù)的基礎上限制了最大輸出,仍然存在當x=0 時不可微,不能保證模型在優(yōu)化過程中梯度的可計算性,并且ReLU6激活函數(shù)在x≤0或x≥6時,函數(shù)的導數(shù)為0,在反向傳遞中,梯度完全為0,權重不再更新,從而網(wǎng)絡不能學習到有效的特征。目前,Swish 激活函數(shù)已被證明比ReLU 激活函數(shù)具有更好地傳播信息能力[18],Swish 激活函數(shù)的表達式如下:
式中,x代表輸入的變量,可以是一個實數(shù)、向量或矩陣;σ(x)為Sigmoid 函數(shù),Sigmoid 函數(shù)的曲線是平滑的,并且在所有點上都是可微的,從而保證了模型優(yōu)化過程中梯度的可計算性,且在正半軸不存在導數(shù)為0 的區(qū)域,當輸入值為0 時,Sigmoid 函數(shù)的導數(shù)達最大值,為0.25,而輸入在任一方向上離0 點越遠,導數(shù)越接近0。使用Swish 激活函數(shù)后確實能夠提高網(wǎng)絡模型的準確率,但是也存在一些問題,如計算、求導以及量化過程復雜,特別針對移動端的設備,為了加快速度通常采取量化操作。
因此,本研究提出了h-swish(hard-swish)激活函數(shù)[19],該激活函數(shù)可以提高模型的準確率,且不會增加計算的復雜度,更有利于將模型部署在邊緣設備或者移動設備上。h-swish 激活函數(shù)的表達式如式(2)所示,函數(shù)曲線如圖3 所示。
圖3 Swish 激活函數(shù)、h-swish 激活函數(shù)曲線
式中,x為輸入變量,可以是實數(shù)、向量或矩陣。
對于小數(shù)量的數(shù)據(jù)集,當網(wǎng)絡模型過深時,不但模型的參數(shù)量較多,而且識別準確率可能降低。在MobileNet-v2 模型中,除卷積層和池化層外,用到17個倒殘差結構,改進后將倒殘差結構減少至12 個,減少了模型參數(shù)量。
由表3 可知,改進后的MobileNet-v2 模型在測試集上的準確率為96.8%,參數(shù)量為1 535 093;上述被錯誤識別的樣本采用改進后的MobileNet-v2 模型進行識別,結果如圖4 所示,除D1 樣本被錯誤識別為紫莖澤蘭外,其余樣本均被正確識別,其原因可能是該樣本中的鬼針草和其他大多數(shù)鬼針草形狀不相似,該類型鬼針草樣本的試驗數(shù)據(jù)集較少,因此導致其被錯誤識別。
表3 MobileNet-v2 模型改進前后的結果對比
圖4 改進后的MobileNet-v2 模型部分樣本識別結果
通過對現(xiàn)有模型分析發(fā)現(xiàn),MobileNet-v2 模型無法完全解決外侵物種識別這一特定問題,仍存在潛在的改進空間,可以進一步優(yōu)化模型的表現(xiàn)。在MobileNet-v2 模型的改進過程中,多個優(yōu)點的疊加為其性能提供了強大的助力,從而使其在多個方面有突出的表現(xiàn)。改進后的MobileNet-v2 模型不僅在準確率上有所提升,還在模型輕量化、特征強化和移動端應用方面帶來了多重優(yōu)勢。
1)改進后的MobileNet-v2 模型在測試集上的準確率提升了1 個百分點,但模型參數(shù)量僅為改進前的67.80%。改進后的模型不僅有了更高的識別準確率,而且參數(shù)量更少。
2)SE 模塊建立了模型內(nèi)部特征圖中通道信息之間的關系,將全局平均池化后注入到模型的通道中,對特征圖張量中各通道特征進行權重分配,強化擁有較多重要特征的通道對當前任務所起的作用,提高了卷積神經(jīng)網(wǎng)絡對不同通道特征的敏感性,對特征向量的每個通道分析出了一個權重關系,把認為比較重要的通道賦予更大的權重,從而提高模型的識別準確率[20]。
3)Swish 激活函數(shù)相對于ReLU 激活函數(shù)能實現(xiàn)更高的神經(jīng)網(wǎng)絡測試準確度[21],改進的h-swish 激活函數(shù)更利于在移動端部署與優(yōu)化,同時也保持了與Swish 激活函數(shù)相當?shù)木龋?2]。
4)通過壓縮網(wǎng)絡層數(shù)可以減少網(wǎng)絡的冗余參數(shù),使模型參數(shù)量更少[23],更適合移動終端,通過將任務從資源受限的設備轉移到功能強大的邊緣設備上,可以減少系統(tǒng)整體延遲和能耗[24]。
雖然試驗方法得到了不錯的準確率和模型參數(shù)量,但模型優(yōu)化在實踐中也受到資源、數(shù)據(jù)和場景的限制,同時有一些方向可以繼續(xù)改進,使模型達到更好的性能和適應性。
1)由于時間限制,本研究僅對比了MobileNet-v2模型的2 個寬度倍率,可能無法充分利用寬度倍率的優(yōu)勢,如果時間更充足,可以調整寬度倍率的間隔,探究更佳的寬度倍率。
2)用于訓練機器學習網(wǎng)絡模型的數(shù)據(jù)不能完全代表鬼針草、喀西茄、水花生和紫莖澤蘭的多樣性,例如,鬼針草葉片、花和果實的形狀、紋理和顏色不相同,而試驗數(shù)據(jù)集中大部分樣本為葉片,降低了模型的泛化能力。
3)由于時間有限,本研究的數(shù)據(jù)集中只包含4種云南省主要外侵物種圖像,后續(xù)需要采集更多種類的外侵物種圖像來豐富訓練集,完善識別模型,進一步提高模型的識別準確率。
4)由于外侵物種野外環(huán)境復雜,干擾因素較多,存在目標物被遮擋的情況,之后可以在模型中嵌入算法將圖像補全;此外,使用無人機采集圖像時不能保證每一張圖像的清晰度,可以引入相關算法對圖像進行去模糊處理,從而提高模型的識別準確率。
5)將來通過無人機在野外采集和識別外侵物種時,記錄其入侵地的經(jīng)緯度、地形部位、發(fā)生面積等信息,當收集到大量數(shù)據(jù)后,根據(jù)外侵物種發(fā)生地的特征進行預測,提前采取有效措施防止外侵物種發(fā)生。
云南省是中國外來物種入侵重災區(qū),現(xiàn)有外侵物種的識別工作需要工作人員到達外侵物種發(fā)生地進行識別,但云南省地處低緯度高原,地理位置特殊、地形地貌復雜,外侵物種識別的應用場景通常都是邊緣端的設備?,F(xiàn)有外侵物種識別模型復雜度較高,模型部署對硬件資源要求高,且模型的訓練、保存需要很大的存儲空間,增加了研究成本,很難投入實際應用。針對云南省主要外侵物種識別面臨的挑戰(zhàn),本研究首先采用一種應用于云南省主要外侵物種識別的邊緣計算模型,采用輕量級卷積神經(jīng)網(wǎng)絡MobileNet-v2 模型對云南省主要外侵物種進行識別,但經(jīng)訓練、驗證和測試發(fā)現(xiàn)模型識別結果不穩(wěn)定;針對MobileNet 直筒結構不利于有效特征學習的問題,對MobileNet-v2 網(wǎng)絡結構進行嵌入SE 模塊、更新激活函數(shù)和壓縮網(wǎng)絡層數(shù)3 方面的改進,最終識別準確率達96.8%,模型參數(shù)量僅為1 535 093,改進算法分類準確率高,網(wǎng)絡參數(shù)量少,適合部署于邊緣設備和移動端,能更好地應用于云南省防治外侵物種領域。邊緣計算模型在云南省主要外侵物種識別中很有前途,顯著降低了將數(shù)據(jù)發(fā)送到云進行處理的延遲和成本,可以推動深度學習在外侵物種防治領域的廣泛應用,提高公眾防范生物入侵的意識和對外侵物種相關法律法規(guī)、形態(tài)識別、防控技術等知識的普及。