













摘要:圖像分類是計算機視覺領域的熱門研究之一。然而,深度神經網絡在面對少樣本學習時,可能因數據量不足導致過擬合等問題。為此,提出了一種基于VGG網絡模型的多層次濾波器方法(IVGG) 。首先,在VGG網絡中引入濾波器組,通過采用1×1、3×3和5×5多層次濾波器組,從多個角度獲取圖像的形狀和紋理等特征信息,從而避免單一濾波器的不足。然后,在卷積層之后引入批歸一化處理,可緩解梯度消失、增加模型魯棒性和學習速率。通過在四種數據集上的對比實驗,結果表明,IVGG與DN4、MACO和CovaMNet方法相比,對少樣本圖像的分類準確率提高了0.82%~1.87%,并且損失值降低了0.02~0.18。證明該方法在處理少樣本圖像分類中具有更高的準確率與更低的損失值,同時能一定程度上減小網絡模型的復雜度。
關鍵詞:VGG網絡;圖像分類;少樣本學習;濾波器組;批歸一化
中圖分類號:TP391 文獻標識碼:A
文章編號:1009-3044(2024)17-0006-05 開放科學(資源服務)標識碼(OSID) :
0 引言
圖像分類是利用特定的算法提取圖像的紋理、形狀等特征信息,是計算機視覺領域中重要的基礎技術之一。圖像分類訓練神經網絡模型依賴于大規模數據。然而,在某些應用場景中(如航天、醫療、軍事等領域),由于隱私條例和法律等限制,圖像獲取異常困難,這就導致了少樣本分類問題的出現。
目前,國內外學術界常用的少樣本學習方法有數據增強、遷移學習和元學習。在訓練樣本有限的情況下,可以采用直推學習、半監督學習[1]或生成對抗網絡(Generative Adversarial Networks,GAN) 實現數據增強,提高樣本多樣性。Elezi等[2]提出了一種基于標記的數據增強方法,通過該方法可以生成大量且準確的標簽數據,從而獲得更好的訓練效果。Tran等[3]提出了一種優化GAN的數據增強方法,改善判別器和生成器的學習。盡管生成對抗模型具有強大的性能,但也存在一些不足,如網絡訓練困難、模型易于坍塌以及生成圖像與樣本圖像相似度過高導致冗余問題等。遷移學習的目標是將已學習到的知識應用到一個新的領域中。He等[4]提出了一種采用監督式自編碼或卷積自編碼解決學習遷移問題的新型選擇性學習方法,從而克服了兩個遠距離區域之間的信息分配差異,但這種方法在樣本數量較少的情況下,準確率會有所下降。元學習的目標是使模型具備學習調參的能力,使其可以在已獲取知識的基礎上迅速學習新任務。Vinyals等[5]提出了一種基于匹配的網絡,實現少樣本分類任務。Sung等[6]提出采用卷積神經網絡實現對不同屬性之間的距離進行度量。這些方法可以學習訓練之外的知識,但是復雜度較高,增加了計算開銷。
盡管上述研究取得了顯著的分類效果,但是缺乏對少樣本的多尺度特征分析。因此,本文提出了一種改進的VGG(Visual Geometry Group) 網絡結構模型(Improved VGG Network,IVGG) ,該模型在VGG 網絡結構的基礎上引入了多層次濾波技術和批歸一化,從而實現對多個不同角度的圖像特征信息的提取,有效地解決了參數在神經網絡傳遞中被放大和過擬合等問題,同時減小了模型復雜度。
1 改進VGG 網絡結構
1.1 VGG 網絡結構
VGG網絡結構[7]是2014年ILSVRC競賽中由牛津大學的幾何團隊提出的。VGG 網絡很好地繼承了AlexNet的衣缽,同時也擁有著鮮明的特點,具有較深的網絡層次結構。VGG16(見圖1) 是比較經典的VGG網絡之一。
從圖1中可以看出,VGG網絡中輸入圖像的大小默認為224×224×3,每個卷積核包含3 個權值。VGG16代表了包含13個卷積層和3個全連接層的16 層網絡結構,不包含池化層和SoftMax層。在不同的卷積層中,卷積核的數量也有差異,VGG16的卷積核尺寸為3×3。池化層大小為2×2。在全連接層中,神經元數目分別為4 096,4 096,1 000。第三級的全部連接層包含了1 000個負責分類輸出的神經元,最后一層為SoftMax輸出層。
1.2 改進的VGG 網絡結構
圖2為本文提出的IVGG模型結構,由濾波器組、卷積層、批歸一化、池化層、分類器等構成。
1.2.1 濾波器組
濾波器實質上是一種矩陣。該方法通過矩陣大小的變化,從多個角度進行特征信息的提取。輸入圖像的濾波算法,其實就是將m × n 矩陣與圖片中同樣尺寸的面積相乘并相加。將該矩陣從左至右依次進行1次點乘運算,最后將所得到的結果相加,完成對整幅圖像的濾波。矩陣與局部圖像相乘的過程與CNN 的卷積操作相同。
在IVGG模型中,采用了三種不同尺寸的多尺度濾波器(1×1、3×3和5×5) ,以獲得多個不同角度的圖像特征。濾波器組如圖3所示。
針對三個濾波器的特征圖的大小差異,本文提出了一種通過調節三個特征圖大小來合成聯合特征圖的方法。首先,將三種不同尺寸濾波器得到的特征圖尺寸分別設定為(H+4、W+4) 、(H+2、W+2) 、(H、W) ,其中H與W為輸入圖像的高與寬。IVGG模型的輸入是一個32×32像素值的陣列。利用零來填充圖像邊緣后,這三種濾波器的尺寸都變成了5×5,卷積后可獲得28×28的圖像,這是由濾波器經卷積運算獲得的圖像特征信息。圖4描述了濾波器和圖像的卷積操作。
在經過一組濾波器的計算后,將其合成特性圖輸出給下一個卷積層。本文的卷積層視窗設定為1×1,核心數目設定為128,最后得到128 張28×28 的特性圖。
1.2.2 批歸一化
2012年,AlexNet模型[8]首次提出了局部歸一化算法(Local Response Normalization) ,簡稱LRN。
式(1)中歸一化的結構為bix,y,將通道位置的值標記為i,j ~ i 的像素值平方和標記為j,像素的位置表示為x,y,bix,y 為LRN層的輸入值同時也是ReLU激活函數的輸出值,卷積層表示為α(包括卷積層與池化層操作),N表示通道數量channel。
IVGG網絡在提出時拋棄了LRN歸一化的處理,采用批歸一化來代替。在模型訓練過程中,參數會不斷更新,數據在各個層次上通過向前傳播而不斷變化,這種變化導致了分布偏差。針對這一問題,提出了批歸一化(Batch Normalization,BN) ,通過引入BN方法,可以使數據保持正常分布,加速模型的收斂,并減少訓練過程中網絡模型的計算消耗。
1) 記n 為batch樣本的總和,{ x1,x2,x3,...,xn }為輸入數據集合,計算該批輸入數據均值E,表達式為:
由式(5)可以得出,該操作是在水平和垂直兩個維度對BN計算后的值進行變換,將最終輸出值調整為標準的正態分布。
2 仿真實驗與結果分析
2.1 數據集選擇
本文采用CIFAR-10 數據集、ImageNet 數據集、Pascal VOC2012數據集、MNIST數據集對IVGG模型進行評價。CIFAR-10的資料包括10種類型的60 000 個樣本,每種類型6 000個。ImageNet的資料包括27 個大類別,超過一千四百萬張照片,每一個類別都有數千至數萬幅。Pascal VOC2012的資料包括17 125 張照片,可以分成20個常見物體類別。MNIST的資料包括10種類型的70 000個樣本。
在這四種數據集中,從每個類別的訓練樣本中選取250個作為訓練集,測試樣本中選取1 000個作為測試集。在此基礎上,選擇5%的樣本作為訓練樣本,以模擬在使用少量的樣本時,模型能夠獲得更多的特征信息,從而達到更好的分類效果。
2.2 參數設置
實驗相關參數設置如下,設定訓練參數Batchsize 為24,Dropout 值為0.5,weight decay 為5 × 10-4,初始學習速率為0.002,學習速率的幅度隨著迭代次數的增加不斷調節。卷積核窗口大小設定為1×1,數量為128個,卷積步長為1,最終的分類器包含10個神經元,并將其劃分為10個類別。迭代次數為300。在所有的實驗中,進行了300次隨機的訓練與分類實驗,并報告了整體的分類準確度和損失值。
2.3 實驗結果與分析
為了體現IVGG方法的特點和性能,將其與DN4 方法[9]、MACO 方法[10] 以及CovaMNet 方法[11] 進行了對比。
圖5中顯示了四種方法的分類準確度實驗對比結果。實驗對每一種方法進行了300 次迭代訓練,在CIFAR-10、ImageNet、Pascal VOC2012 和MNIST 四組數據集中,四種方法的準確率在250~285次迭代間逐漸趨于平穩。表1中顯示了四種方法的分類準確度實驗對比結果。IVGG方法在CIFAR-10、ImageNet、Pas?cal VOC2012和MNIST數據集上的分類準確度分別為91.21%、90.12%、89.88%和91.85%。其中,IVGG相較DN4方法的分類準確度提升在0.82%~1.51%。IVGG 相較MACO方法的分類準確度提升在0.99%~1.41%。IVGG 相較CovaMNet 方法的分類準確度提升在1.36%~1.87%,在MNIST 數據集上的準確率提升最高,達1.87%。綜合實驗結果,對比其他三種方法,IVGG在四種數據集上的分類準確度都取得了最高值,證明了提出模型的有效性;IVGG每次進行特征提取時利用多尺度濾波器組獲得多個角度的圖像特征,相較于其他方法,在樣本數量較少的情況下圖像分類的準確率更高。
各網絡結構在四種數據集上的損失值隨迭代次數的變化趨勢如圖6所示,可以看出四種方法的損失值在250-290次迭代間得到了比較穩定的結果。其中本文所提的IVGG方法具有更快的收斂速度,最終損失值也最低。表2顯示了四種方法的損失值實驗對比結果。IVGG 方法在CIFAR-10、ImageNet、PascalVOC2012 和MNIST 數據集上的損失值分別為0.21、0.20、0.19和0.18。相較其他方法,IVGG的損失值均有大幅度下降。與DN4方法相比,IVGG在CIFAR-10 上的損失值下降幅度最大,下降了0.18。與MACO和CovaMNet方法相比,IVGG的損失值下降幅度分別為0.07~0.14和0.02~0.12。從實驗結果來看,另外三種方法的損失值比IVGG方法要大得多,證明本文所提出的改進方法在提高模型準確率的同時,擁有更低的損失值。
2.4 消融實驗
2.4.1 最優內核數目
表3 為在CIFAR-10、ImageNet、Pascal VOC2012 和MNIST數據集上驗證IVGG模型內核數變化時的分類準確率消融實驗結果。由于樣本數目和類型的增多,為了獲得最優的模型,必須使用更多的卷積核,但加入過多的內核不僅會降低模型性能,還會增加計算開銷。本文對不同內核數目組合的IVGG模型進行了少樣本圖像分類實驗。實驗結果如表3所示,當內核數為128時,IVGG方法在CIFAR-10、Pascal VOC2012 和MNIST三個數據集上的圖像分類正確率最高。在ImageNet數據集上,IVGG方法達到最高分類精度時,內核數為192,而在128個內核的情況下,其精確度也能達到89.51%。因此,IVGG模型選擇的最優內核數目為128。
2.4.2 多層次濾波器的有效性
多層次濾波器考慮了從多個角度對圖像特征的提取。表4為在CIFAR-10、ImageNet、Pascal VOC2012和MNIST數據集上驗證IVGG模型中的濾波器的數量和大小對分類準確率的影響。實驗結果顯示:在只采用單一濾波器的情況下,模型對四種數據集的分類精度均在80%左右;采用雙濾波器對不同類型的樣本進行分類,其正確率大多在83%~88%;采用三種不同的卷積濾波,IVGG 模型在CIFAR-10、Pascal VOC2012 和MNIST數據集上分類的正確率分別為91.21%、89.88% 和91.85%;在ImageNet數據集上,使用3×3和5×5的濾波器達到的分類效果最佳,但使用1×1、3×3和5×5 濾波器的分類效果也很好,準確率為89.45%,證明了多層次濾波器的優勢。而IVGG模型僅采用單一濾波器時其性能降低的主要原因在于,單一濾波器不具備多層次濾波器多方位特征提取的優點。
3 結論與展望
本文提出了一種基于VGG網絡模型的多層次濾波器方法,IVGG。該方法主要利用1×1、3×3和5×5的多個濾波器對輸入的圖像進行全方位、多角度的特征采集,以便能夠最大程度地獲取圖像的語義信息。在卷積層之后,引入了批歸一化處理,以提高模型的魯棒性和學習效率。最后,通過應用SoftMax函數對輸出進行分類,從而達到圖像分類的目的。實驗結果表明,本文所提出的IVGG模型在少樣本圖像分類方面具有較高的準確率,并且能夠獲得更低的損失值,證明了該方法的有效性。然而,由于目前的數據集樣本類型相對單一,為了更好地適應處理多個小樣本集的情況,需要進行更深入的研究。在未來的工作中,將進一步擴充和豐富數據集,探索更多樣本類型的特征,設計泛化能力和穩定性更高的模型。
參考文獻:
[1] 劉建偉,劉媛,羅雄麟.半監督學習方法[J].計算機學報,2015,38(8):1592-1617.
[2] ELEZI I,TORCINOVICH A,VASCON S,et al.Transductive la?bel augmentation for improved deep network learning[C]//201824th International Conference on Pattern Recognition (ICPR).Beijing,China.IEEE,2018:1432-1437.
[3] TRAN N T,TRAN V H,NGUYEN N B,et al.On data augmenta?tion for GAN training[C]//IEEE Transactions on Image Process?ing.IEEE,2021:1882-1897.
[4] HE K M,ZHANG X Y,REN S Q,et al.Deep residual learning for image recognition[C]//2016 IEEE Conference on Computer Vi?sion and Pattern Recognition (CVPR). Las Vegas, NV, USA.IEEE,2016:770-778.
[5] VINYALS O,BLUNDELL C,LILLICRAP T, et al.Matching net?works for one shot learning[C]//Proceedings of the 30th Interna?tional Conference on Neural Information Processing Systems.Barcelona, Spain. MIT Press,2016: 3637-3645.
[6] SUNG F,YANG Y X,ZHANG L,et al.Learning to compare:rela?tion network for few-shot learning[C]//2018 IEEE/CVF Confer?ence on Computer Vision and Pattern Recognition. Salt Lake City,UT,USA.IEEE,2018:1199-1208.
[7] SIMONYAN K,ZISSERMAN A.Very deep convolutional net?works for large-scale image recognition[J].ArXiv e-Prints,2014:arXiv:1409.1556.
[8] KRIZHEVSKY A,SUTSKEVER I,HINTON G E.ImageNet clas?sification with deep convolutional neural networks[J].Communi?cations of the ACM,2017,60(6):84-90.
[9] LI W B,WANG L,XU J L,et al.Revisiting local descriptor based image-to-class measure for few-shot learning[C]//2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition(CVPR).Long Beach,CA,USA.IEEE,2019:7253-7260.
[10] LIN T Y,ROYCHOWDHURY A,MAJI S.Bilinear CNN modelsfor fine-grained visual recognition[C]//2015 IEEE Interna?tional Conference on Computer Vision (ICCV).Santiago,Chile.IEEE,2015:1449-1457.
[11] LI W B,XU J L,HUO J,et al.Distribution consistency based co?variance metric networks for few-shot learning[J].Proceedings of the AAAI Conference on Artificial Intelligence,2019,33(1):8642-8649.
【通聯編輯:梁書】
基金項目:安徽理工大學國家級大學生創新訓練項目(2020103661092);安徽理工大學(HX2022082726)