彭昊,王婉祺,陳龍,彭先蓉,張建林,徐智勇,魏宇星,李美惠
1 中國(guó)科學(xué)院光電技術(shù)研究所,四川 成都 610209;
2 中國(guó)科學(xué)院大學(xué),北京 100049
目標(biāo)檢測(cè)是計(jì)算機(jī)視覺(jué)領(lǐng)域的基本問(wèn)題之一,其任務(wù)是找出圖像中所有感興趣的目標(biāo),確定它們的類(lèi)別和位置。深度檢測(cè)模型的成功很大程度上需要大量的數(shù)據(jù)進(jìn)行訓(xùn)練,在訓(xùn)練樣本較少的條件下,模型容易過(guò)擬合,檢測(cè)效果不佳。收集數(shù)據(jù)并對(duì)數(shù)據(jù)集進(jìn)行標(biāo)注,會(huì)耗費(fèi)大量的人力、物力以及時(shí)間。在實(shí)際應(yīng)用中,有相當(dāng)一部分?jǐn)?shù)據(jù)難以獲取,嚴(yán)重限制了在一些特殊任務(wù)的可擴(kuò)展性。小樣本目標(biāo)檢測(cè)技術(shù)致力于在少量學(xué)習(xí)樣本條件下,根據(jù)僅有的特征信息進(jìn)行分類(lèi)和回歸,完成目標(biāo)檢測(cè)任務(wù),具有學(xué)習(xí)成本低、學(xué)習(xí)速度快、可擴(kuò)展性強(qiáng)等優(yōu)點(diǎn)。
基于深度學(xué)習(xí)的目標(biāo)檢測(cè)器分為兩階段檢測(cè)器和單階段檢測(cè)器[1]。不同于單階段檢測(cè)器直接對(duì)目標(biāo)進(jìn)行檢測(cè),兩階段檢測(cè)器,R-CNN[2]、SPP-Net[3]、Fast R-CNN[4]、Faster R-CNN[5]有一個(gè)單獨(dú)的模塊用于生成區(qū)域候選框,在第一階段找到一定數(shù)量的候選目標(biāo),并在第二階段對(duì)預(yù)測(cè)目標(biāo)進(jìn)行定位及分類(lèi)。單階段檢測(cè) 器,YOLO[6]、SSD[7]、YOLOv2[8]、RetinaNet[9]、YOLOv3[10]、YOLOv4[11]通過(guò)密采樣直接對(duì)語(yǔ)義目標(biāo)進(jìn)行分類(lèi)和定位,它們使用預(yù)定義的不同比例和長(zhǎng)寬比的先驗(yàn)框來(lái)定位目標(biāo)。相比于單階段檢測(cè)器直接完成分類(lèi)任務(wù)和回歸任務(wù),兩階段檢測(cè)器在執(zhí)行推斷任務(wù)時(shí)由于能對(duì)初步預(yù)測(cè)目標(biāo)進(jìn)行精確修正,因此具有更高的檢測(cè)精度[12]。
盡管以上的檢測(cè)器性能優(yōu)異,但難以直接應(yīng)用于小樣本任務(wù)。YOLOMAML[13]采用了MAML[14]的方法訓(xùn)練YOLO 檢測(cè)器,但其本質(zhì)上是用小樣本數(shù)據(jù)直接訓(xùn)練網(wǎng)絡(luò)。實(shí)驗(yàn)結(jié)果中出現(xiàn)大量目標(biāo)錯(cuò)檢、目標(biāo)漏檢以及回歸框定位不準(zhǔn)確的問(wèn)題。該文章認(rèn)為直接用小樣本數(shù)據(jù)訓(xùn)練網(wǎng)絡(luò)效果并不理想,需要尋找新的方法來(lái)解決以上問(wèn)題。Meta R-CNN[15]為驗(yàn)證元知識(shí)在小樣本檢測(cè)任務(wù)中的有效性,直接用小樣本數(shù)據(jù)訓(xùn)練Faster R-CNN,并對(duì)Meta R-CNN 和Faster RCNN 性能進(jìn)行對(duì)比。結(jié)果顯示,F(xiàn)aster R-CNN 檢測(cè)器在1 shot 上的檢測(cè)精度僅為2.7,而Meta R-CNN在1 shot 上的精度為19.9。因此,普通的檢測(cè)器無(wú)法勝任小樣本檢測(cè)任務(wù),我們需要引入適用于小樣本任務(wù)的檢測(cè)方法。
小樣本學(xué)習(xí)(Few-shot learning),能夠有效解決在現(xiàn)實(shí)中缺乏大量訓(xùn)練數(shù)據(jù)以及遇到從未見(jiàn)過(guò)的新類(lèi)別的問(wèn)題[16-17]。根據(jù)在學(xué)習(xí)時(shí)采用的方法不同,小樣本學(xué)習(xí)的方法可分為:數(shù)據(jù)增強(qiáng)、基于遷移學(xué)習(xí)的方法、度量學(xué)習(xí)以及基于元學(xué)習(xí)的方法。
數(shù)據(jù)增強(qiáng)可分為對(duì)訓(xùn)練數(shù)據(jù)容量進(jìn)行擴(kuò)充和對(duì)提取到的特征進(jìn)行增強(qiáng)。通過(guò)對(duì)圖片進(jìn)行翻轉(zhuǎn)、縮放、裁剪、亮度變換處理以及通過(guò)生成對(duì)抗網(wǎng)絡(luò)來(lái)合成相似圖像的樣本[18-20],以此擴(kuò)充訓(xùn)練數(shù)據(jù)容量往往能夠?qū)W(wǎng)絡(luò)性能進(jìn)行一定程度上的提升。AFHN[21]利用生成對(duì)抗網(wǎng)絡(luò)實(shí)現(xiàn)數(shù)據(jù)集的擴(kuò)充并引入了兩種新的正則化子,分類(lèi)正則化子和反折疊正則化子,分別提高合成特征的可分辨性和多樣性。SARN[22]提出了一個(gè)用于小樣本學(xué)習(xí)的自注意關(guān)系網(wǎng)絡(luò),通過(guò)注意力模塊對(duì)學(xué)習(xí)到的特征進(jìn)行增強(qiáng),再利用關(guān)系模塊進(jìn)行比較,提高模型在小樣本任務(wù)中的分類(lèi)性能。AAM[23]提出了一種注意力自適應(yīng)模塊,用于調(diào)整類(lèi)別表征和查詢(xún)樣本的特征向量,使其與對(duì)應(yīng)類(lèi)別的類(lèi)別表征之間的距離更近。CADA-VAE[24]提出一種基于變分自動(dòng)編碼器的廣義零樣本學(xué)習(xí)算法,通過(guò)結(jié)合圖像特征信息和描述特征信息來(lái)構(gòu)建包含重要的多模型信息的潛在特征,并借此實(shí)現(xiàn)對(duì)未見(jiàn)過(guò)的樣本的分類(lèi)。
基于遷移學(xué)習(xí)的方法[25-27],將經(jīng)過(guò)豐富標(biāo)注數(shù)據(jù)進(jìn)行訓(xùn)練的骨干特征提取網(wǎng)絡(luò)遷移到小樣本任務(wù)框架中。LSTD[26]引入全新的小樣本檢測(cè)正則化遷移學(xué)習(xí)框架,將遷移知識(shí)和背景抑制作為正則項(xiàng),使模型充分利用源域和目標(biāo)域中的知識(shí),能夠緩解小樣本帶來(lái)的遷移問(wèn)題。
度量學(xué)習(xí)[28-30]通過(guò)度量空間計(jì)算不同種類(lèi)之間的距離,使得相同類(lèi)別的圖片之間的相似度大,不同類(lèi)別的圖片的相似度小。TOPIC[31]提出一種用于解決小樣本類(lèi)別增量學(xué)習(xí)的算法,利用神經(jīng)氣體網(wǎng)絡(luò)通過(guò)增加AL 損失和MML 損失項(xiàng)解決了FSCIL 中的災(zāi)難性遺忘和新樣本過(guò)擬合的問(wèn)題。L-GNN[32]提出一種三元損失函數(shù),用來(lái)引導(dǎo)網(wǎng)絡(luò)拉近類(lèi)內(nèi)距離,增加類(lèi)間距離。FSCE[25]提出對(duì)比建議編碼來(lái)學(xué)習(xí)對(duì)比感知的目標(biāo)建議編碼,減小類(lèi)內(nèi)距離,增大類(lèi)間距,加強(qiáng)類(lèi)別的區(qū)分能力。RepMet[28]提出一種基于表征的度量學(xué)習(xí)方法,在單個(gè)端到端的訓(xùn)練過(guò)程中同時(shí)學(xué)習(xí)骨干網(wǎng)絡(luò)參數(shù)、嵌入空間和該空間中每個(gè)訓(xùn)練類(lèi)別的多模態(tài)分布,解決小樣本分類(lèi)和目標(biāo)檢測(cè)問(wèn)題。AGCM[33]提出一種促進(jìn)類(lèi)特征集群之間的正交性的度量學(xué)習(xí)策略,減少對(duì)象類(lèi)的內(nèi)類(lèi)方差和類(lèi)間偏差,克服小樣本目標(biāo)檢測(cè)中的類(lèi)不平衡問(wèn)題。
元學(xué)習(xí)致力于找到神經(jīng)網(wǎng)絡(luò)中對(duì)每個(gè)任務(wù)較為敏感的全局最優(yōu)參數(shù),通過(guò)微調(diào)這些參數(shù),讓模型的損失函數(shù)快速收斂。MAML[14],Reptile[34],Meta-SGD[35],Meta-LSTM[36]通過(guò)學(xué)習(xí)多組不同的小樣本任務(wù),獲得一組全局最優(yōu)初始化參數(shù)。Meta R-CNN[15]通過(guò)對(duì)圖像標(biāo)記部分加上掩碼,引入類(lèi)注意力向量,對(duì)提取的特征進(jìn)行特征融合,并重組預(yù)測(cè)頭,完成小樣本目標(biāo)檢測(cè)任務(wù)。DCNet[27]在基于元學(xué)習(xí)的框架上提出了具有上下文感知的密集關(guān)系蒸餾方法,通過(guò)利用支持集的特征來(lái)捕獲查詢(xún)圖片的細(xì)粒度特征獲得更全面的特征表示來(lái)解決小樣本目標(biāo)檢測(cè)問(wèn)題。Metayolo[37]使用元特征學(xué)習(xí)器和一個(gè)調(diào)整權(quán)重模塊來(lái)解決小樣本目標(biāo)檢測(cè)問(wèn)題。Meta-DETR[38]提出類(lèi)間相關(guān)的元學(xué)習(xí)策略,將查詢(xún)特征與多個(gè)支持類(lèi)同時(shí)聚合,捕獲類(lèi)間相關(guān)性,強(qiáng)化模型的泛化能力。
目前主流的方法主要從提升特征提取能力方面對(duì)模型進(jìn)行優(yōu)化,并沒(méi)能夠充分利用好樣本信息。樣本不僅可用于學(xué)習(xí),也可在進(jìn)行推斷任務(wù)時(shí),用于對(duì)檢測(cè)框進(jìn)行校準(zhǔn)。針對(duì)上述問(wèn)題,本文提出了一種在線推斷校準(zhǔn)的小樣本目標(biāo)檢測(cè)框架(few-shot object detection via online inferential calibration,FSOIC)。我們?cè)诠歉删W(wǎng)絡(luò)上引入了全新的Attention-FPN 網(wǎng)絡(luò)和多組ROI 模塊,能夠在不影響基類(lèi)信息的條件下學(xué)習(xí)新類(lèi)知識(shí),從而引導(dǎo)RPN 提取更多高質(zhì)量的新類(lèi)前景目標(biāo),解決目標(biāo)漏檢問(wèn)題。同時(shí),本文設(shè)計(jì)的在線校準(zhǔn)模塊通過(guò)類(lèi)模板特征對(duì)候選目標(biāo)評(píng)分進(jìn)行校準(zhǔn),促使預(yù)測(cè)頭選擇更精確的預(yù)測(cè)目標(biāo),改善目標(biāo)錯(cuò)檢問(wèn)題。本文在VOC 數(shù)據(jù)集的三個(gè)新類(lèi)子集上進(jìn)行了大量實(shí)驗(yàn),與14 種主流算法進(jìn)行對(duì)比,定量和定性實(shí)驗(yàn)結(jié)果說(shuō)明了算法能夠有效提升網(wǎng)絡(luò)檢測(cè)性能。
Faster R-CNN[5]是目標(biāo)檢測(cè)中經(jīng)典的雙階段網(wǎng)絡(luò),由骨干網(wǎng)絡(luò)、RPN 模塊、ROI 模塊以及預(yù)測(cè)頭組成,如圖1 所示。
圖1 Faster R-CNN 網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 Faster R-CNN network architecture
Faster R-CNN 的骨干網(wǎng)絡(luò)不唯一,VGG、Resnet都可作為其特征提取網(wǎng)絡(luò)[39]。第一階段,將整張圖片輸入骨干網(wǎng)絡(luò)進(jìn)行特征提取后,RPN 會(huì)對(duì)目標(biāo)生成大量的區(qū)域建議框,并進(jìn)行二分類(lèi),判斷生成框?qū)儆谇熬斑€是背景。第二階段,其內(nèi)部的ROI 模塊會(huì)對(duì)每一個(gè)區(qū)域候選框進(jìn)行尺寸固定,篩選感興趣的區(qū)域,最后由分類(lèi)預(yù)測(cè)頭和回歸預(yù)測(cè)頭進(jìn)行分類(lèi)和目標(biāo)定位。由于其出色的檢測(cè)性能,以及強(qiáng)大的區(qū)分前景和背景的能力,能夠有效解決單階段檢測(cè)器在訓(xùn)練樣本稀少時(shí)無(wú)法定位目標(biāo)的問(wèn)題,更適合小樣本目標(biāo)檢測(cè)任務(wù)。
LSTD[26]在小樣本任務(wù)中用SSD[7]設(shè)計(jì)邊界盒回歸,用Faster-RCNN 設(shè)計(jì)目標(biāo)分類(lèi),根據(jù)RPN 提取的候選前景目標(biāo)分?jǐn)?shù)選擇提案目標(biāo)。MetaDet[40]引入了一個(gè)權(quán)重預(yù)測(cè)元模型,以Faster-R-CNN 為框架,對(duì)參數(shù)化權(quán)值預(yù)測(cè)的元模型進(jìn)行端到端的訓(xùn)練。該算法將RPN 視為與類(lèi)別無(wú)關(guān)的組件,利用基類(lèi)中的元知識(shí)促進(jìn)新類(lèi)的生成,完成小樣本目標(biāo)檢測(cè)任務(wù)。目前主流的小樣本檢測(cè)器,如FSCE[25]、TIP[41],F(xiàn)SDetView[42]均采用Faster-RCNN 為檢測(cè)器。但以上檢測(cè)器并未能充分利用樣本信息,本文對(duì)Faster RCNN 做進(jìn)一步優(yōu)化,設(shè)計(jì)在線校準(zhǔn)模塊對(duì)樣本信息進(jìn)行充分利用,提高網(wǎng)絡(luò)檢測(cè)精度。
FPN[43]即特征圖金字塔網(wǎng)絡(luò)主要用于解決物體檢測(cè)中的多尺度問(wèn)題。通過(guò)簡(jiǎn)單的網(wǎng)絡(luò)連接,對(duì)不同尺度的特征圖進(jìn)行融合,能在幾乎不增加網(wǎng)絡(luò)推理計(jì)算量的情況下提升網(wǎng)絡(luò)檢測(cè)性能。
FPN 并不是一種特定的網(wǎng)絡(luò)結(jié)構(gòu),而是一種可自行設(shè)計(jì)特征融合方式的網(wǎng)絡(luò)。這也使得FPN 網(wǎng)絡(luò)變得靈活多樣,可以根據(jù)任務(wù)的不同,設(shè)計(jì)網(wǎng)絡(luò)結(jié)構(gòu)。在神經(jīng)網(wǎng)絡(luò)前向傳播的過(guò)程中,隨著網(wǎng)絡(luò)層數(shù)的增加,特征圖會(huì)逐漸縮小,每個(gè)特征點(diǎn)相對(duì)于原始圖片的感受野增大,語(yǔ)義信息變得更加豐富。然而,目標(biāo)位置信息則變得越來(lái)越粗略。在小樣本目標(biāo)檢測(cè)任務(wù)中,可學(xué)習(xí)的樣本知識(shí)有限,導(dǎo)致底層特征并不能很好地學(xué)習(xí)到豐富的語(yǔ)義信息。為增強(qiáng)底層特征的語(yǔ)義信息,本文設(shè)計(jì)了一個(gè)由上至下的多尺度特征融合網(wǎng)絡(luò),將具有豐富語(yǔ)義信息的高層特征與底層特征進(jìn)行融合。
兩階段微調(diào)的方法(TFA)[44]是一種模型學(xué)習(xí)策略,將具有豐富標(biāo)簽的數(shù)據(jù)類(lèi)別定義為基類(lèi)(base class),僅有的少量的標(biāo)簽數(shù)據(jù)類(lèi)別定義為新類(lèi)(novel class)。在第一階段,使用基類(lèi)目標(biāo)對(duì)網(wǎng)絡(luò)進(jìn)行預(yù)訓(xùn)練,使得網(wǎng)絡(luò)的骨干網(wǎng)絡(luò)具有良好的特征提取能力。第二階段將少量基類(lèi)和新類(lèi)目標(biāo)送入模型中,對(duì)骨干網(wǎng)絡(luò)的參數(shù)進(jìn)行凍結(jié),防止特征提取網(wǎng)絡(luò)由于數(shù)據(jù)稀少而發(fā)生過(guò)擬合,僅微調(diào)最后一層分類(lèi)器,使分類(lèi)器具備區(qū)分不同類(lèi)別的能力。
TFA w/cos[44],以Faster-RCNN 為檢測(cè)器,采用TFA 的學(xué)習(xí)策略,僅微調(diào)檢測(cè)器的最后一層并固定模型的其余參數(shù)。結(jié)果顯示,TFA 的方法可以顯著提高檢測(cè)精度,在性能上優(yōu)于基于元學(xué)習(xí)的方法。在TFA w/cos[44]提出后,后續(xù)的主流小樣本檢測(cè)算法TFA w/cos+Halluc[18],Retentive R-CNN[45]均采用了TFA的學(xué)習(xí)策略。經(jīng)過(guò)實(shí)驗(yàn)分析,本文認(rèn)為T(mén)FA 的學(xué)習(xí)策略過(guò)于統(tǒng)一,難以引導(dǎo)檢測(cè)器在不同shot 任務(wù)中擬合參數(shù)。本文對(duì)TFA w/cos[44]方法進(jìn)行優(yōu)化,提出分級(jí)凍結(jié)的學(xué)習(xí)機(jī)制,使檢測(cè)模型在訓(xùn)練階段能夠更好地?cái)M合網(wǎng)絡(luò)參數(shù)。
在實(shí)際推斷階段,有相當(dāng)一部分候選框回歸精確但因?yàn)樵u(píng)分較低而被淘汰。為充分利用樣本信息,我們?cè)O(shè)計(jì)了一個(gè)在線推斷校準(zhǔn)模塊,作用于模型預(yù)測(cè)頭。該模塊根據(jù)標(biāo)簽文件提取到類(lèi)實(shí)例,通過(guò)類(lèi)模板生成模塊,將提取到的特征圖壓縮成一維類(lèi)向量,并在進(jìn)行推斷任務(wù)時(shí),對(duì)眾多候選預(yù)測(cè)框進(jìn)行匹配校準(zhǔn),獲得更多高質(zhì)量的候選框。同時(shí),本文保留了更多的區(qū)域候選框,促使更多的候選框可以跟模板進(jìn)行匹配校準(zhǔn),提升識(shí)別的準(zhǔn)確率。
改進(jìn)后的Faster R-CNN 檢測(cè)框架由Attention-FPN 骨干網(wǎng)絡(luò)、RPN 模塊、多組ROI 模塊、在線校準(zhǔn)模塊以及預(yù)測(cè)頭組成,如圖2 所示。
圖2 FSOIC 網(wǎng)絡(luò)結(jié)構(gòu)Fig.2 FSOIC network architecture
大量實(shí)驗(yàn)證明,在小樣本條件下檢測(cè)精度過(guò)低并非回歸精度不足,而是檢測(cè)器出現(xiàn)大量錯(cuò)分類(lèi)和漏檢問(wèn)題。直接在少量樣本條件下訓(xùn)練網(wǎng)絡(luò)會(huì)導(dǎo)致模型過(guò)擬合。因此,基于TFA 的方法凍結(jié)了整個(gè)模型,僅更新模型最后一層的分類(lèi)回歸器參數(shù),導(dǎo)致RPN 無(wú)法獲取足夠的新類(lèi)信息。由于缺乏新類(lèi)信息,RPN難以正確識(shí)別新類(lèi)前景目標(biāo),導(dǎo)致檢測(cè)器出現(xiàn)錯(cuò)檢與漏檢現(xiàn)象。如圖3 所示,檢測(cè)器將摩托車(chē)的把手錯(cuò)檢為瓶子,將沙發(fā)錯(cuò)檢為椅子且漏檢沙發(fā)旁的椅子,以及將牛錯(cuò)檢為羊。
圖3 基于TFA 的檢測(cè)結(jié)果Fig.3 Detection results based on TFA
為防止骨干網(wǎng)絡(luò)過(guò)度擬合新類(lèi)特征,本文在凍結(jié)骨干網(wǎng)絡(luò)的基礎(chǔ)上設(shè)計(jì)了Attention-FPN 網(wǎng)絡(luò),學(xué)習(xí)新類(lèi)知識(shí)。同時(shí),根據(jù)訓(xùn)練樣本數(shù)量選擇是否更新RPN 與多組ROI 參數(shù),并調(diào)整RPN 保留的建議框數(shù)量。為使RPN 更好地學(xué)習(xí)新類(lèi)特征,并讓ROI 充分提取感興趣的特征,我們引入分級(jí)凍結(jié)學(xué)習(xí)機(jī)制。相比TFA 僅對(duì)最后一層的預(yù)測(cè)頭參數(shù)進(jìn)行更新,本文并未對(duì)全部的模塊進(jìn)行凍結(jié),而是有針對(duì)性地凍結(jié)部分網(wǎng)絡(luò),如表1 所示。其中×表示網(wǎng)絡(luò)參數(shù)被凍結(jié),√表示網(wǎng)絡(luò)參數(shù)可被更新。
表1 分級(jí)凍結(jié)機(jī)制Table 1 Hierarchical freezing mechanism
分類(lèi)預(yù)測(cè)頭和回歸預(yù)測(cè)頭分別輸出預(yù)測(cè)框目標(biāo)的種類(lèi)和位置坐標(biāo)。訓(xùn)練時(shí),模型的損失函數(shù)由RPN模塊的候選目標(biāo)框損失Lossrpn_loc(用L1表示),區(qū)域候選框目標(biāo)類(lèi)別損失Lossrpn_cls(用L2表示),回歸預(yù)測(cè)頭損失Lossbox_reg(用L3表示),以及分類(lèi)預(yù)測(cè)頭損失Losscls(用L4表示)四個(gè)部分組成。總的損失函數(shù)(用Ltot表示)定義如下:
用Smooth L1 Loss 函數(shù)(用Ls表示)將標(biāo)簽數(shù)據(jù)的位置信息定義為xi,預(yù)測(cè)目標(biāo)位置信息定義為yi,用于計(jì)算RPN 候選框損失Lossrpn_loc(用L1表示)和回歸預(yù)測(cè)頭損失Lossbox_reg(用L3表示)。Smooth L1 Loss(用Ls表示)定義如下所示:
二分類(lèi)交叉熵函數(shù)用于判別兩個(gè)概率分布之間的距離,將預(yù)測(cè)目標(biāo)定義為xi,標(biāo)簽數(shù)據(jù)定義為yi,其中在計(jì)算區(qū)域候選框目標(biāo)類(lèi)別損失Lossrpn_cls(用L2表示)時(shí),xi為標(biāo)簽數(shù)據(jù)是否存在目標(biāo),yi為前景目標(biāo);計(jì)算預(yù)測(cè)頭的分類(lèi)損失Losscls(用L4表示)時(shí),xi定義為標(biāo)簽數(shù)據(jù)類(lèi)別,yi為預(yù)測(cè)目標(biāo)類(lèi)別。二分類(lèi)交叉熵?fù)p失函數(shù)(Le)定義如下所示:
Tsung-Yi Lin 在FPN[43]一文指出,高分辨率特征圖對(duì)物體的識(shí)別表征能力較弱。底層特征雖然具有更強(qiáng)的位置信息,但缺少全局視野導(dǎo)致語(yǔ)義信息薄弱。高層特征雖然分辨率低下,卻具有豐富的語(yǔ)義信息。將高層特征與底層特征進(jìn)行融合,可以有效增強(qiáng)底層特征的語(yǔ)義信息。為解決錯(cuò)分類(lèi)與漏檢問(wèn)題,我們需要引導(dǎo)RPN 提取更多的新類(lèi)目標(biāo)。因此,本文設(shè)計(jì)了一個(gè)自上而下的注意力多尺度特征融合網(wǎng)絡(luò)Attention-FPN。通過(guò)增強(qiáng)底層特征的語(yǔ)義信息,RPN能夠獲取更多豐富的新類(lèi)知識(shí),提取更精準(zhǔn)的新類(lèi)前景目標(biāo)。如圖4 所示。
圖4 Attention-FPN 網(wǎng)絡(luò)結(jié)構(gòu)Fig.4 Attention-FPN network architecture
本文分別對(duì)Resnet-101 網(wǎng)絡(luò)不同尺度的特征圖由上至下進(jìn)行特征融合,輸出4 個(gè)不同尺度的特征圖。在特征融合網(wǎng)絡(luò)的前三個(gè)輸入端,引入了通道注意力機(jī)制。對(duì)特征圖進(jìn)行壓縮,經(jīng)過(guò)兩層全連接層,將展成一維向量進(jìn)行sigmoid,為每一個(gè)特征通道生成權(quán)重,建立各個(gè)通道之間的相關(guān)性,根據(jù)類(lèi)別為輸入特征進(jìn)行權(quán)重分配,建模各個(gè)通道間的依賴(lài)關(guān)系,如圖5 所示。
圖5 通道注意力模塊Fig.5 Channel attention module
骨干網(wǎng)絡(luò)輸出的特征圖,將作為RPN 模塊的輸入用于生成區(qū)域建議框。同時(shí),本文引入4 組ROI Align 池化層,用于對(duì)不同尺度候選區(qū)域的特征圖進(jìn)行區(qū)域選取和尺寸固定,并將提取到的候選特征圖作用于預(yù)測(cè)頭進(jìn)行分類(lèi)和回歸預(yù)測(cè)。
由于樣本特征不均衡性,導(dǎo)致新類(lèi)候選目標(biāo)評(píng)分過(guò)低,在進(jìn)行預(yù)測(cè)框篩選時(shí)被過(guò)濾,造成檢測(cè)器錯(cuò)檢與漏檢。
由于神經(jīng)網(wǎng)絡(luò)的封閉性,單純地進(jìn)行特征融合具有不確定性,特征圖很難按照讓我們滿意的方向進(jìn)行融合。直接將樣本模板特征與預(yù)測(cè)目標(biāo)特征進(jìn)行融合,效果并不理想。
模板更新[46-50]的方法常用于目標(biāo)跟蹤任務(wù)中,將前一幀圖像中目標(biāo)與當(dāng)前幀的目標(biāo)進(jìn)行匹配,跟蹤當(dāng)前幀圖像中的目標(biāo),取得了巨大的成功。本文認(rèn)為這類(lèi)方法同樣適用于小樣本目標(biāo)檢測(cè)任務(wù),并設(shè)計(jì)了一個(gè)作用于推斷任務(wù)的候選框在線評(píng)分校準(zhǔn)模塊,包括一個(gè)類(lèi)模板生成模塊、模板匹配模塊以及評(píng)分校準(zhǔn)模塊。
類(lèi)模板生成模塊由Faster R-CNN 的骨干特征提取網(wǎng)絡(luò)、四個(gè)ROI 模塊以及兩個(gè)全連接層組成,構(gòu)成一個(gè)分類(lèi)器。具體的網(wǎng)絡(luò)結(jié)構(gòu)如圖6 所示。
圖6 FSOIC 算法的類(lèi)模板生成模塊Fig.6 FSOIC algorithm class template generation module
首先,骨干網(wǎng)絡(luò)對(duì)樣本圖片進(jìn)行信息編碼,生成多個(gè)不同尺度的特征圖。其次,ROI 模塊根據(jù)樣本自帶的標(biāo)簽位置信息裁剪特征圖,過(guò)濾圖片中的背景信息,并將多尺度的特征圖轉(zhuǎn)化為固定大小的特征圖。最后,通過(guò)兩層全連接層將特征圖尺寸轉(zhuǎn)換為大小為1×1024的特征向量。
在特征度量空間中,不同類(lèi)別的特征向量方向差異明顯,而相同類(lèi)別的特征向量具有相近的方向。為合成類(lèi)模板,模板生成模塊將各個(gè)類(lèi)別生成的特征向量融合成一個(gè)向量,作為類(lèi)模板,并作用于特征相似度量空間,如圖7 所示。
圖7 特征度量空間Fig.7 Feature metric space
模板生成模塊將生成的第j個(gè)類(lèi)向量定義為yi,經(jīng)過(guò)加權(quán)求和生成類(lèi)模板x,如式(4)所示:
模板匹配模塊將i類(lèi)樣本模板定義為xi,候選預(yù)測(cè)目標(biāo)特征定義為pi,計(jì)算類(lèi)模板向量與預(yù)測(cè)目標(biāo)特征壓縮后的特征向量之間的余弦相似度,如式(5)所示:
候選框評(píng)分校準(zhǔn)模塊將原始候選目標(biāo)評(píng)分定義為si,余弦相似度定義為,并為原始得分分配目標(biāo)權(quán)重α,與相似度進(jìn)行加權(quán)求和,對(duì)目標(biāo)框得分進(jìn)行校準(zhǔn),如式(6)所示:
候選框校準(zhǔn)模塊對(duì)每個(gè)新類(lèi)候選預(yù)測(cè)框的評(píng)分進(jìn)行加權(quán)更新,分類(lèi)預(yù)測(cè)頭將根據(jù)候選框的置信度進(jìn)行篩選得出最佳的預(yù)測(cè)框。
如圖8 所示,經(jīng)過(guò)候選框校準(zhǔn)后,錯(cuò)檢和漏檢問(wèn)題都得到改善,且平均預(yù)測(cè)目標(biāo)得分大幅提高。面對(duì)目標(biāo)被遮擋出現(xiàn)大量目標(biāo)漏檢問(wèn)題,優(yōu)化后的模型展現(xiàn)出優(yōu)異的性能,如圖9 所示。
圖8 檢測(cè)結(jié)果性能對(duì)比Fig.8 Performance comparison of the detection results
圖9 10 shot 任務(wù)中遮擋條件下的檢測(cè)結(jié)果Fig.9 Detection results under the occlusion conditions in the 10 shot task
本文在配有8 張NVIDIA GeForce RTX 3090 顯卡的服務(wù)器上進(jìn)行實(shí)驗(yàn)。基于Pascal VOC 數(shù)據(jù)集,我們將小樣本目標(biāo)檢測(cè)任務(wù)按照訓(xùn)練的樣本數(shù)量劃分為1、2、3、5、10 shot 共5 個(gè)任務(wù)。基于COCO 數(shù)據(jù)集,我們將檢測(cè)任務(wù)分為10 shot 和30 shot,實(shí)驗(yàn)參數(shù)如表2 所示。
表2 數(shù)據(jù)集實(shí)驗(yàn)設(shè)置Table 2 Experimental settings of the dataset
為了進(jìn)一步驗(yàn)證改進(jìn)后的算法性能,本文將FSOIC 算法與目前最先進(jìn)的小樣本目標(biāo)檢測(cè)算法在通用數(shù)據(jù)集PASCAL VOC 的三個(gè)新類(lèi)子集上進(jìn)行性能比較,測(cè)試集共4952 張圖片,包括14976 個(gè)目標(biāo)實(shí)例,實(shí)驗(yàn)結(jié)果如表3 所示。
表3 中紅色標(biāo)記數(shù)據(jù)為最優(yōu)性能,藍(lán)色標(biāo)記數(shù)據(jù)為次優(yōu)性能。表3 顯示我們的檢測(cè)算法在性能上優(yōu)于現(xiàn)在主流的小樣本目標(biāo)檢測(cè)算法。以nAP50 (noval AP50)為評(píng)價(jià)標(biāo)準(zhǔn),在Novel Set1 中,對(duì)比TFA w/cos[44],五個(gè)任務(wù)的平均精度提升10.16%,高于綜合性能最優(yōu)秀的FSCE 3.68%。三個(gè)VOC 子集在五個(gè)任務(wù)中的平均nAP50 提升9.05%。
表3 小樣本目標(biāo)檢測(cè)算法在VOC 新類(lèi)劃分集的性能分析比較表Table 3 Performance analysis and comparison of the few shot object detection algorithm in VOC new class partition sets
小樣本檢測(cè)在COCO 數(shù)據(jù)集上的結(jié)果如表4 所示。FSOIC 算法對(duì)比于目前最先進(jìn)的小樣本檢測(cè)器,仍然取得了最佳的性能。以nAP (noval AP)為評(píng)價(jià)標(biāo)準(zhǔn),對(duì)比基線TFA w/cos[44],兩個(gè)任務(wù)平均精度提升2.85%,高于FSCE 0.55%。
表4 小樣本目標(biāo)檢測(cè)算法在COCO 數(shù)據(jù)集的性能分析比較Table 4 Performance analysis and comparison of few shot object detection algorithms in the COCO datasets
為探究Attention-FPN 網(wǎng)絡(luò)、模板匹配模塊以及調(diào)整RPN 模塊的候選框數(shù)量對(duì)小樣本目標(biāo)檢測(cè)性能的影響,本文以nAP50 為評(píng)價(jià)標(biāo)準(zhǔn),對(duì)算法優(yōu)化的方法進(jìn)行了消融實(shí)驗(yàn),如表5 所示。
表5 第一行和第二行實(shí)驗(yàn)對(duì)比顯示,在引入FPN 網(wǎng)絡(luò)后,骨干特征提取網(wǎng)絡(luò)的底層特征語(yǔ)義信息得到了增強(qiáng),模型的檢測(cè)性能得到了大幅提升。在進(jìn)行特征融合時(shí),盡管底層特征的語(yǔ)義信息會(huì)變得更加豐富,但同時(shí)底層特征的位置信息將會(huì)受到部分影響。為減少高層特征對(duì)底層特征位置信息的影響,我們?cè)贔PN 的輸入端引入通道注意力機(jī)制,從而更大程度地保護(hù)底層特征的位置信息。第四行和最后一行對(duì)比顯示,在引入注意力機(jī)制后,檢測(cè)效果有一小部分的提升。評(píng)分校準(zhǔn)模塊作用于模型推斷階段,對(duì)候選目標(biāo)框進(jìn)行校準(zhǔn)。對(duì)比表5 最后兩行,在與僅有的樣本模板進(jìn)行相似校正后,檢測(cè)準(zhǔn)確率得到了有效的提升,這也驗(yàn)證了在執(zhí)行小樣本任務(wù)推斷時(shí)與原始訓(xùn)練樣本進(jìn)行匹配校準(zhǔn)的有效性。在生成候選區(qū)域時(shí),有部分目標(biāo)框回歸位置精確,但因評(píng)分過(guò)低而被過(guò)濾,無(wú)法參與預(yù)測(cè)。將RPN 保留的候選框數(shù)量增大,原本的分?jǐn)?shù)較低的候選框經(jīng)過(guò)校準(zhǔn),評(píng)分有效提高,引導(dǎo)預(yù)測(cè)頭選擇更合適的目標(biāo)。第五行和最后一行顯示,將保留的候選框數(shù)量擴(kuò)大后,模型的檢測(cè)性能也得到了有效的提升,表明了本文改進(jìn)模型后的有效性與合理性。
表5 消融實(shí)驗(yàn)性能比較Table 5 Comparison of the ablation experimental performance
為驗(yàn)證各個(gè)模塊的實(shí)際檢測(cè)性能,本文在圖10分別對(duì)優(yōu)化前的算法以及優(yōu)化后的算法檢測(cè)結(jié)果進(jìn)行對(duì)比。其中圖10(a)、(b)、(c)分別為T(mén)FA w/cos[44]算法、使用在線推斷校準(zhǔn)模塊的模型以及使用在線推斷校準(zhǔn)模塊并添加Attention-FPN 的模型檢測(cè)結(jié)果。對(duì)比圖10 可以看到,10(a)中漏檢的目標(biāo)在10(b)中被檢測(cè)出來(lái),且部分目標(biāo)評(píng)分得到大幅提升。通過(guò)對(duì)比,我們可以得出,在線推斷校準(zhǔn)模塊,可以有效解決目標(biāo)漏檢與目標(biāo)評(píng)分過(guò)低的問(wèn)題。10(b)中評(píng)分較低的目標(biāo),在10(c)中目標(biāo)評(píng)分得到有效提升,且10(c)中的預(yù)測(cè)框包含的背景更少,定位更精確。由此得出,在引入Attention-FPN 后,骨干網(wǎng)絡(luò)輸出的特征圖具有更豐富的語(yǔ)義信息,使得RPN 生成更優(yōu)質(zhì)的新類(lèi)前景框,從而間接引導(dǎo)預(yù)測(cè)頭篩選出更精確的預(yù)測(cè)框并獲得更高的目標(biāo)評(píng)分。
圖10 10 shot 任務(wù)下的檢測(cè)結(jié)果。(a) 基于TFA 的Faster R-CNN 網(wǎng)絡(luò)檢測(cè)結(jié)果;(b) 使用在線推斷校準(zhǔn)模塊的Faster R-CNN 網(wǎng)絡(luò)檢測(cè)結(jié)果;(c) 使用在線推斷校準(zhǔn)模塊并添加Attention-FPN 網(wǎng)絡(luò)的Faster R-CNN 網(wǎng)絡(luò)檢測(cè)結(jié)果Fig.10 10 shot task detection results.(a) Detection results of the Faster R-CNN network based on TFA;(b) Detection results of the Faster RCNN net work using the online inference calibration module;(c) Detection results of the Faster R-CNN network using the online inference calibration module and adding the Attention-FPN network
為解決小樣本檢測(cè)的錯(cuò)檢與漏檢問(wèn)題,本文對(duì)TFA w/cos[44]算法進(jìn)行優(yōu)化。本文在訓(xùn)練階段,引入Attention-FPN 和多組ROI 模塊,并使用分級(jí)凍結(jié)的學(xué)習(xí)策略引導(dǎo)RPN 學(xué)習(xí)新類(lèi)知識(shí),提升網(wǎng)絡(luò)對(duì)新類(lèi)特征提取能力;在目標(biāo)預(yù)測(cè)階段,引入評(píng)分校準(zhǔn)模塊對(duì)候選目標(biāo)預(yù)測(cè)評(píng)分進(jìn)行修正并過(guò)濾評(píng)分較低的候選框,糾正錯(cuò)檢目標(biāo);通過(guò)調(diào)整RPN 模塊來(lái)增大候選目標(biāo)框的數(shù)量,對(duì)更多的候選目標(biāo)框進(jìn)行校準(zhǔn),避免模型漏檢。實(shí)驗(yàn)結(jié)果表明,本文提出的FSOIC 算法有效提升了檢測(cè)器在小樣本目標(biāo)檢測(cè)任務(wù)中的性能。本文的下一步工作考慮對(duì)RPN 模塊進(jìn)行優(yōu)化,采用雙RPN 結(jié)構(gòu),分別對(duì)基類(lèi)目標(biāo)和新類(lèi)目標(biāo)進(jìn)行特征提取,根據(jù)預(yù)測(cè)的種類(lèi)篩選不同的特征,提高對(duì)目標(biāo)的識(shí)別和回歸精度。