?

基于改進DPGN的少樣本圖像分類算法研究

2024-03-19 11:47白燕娥
關鍵詞:分布圖度量分類器

王 玲,孫 瑩,王 鵬,白燕娥

(長春理工大學計算機科學技術學院,長春 130022)

0 引言

圖像分類[1-2]是人工智能領域的基本任務?;谏疃葘W習的圖像分類方法在圖像分類任務上的識別精度已經超越人類[3],但其性能的好壞嚴重依賴于數據量的多少,對于數據不足的情況,算法很容易發生過擬合。少樣本圖像分類算法的誕生為上述問題提供了相應的解決方案。少樣本圖像分類任務使得算法在數據稀疏的條件下可以順利完成圖像分類,這不僅降低了數據采集、標注的成本和難度,而且有效地解決了一些高性能圖像分類模型因數據量有限無法得到廣泛應用的問題。綜上,少樣本圖像分類算法的研究存在著重要的意義。度量學習(metric learning,ML)是少樣本圖像分類任務使用的主要方法之一?;贛L的少樣本圖像分類方法一般分為3步:首先,把圖像樣本特征映射到嵌入空間;其次,通過給定的距離度量算法計算特征在嵌入空間中的距離;最后,依據樣本間距離將樣本分到相應的類別。Vinyals等[4]提出匹配網絡,使用長短期記憶網絡和余弦距離度量方法實現分類任務。Snell等[5]提出原型網絡,使用歐氏距離作為樣本間距離的度量方法。Sung等[6]認為匹配網絡和原型網絡使用的樣本距離度量方法單一且固定,在一定程度上限制了模型的性能,提出關系網絡,使用神經網絡訓練出一個帶參數的距離度量函數,自適應地完成樣本間相似度計算。Li等[7]提出深度最近鄰神經網絡,使用樸素貝葉斯最近鄰算法,比較圖像和類別局部描述間的相似度進行分類,該網絡注重圖像與類別間的距離度量,有效提高了分類結果。Yang等[8]提出DPGN算法,使用L2距離作為度量距離函數,構造一種包含點圖和分布圖的雙圖神經網絡模型,展示了圖神經網絡在少樣本圖像分類任務中的巨大潛力,顯著提升了少樣本圖像分類任務的準確率,但距離度量方法簡單。Zhang等[9]提出使用推土機距離作為度量距離方法,確定圖像樣本的相似性,同時設計交叉引用機制生成距離函數中的權重,最小化背景區域和圖像中不同目標部分權重變化帶來的影響,提升了分類準確度,但在測試任務與訓練任務間距較遠時,存在分類效果不佳的問題。Liu等[10]提出按類度量尺度機制,在訓練期間,將度量標量設成一個可學習的參數,讓模型學習到更具轉移性和可鑒別性的特征表示;在測試期間,利用凸優化程序生成最佳度量標量來改善最近鄰決策,該算法改進了少樣本圖像分類任務的類度量尺度,并提高了模型的分類性能。由此可知,距離度量方式的選取對少樣本圖像分類算法的影響較大。

為了解決DPGN算法對少樣本圖像分類任務準確率不高的問題,本研究基于DPGN算法提出SFOD_DPGN算法,主要創新如下。

1)改進特征提取模塊

①在殘差塊中融入SimAM注意力機制。為解決特征提取模塊對圖像特征提取能力不足的問題,在骨干神經網絡Resnet12的4個殘差塊中融入SimAM注意力機制,使其能夠學習到更多、更豐富的圖像特征信息;②優化歸一化方法和激活函數。為解決Resnet12網絡中歸一化方法會受到一次訓練所選取樣本數量大小的影響,將批量歸一化與ReLu激活函數搭配使用的方式改為濾波器響應歸一化與閾值線性單元激活函數搭配使用的方式,在保障算法性能的同時,提升算法的分類準確率。

2)改進分類器模塊

①在卷積神經網絡中引用全維動態卷積。為解決分類器模塊分類效果不佳的問題,在分類器模塊中選用全維動態卷積替換普通卷積,提高分類器的魯棒性;②改進距離度量方法。由于分類器模塊所選取的距離度量方法過于簡單,容易導致計算樣本間距離存在偏差,使用馬氏距離和推土機距離替換L2距離度量函數,提升分類器度量樣本間距離的能力,進一步提高算法分類的準確率。

1 理論基礎

1.1 少樣本圖像分類問題描述

少樣本圖像分類任務強調在少量樣本中進行快速學習的能力,同時對新類別的分類具有良好的泛化能力,也稱為nway-kshot問題,其中n表示數據集中類別的個數,k表示每個類別中樣本的個數,k的取值范圍一般在1~20,實驗中通常取1和5。給定有n個類別且每個類別含有k個圖像樣本的支持集和存在多個與支持集類別不同圖像樣本的查詢集,在訓練階段,為支持集和查詢集提供類別標簽;在測試階段,給定測試數據,在支持集很少的情況下,模型可以準確給出查詢集的標簽。

1.2 DPGN算法

DPGN算法是少樣本圖像分類效果較好的方法,由特征提取模塊和分類模塊2部分組成。

特征提取模塊采用Resnet12網絡,圖1為其網絡和殘差塊的結構圖。

圖1 Resnet12網絡結構和殘差塊結構圖

如圖1(a)所示,該網絡通過卷積、歸一化、激活函數、池化等操作對圖像進行特征提取,主要由4個相同結構的殘差塊組成。如圖1(b)所示,每個殘差塊由卷積、歸一化、激活函數和最大池化操作構成。

分類器模塊是基于 GNN(graph neural network),由多輪更新迭代組成,每一輪均由點圖和分布圖構成。點圖通過收集每個樣本的一對多關系來生成分布圖,而分布圖通過傳遞每對樣本間的分布關系來細化點圖,圖2展示了分類器模塊的結構圖。

圖2 分類器模塊結構圖

用圖像樣本的特征作為點圖的節點,通過計算相鄰兩節點的相似度形成點圖的邊,以此來初始化點圖;將點圖的邊傳遞給分布圖,作為分布圖的節點,分布圖的邊代表點圖邊之間的分布相似度,將得到的分布圖的邊傳遞到點圖中,以此構成更具判別性的點圖的節點,重復迭代上述過程。該算法使用Softmax函數作為分類函數,用交叉熵損失函數來計算節點損失,從而獲得節點的分類準確率。

2 SFOD_DPGN算法

2.1 算法整體結構

本研究對DPGN算法進行改進,提出少樣本圖像分類算法SFOD_DPGN,結構如圖3所示。

圖3 SFOD_DPGN算法結構圖

圖3以2way-1shot為例,訓練模型數據集包括2個支持集和1個查詢集,綠色和藍色小球代表支持集中的2個不同樣本,橘色小球代表查詢集樣本。首先,對特征提取模塊進行改進,融入注意力機制,并優化歸一化層和激活函數,改進后的骨干神經網絡稱為SF_Resnet12,通過該網絡對輸入樣本進行特征提取,將得到的特征信息輸送到分類器中;然后,對分類器模塊進行改進,在點圖到分布圖傳播P2D的嵌入空間、點圖距離度量和分布圖距離度量過程的嵌入空間引用動態卷積,并使用馬氏距離和推土機距離作為分類器中度量距離的方法,依據點圖和分布圖的節點間距離來迭代更新數輪,通過得到的點圖獲取最終的分類結果,也就是通過判斷橘色小球分別與綠色小球和藍色小球間的距離遠近,最后推斷出橘色小球的類別。

2.2 改進特征提取模塊

2.2.1 在殘差塊中融入SimAM注意力機制

為使骨干神經網絡能夠學習到更多、更豐富的圖像特征,并在不額外引入參數的情況下,在骨干神經網絡中融入SimAM注意力機制,改進后殘差塊的結構如圖4所示。

圖4 融入SimAM注意力機制后的殘差塊結構圖

在骨干神經網絡每個殘差塊主路的第2個卷積操作后融入SimAM注意力機制,增強特征提取能力,提升算法分類的準確率。SimAM注意力機制的結構如圖5所示。

圖5 SimAM注意力機制的結構圖

從空間和通道2個維度為圖像特征X生成三維權重,然后將生成的權重與特征圖X進行聚合。不同顏色的方塊代表每個像素點不同大小的權重。為簡單且有效推出三維權重,采用二進制標簽,定義能量函數Et如式(1)所示。

理論上,每個通道有m個能量函數。式(1)中Wi表示為式(2)、bi表示為式(3)。

因此,最小化能量函數可以通過式(1)、式(2)和式(3)得到:

從式(4)可以看出,能量值E*i越低,神經元i與附近神經元的差異越大、越重要。因此,神經元的重要程度能夠通過1/E*i獲得。

2.2.2 優化殘差塊的歸一化方法和激活函數

為消除歸一化方法對一次訓練所選取樣本數量的依賴,將Resnet12網絡中批量歸一化與ReLU激活函數搭配使用的方式換成由濾波器響應歸一化(filter response normalization,FRN)與閾值線性單元激活函數(thresholded linear unit,TLU)搭配使用的方式,即FRN_layer,結構如圖6所示。

圖6 FRN_layer結構圖

特征向量Xa經過FRN和TLU操作后得到輸出向量Za。

FRN的定義由式(5)組成。

式中:Ya表示輸出向量;Xa表示輸入特征向量,形狀為[B,W,H,C],B表示mini-batch size,W、H表示映射的空間范圍,C表示卷積中使用的濾波器數量;e是一個非常小的正常數;n=W×H,表示第B個批點的第C個濾波器的向量;r、j表示可學習的參數。

FRN沒有均值操作,容易導致激活具有遠離零的任意偏差,該偏差與ReLU搭配使用時,會對學習產生不利影響,致使網絡性能不佳。在FRN后搭配TLU可以解決該問題,TLU如式(6)所示。

式中:Ya為FRN的輸出向量;Za為TLU的輸出向量;τ為可學習的參數。

使用FRN_layer后的殘差塊結構如圖7所示。

圖7 使用FRN_layer后的殘差塊結構圖

將骨干神經網絡每個殘差塊主路的批量歸一化與ReLU激活函數搭配使用改成FRN_layer。

2.3 改進分類器模塊

2.3.1 在殘差塊中融入SimAM注意力機制

使用全維動態卷積ODConv(omni-dimensional dynamic convolution)替換卷積神經網絡框架中的普通卷積,可以提升骨干神經網絡的特征提取能力。本文將ODConv引用到分類器模塊中,利用并行策略引入多維注意力,對卷積核空間的4個維度進行學習,提高分類的準確率。

在點圖到分布圖傳播P2D的嵌入空間中引用ODConv,結構如圖8所示。

圖8 改進后的P2D結構圖

改進后的點圖到分布圖P2D的嵌入空間由ODConv卷積、BN歸一化、leakyReLU激活函數構成。

另外,在點圖距離度量和分布圖距離度量過程的嵌入空間中引用ODConv,結構如圖9所示。

圖9 改進后點圖距離度量和分布圖距離度量的嵌入空間結構圖

改進后點相似模塊和分布相似模塊的嵌入空間由2個ODConv卷積、BN歸一化、ReLU激活函數構成。

ODConv采用多個卷積核的線性組合,利用注意力進行動態加權,使卷積操作依賴于輸入,其示意圖如圖10所示。

圖10 ODConv的示意圖

ODConv由卷積核{W1,W2,…,Wn-1,Wn} 和由注意力函數πwi(X)計算獲得的注意力標量{αw1,αw2,…,αw(n-1),αwn}組成,計算如式(7)所示。

式中:Y表示輸出值;X表示輸入值;Wi表示第i個卷積核;αwi表示卷積核Wi的注意力標量;αSi表示沿空域維度的注意力權重;αCi表示沿輸入通道維度的注意力權重;αfi表示沿輸出通道維度的注意力權重;αwi表示卷積核維度的注意力權重;⊙表示逐步相乘運算符;*表示卷積運算符。

2.3.2 改進距離度量方法

根據距離度量方法的特點,發現馬氏距離(mahalanobis distance,MD)比較適合用于計算樣本間(點圖)的距離;推土機距離(earth mover’s distance,EMD)比較適合用于計算分布間(分布圖)的距離。故本研究對原算法的距離度量方法進行改進,其中,點圖間的距離選用MD,分布圖間的距離選用EMD。圖11展示了點圖的距離度量過程。

圖11 點圖距離度量過程圖

在圖11中,每個節點代表不同的圖像樣本,采用MD距離度量方法計算每2個相鄰節點間的距離,兩節點間的距離越小,邊越短,代表相似程度越大。圖12展示了分布圖的距離度量過程。

圖12 分布圖距離度量過程圖

在圖12中,以2個節點為例,每個節點代表不同數據樣本間的分布情況,采用EMD距離度量方法計算每2個相鄰節點間的距離,兩節點間的距離越小,邊越短,代表相似程度越大。

3 實驗結果及分析

3.1 實驗環境及數據集

實驗環境如表1所示。在CUB-200-2011[11]數據集上對改進后模型有效性進行驗證。該數據集的詳細信息如表2所示,包括圖像總數量、類別數量、圖像分辨率以及訓練集、測試集、驗證集的數量劃分情況。

表1 實驗環境

表2 CUB-200-2011數據集詳細信息

3.2 評價標準與參數設定

采用5way-1shot和5way-5shot的方式來評估算法的分類準確率。5way-1shot表示隨機選出5個類別,并在每類中選擇1張圖像作為樣本;5way-5shot表示隨機選出5個類別,并在每類中選擇5張圖像作為樣本。同時,采用分類準確率來評價模型的性能,以%為單位,值越高表明模型的性能越優、分類效果越好。隨機選取i個任務,依據各個任務得到的準確率算出i個任務的平均準確率acc,準確率的計算見式(8),其中i取10 000。

本研究算法訓練的各參數設置如表3所示。

表3 算法訓練參數

3.3 對比實驗結果分析

在CUB-200-2011數據集上對SFOD_DPGN算法與DPGN、Neg-Cosine[12]、IEPT[13]、DeepEMD、FRN[14]、TPMN[15]、UNICORN-MAML[16]以及文獻[17],共8種使用Resnet12骨干神經網絡的分類算法進行比較,實驗結果如表4所示。

表4 在CUB-200-2011數據集的實驗結果

從表4可以看出,SFOD_DPGN算法在CUB-200-2011數據集5way-1shot、5way-5shot分類任務中的準確率高于其他算法。與DPGN算法相比,SFOD_DPGN算法在5way-1shot和5way-5shot分類任務下的分類準確率分別提升了約7.97%和2.66%;與FRN算法相比,SFOD_DPGN算法在5way-1shot和5way-5shot分類任務下的分類準確率分別提升了約0.77%和1.45%。其中,在5way-1shot和5way-5shot分類任務下,使用SF_Resnet12骨干神經網絡比使用Resnet12骨干神經網絡的SFOD_DPGN算法的分類準確率分別提升了約5.00%和2.04%。

3.4 消融實驗結果分析

為檢驗各改進部分的有效性,在CUB-200-2011數據集上進行消融實驗,在基準模型基礎上,逐個添加SimAM、FRN_layer、ODConv以及MD和EMD相結合的距離度量方式,結果如表5所示。

表5 在CUB-200-2011數據集的消融實驗結果

從表5中可以看出,在CUB-200-2011數據集上,融入SimAM注意力機制后,算法在5way-1shot和5way-5shot分類任務下的分類準確率分別提高了2.77%和1.16%;在此基礎上,使用FRN_layer后的算法,在5way-1shot和5way-5shot分類任務下的分類準確率分別提高了2.23%和0.88%;在此基礎上,引用全維動態卷積ODConv后的算法,在5way-1shot和5way-5shot分類任務下的分類準確率分別提高了2.25%和0.38%;在此基礎上,使用MD和EMD相結合的距離度量方式后的算法,在5way-1shot和5way-5shot分類任務下的分類準確率分別提高了0.72%和0.24%。從上述實驗結果可以看出,對于在CUB-200-2011數據集中,本文的4個創新點有效地提高了算法的分類準確率。

4 結論

從提升少樣本圖像分類準確率的角度出發,提出SFOD_DPGN少樣本圖像分類算法。相比DPGN算法,在5way-1shot和5way-5shot分類任務下,在CUB-200-2011數據集上的分類準確率分別提高了約7.97%和2.66%。以上實驗結果充分證明了SFOD_DPGN算法對分類效果提升明顯,并且具有較強的魯棒性和泛化能力。但是,網絡結構復雜,模型參數量大且訓練時間長,今后將使用Ghost減少網絡的計算量和參數量,加速推理速度和延遲時間;更換算法的優化器加速模型的收斂速度,減少訓練時間。

猜你喜歡
分布圖度量分類器
鮑文慧《度量空間之一》
模糊度量空間的強嵌入
貴州十大地質公園分布圖
迷向表示分為6個不可約直和的旗流形上不變愛因斯坦度量
BP-GA光照分類器在車道線識別中的應用
中國癌癥分布圖
左右江水沖石器采集分布圖
加權空-譜與最近鄰分類器相結合的高光譜圖像分類
結合模糊(C+P)均值聚類和SP-V-支持向量機的TSK分類器
地質異常的奇異性度量與隱伏源致礦異常識別
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合