田 霖,李 華,李林軒,白傳澳
(長春理工大學 計算機科學技術學院,長春 130022)
傳統目標檢測算法[1-3]是在一個封閉的集合下進行的,即假設在檢測過程中遇到的所有類別都在訓練集中得到了正確標注。然而,這種設定應用于現實世界受到很大的限制,一方面需要大量的人力進行標注,另一方面人類無法提前預知所有可能遇到的目標。尤其在自動駕駛、機器人等領域,檢測器經常會遇到訓練集中未涵蓋的目標。在這種情況下,傳統的目標檢測算法很容易忽略那些未知目標。
開放世界目標檢測最早由Joseph等[4]提出,其設定更貼近于真實世界。檢測模型可以識別已知類并標記未知類,將這些未知類呈遞給人類后,人類用戶選擇感興趣的部分給予注釋,最后逐步學習未知類。目前,開放世界目標檢測主要面臨著兩大問題:一是檢測器容易將未知類忽略,錯分為背景,這源于傳統目標檢測器的強監督性,它們只會根據先驗知識進行識別;二是檢測器容易將未知類和已知類混淆,這源于潛在空間中的特征糾纏,已知類和未知類通常是糾纏在一起的。此外,未知類檢測效果的提升通常會導致已知類檢測效果的略微下降,這也是一個值得關注的問題。
研究通過引入退火調度模塊[5],對已知特征和未知特征進行解耦,并以標簽轉移學習的方式協調未知特征和已知特征的學習,指導檢測器的檢測。同時引入ECA(efficient channel attention)模塊[6],在保留原網絡性能的同時,降低模型的復雜度,進而提高分類精度。
開放世界目標檢測由Joseph等提出,可分為開放集目標檢測和增量學習2個部分。
開放集分類與檢測:在開放集的設置下,通過訓練集獲得的知識是不完整的。Scheirer等[7]提出了開集分類器,該分類器可衡量在標記一個遠離已知類樣本時的性能和風險(開放空間風險)。Liu等[8]考慮到長尾識別在目標檢測中的應用,開發了一個度量學習框架,將不可見類識別為未知類。類似的,分布外目標檢測[9]和新穎類檢測[10]也都曾應用于開放集分類中。
Dhamija等[11]開始了開放集目標檢測任務,并提出了開放集目標檢測協議。Opendet[12]從密度特征角度來分離已知類和未知類,即未知類通常分布在潛在空間的低密度區域。
增量學習:在標記未知后,人類用戶可以根據感興趣的類提供一些未知類的訓練實例,開放世界目標檢測器的一個關鍵是能夠學習新的類。從頭開始重新訓練的方案并不可行,這會花費大量時間,且此階段不存在先前的類。而只使用新類實例進行訓練會導致模型大量遺忘先前的類[13]。目前,有很多方法都可用來緩解這種遺忘,包括參數正則化[13]、示例重放[14]、動態擴展網絡[15]和元學習[16]等。
開放世界目標檢測:Joseph等[4]提出了ORE(towards open world object detection),通過基于RPN自動標記未知、能量模型以及對比聚類,賦予模型檢測未知的能力。隨后又提出了OW-DETR[17],通過可變形transformer,添加基于注意力驅動的偽標記、新穎性分類和目標性得分3部分解決了這一問題,大幅提高了對未知類的檢測能力。Wu等[18]通過聚類等方法來讓檢測器區分不同的未知類。Prob[19]提出了一種目標性概率框架,使檢測器能夠對不同提議給出未知目標概率。
遵循ORE中的開放世界設置,對任意時間t,認為已知類目標集合為Kt={1,2,3,…,C}?N+,N+是正整數集。為了模擬真實世界的情況,假定未知類集合U={C+1,…},已知目標類Kt在數據集Dt={Xt,Yt}中被標記,Xt表示輸入圖像,Yt表示標簽。輸入圖像包含M個訓練圖像,即Xt={I1,…,IM},每個圖像對應標簽集Yt={Y1,…,YM}。每個Yi={y1,y2,…,yK}用它們的標簽和位置編碼一組K個目標實例,即yk=[lk,xk,yk,wk,hk],分別表示邊界框的中心坐標、寬度和高度。
開放世界目標檢測模型Mc可以檢測所有已遇到的目標類,并標記未知類傳遞給人類用戶,人類用戶可以選擇感興趣的類并提供訓練示例,模型增量地添加新類并更新模型,無需在整個數據集上重新訓練。如此循環往復,檢測器不斷用新的知識更新自己,如圖1所示。

圖1 開放世界設定示意圖
目前,開放世界目標檢測主要面對著以下2種挑戰。
一是模型存在“忽視”錯誤,即對未知類的泛化能力較差,容易將未知類錯誤分類為背景或已知類。這種情況下,模型可能無法準確識別并處理未曾見過的目標類別,如圖2(a)所示。

圖2 開放世界目標檢測可能出現的2種錯誤
二是模型存在“傲慢” 錯誤,即容易過度自信地將未知類推斷為已知類。這種情況下,模型可能會產生誤導性的輸出結果,導致錯誤的決策,如圖2(b)所示。
Joseph等提出的ORE模型很大程度緩解了2個問題,但其中的能量模型存在未知數據泄露的可能。
2.3.1基于RPN自動標記未知
在基礎的檢測器選擇上,使用了Faster R-CNN[2],Dhamija等[11]發現與單階段的YOLO檢測器[1]相比,它具有更好的開集性能。Faster R-CNN是一種兩階段目標檢測器:在第一階段,由區域提議網絡(region proposal network,RPN)生成提議框;在第二階段,由感興趣區域(region of interest,RoI)頭部中對第一階段生成的邊界框進行分類和回歸。RPN可以分離前景和背景,這為篩選未知類提供了基礎條件。
對于給定的輸入圖像,RPN生成前景和背景實例的一組邊界框預測以及相應的目標得分。將那些具有高目標得分但與地面真值不重疊的目標標記為潛在的未知目標。總而言之,按目標得分排序,選擇前k個背景區域作為未知目標。
2.3.2對比聚類
分離潛在空間中的類是開放世界目標檢測的一種基礎方法。實現這一點主要使用的是對比聚類。對比聚類會將同一類的實例聚在一起,而不同類的實例則會被推遠,如圖3所示。

圖3 特征空間聚類示意圖
對于已知的i∈Kt,定義對比損失為:
(1)
式中:pi為原型向量;fc∈RD為特征向量;c為類別。
1)l(fc,pi)可表示為:

(2)
2)D代表任意距離函數,Δ為相似類和不相似類的接近程度。最大限度地減少這種損失,以確保潛在空間中不同類進行有效分離。聚類損失會在一定的迭代次數后開始計算,計算出的聚類損失被添加到標準檢測損失中,并反向傳播以端到端的方式學習網絡。
2.3.3緩解遺忘
檢測器對未知類進行增量學習后會產生災難性的遺忘。在少樣本目標檢測的相關研究中,存儲少量示例進行回放是有效的[20]。少樣本目標檢測與開放世界的設置有很多相似之處,因此選擇了示例重放的方法來緩解這種遺忘。存儲一組平衡的示例,并在每個增量任務步驟后對模型進行微調,如表1所示。其中,t2表示示例回放前,t2_ft表示示例回放后。

表1 微調結果
2.3.4基于退火算法的標簽轉移學習
退火算法源于物理中退火的概念。物理中的退火指的是指物體逐漸降溫的物理現象,溫度越低,物體的能量狀態越低,最終呈結晶態。大自然可在緩慢降溫時找到最低能量狀態,即結晶。但如果溫度驟降,就會形成不是最低能態的非晶形。
受到Kirkpatrick等[21]和Ma等[5]的啟發,提出了模擬退火算法最優化算法,它在搜索過程引入了隨機因素。模擬退火算法以一定的概率來接受一個比當前解要差的解,從而跳出局部最優解,得到全局的最優解。
由退火算法的分離過程可聯想到了開放世界的未知目標和已知目標。神經網絡在學習一張圖片時,未知目標經常與多個目標糾纏在一起,稱為目標級特征糾纏。與已知的真值框相匹配的提議框既包含已知的類特定特征,也包含有利于未知識別的潛在未知信息,從而導致已知類錯分為未知類。大多數圖像同時包含了已知類和未知類,因此要想提高檢測精度,需要對未知類和已知類進行特征解耦。
基于此,提出的網絡結構如圖4所示,模型在鋸齒退火調度策略下進行標簽轉移學習。標簽轉移學習可以引導模型區分已知和潛在的未知信息,以推進未知學習;而退火調度策略可以通過修改解糾纏度來調整學習過程,以達到未知和已知學習之間的平衡。整個標簽轉移學習過程可以被視為2個連續的階段,即形成階段和擴展階段,分別具有不同的解糾纏度。
語用學家除了關心人們的語言表達和產出,還關心人們對語言的理解和感知:人們如何評價交際活動中的語用策略及其語言實現形式是否恰當、禮貌、有助于人際關系的維護;人們如何評價影響策略和形式選擇的語境因素的價值和重要性,例如交際雙方的相對權勢、社會距離、言語行為的強加程度等。前者涉及了語言語用問題,后者涉及了社會語用問題。為了研究清楚這兩方面的問題,研究人員設計了元語用評價(metapragmatic assessments)工具,包括分級、卡片分類等具體形式,用以了解被試的元語用知識。

圖4 網絡結構圖
在形成階段,模型同時學習已知和未知。在擴展階段,將解糾纏度調整為鋸齒形,以在考慮未知對象的情況下重建已知的決策邊界。最終形成了未知類和已知類的決策邊界,使模型具有未知識別能力。目標級的特征糾纏可表示為:

(3)
式中:λ為解糾纏度;x′為第i個已知類(未知類)的信息。為了促進未知分類,并引導模型區分未知和已知,設置了一個相關的熱標簽來轉移學習未知類。標簽轉移修改可以表示為:
(4)
分類正則化可表示為:

(5)
標簽轉移學習可以鼓勵模型探索未知特征,從而在無監督的情況下推廣到未知類。較大的解糾纏度會造成已知類檢測性能下降,鋸齒退火調度策略可以確保未知和已知學習的相互推進。相較于文獻[5]中的方法,形成階段在一個開放集合下進行。在形成階段,模型已經具有一定的未知目標檢測能力;在擴展階段,未知檢測能力會得到一定的提高,不過相對而言,已知目標檢測能力會有所下降。擴展階段mAP變化如圖5所示。

圖5 擴展階段mAP變化示意圖
整個訓練過程可以分為形成階段和擴展階段。以p表示迭代次數,Pf表示形成階段的迭代次數,則鋸齒退火調度表示為:

(6)
式中,τ為表示退火速度的一個常數,隨著迭代次數的增加調整。
2.3.5ECA模塊
由于退火模塊的引入,未知類檢測精度得到了很大提高,但已知類精度略有下降,因此考慮加入ECA模塊[6],如圖6所示。

圖6 ECA模塊示意圖
ECA模塊只引入了少量參數,同時帶來明顯的性能增益。通過對SE模塊[22]分析,發現避免降維對于學習通道注意力很重要,適當的跨通道互動可以在顯著降低模型復雜度的同時保持性能。ECA提出了一種不降維的局部跨通道交互策略,該策略可以通過一維卷積有效地實現。表2展示了不同注意力機制下任務1的實驗結果。

表2 不同注意機制下任務1的評估指標
實驗選用的數據集為Joseph等[4]提出的開放世界數據集。其中包括Pascal VOC和MS-COCO中的類。將任務分為4組,特定感興趣的類在時間點t加入系統,將VOC中的類和數據分組為第1個任務T1。MS-COCO的其余60類被分為3個連續的任務,并在每個任務中保留1 000張圖片進行驗證。評估指標上,使用WI(wilderness impact)[11]描述未知類混淆為已知類的現象:

(7)
式中:PK為在已知類上評估精度;PK∪U為在已知和未知類上的評估精度(召回水平0.8)。除WI外,還使用了A-OSE(absolute open-set error)[4]表示被錯分為已知類的未知類數量;使用mAP(mean average precise)來衡量已知類精度和增量學習能力。


(8)

(9)
此外,還可計算出未知類精度U-ap和未知類召回率U-recall。
主干網絡選擇了Resnet50,基礎檢測器選擇了Faster R-CNN,Oracle為ORE在理想情況下的設置,WI和A-OSE值越低,對未知類效果檢測越好,mAP越高,對已知類的檢測效果越好。實驗結果如表3—表5所示,可以看出所提方法在大多數評估指標上要比ORE要好。

表3 任務1的實驗結果

表4 任務2的實驗結果

表5 任務3及任務4的實驗結果(任務4已全部學會,無未知類)
對部分圖片進行了可視化,圖7和圖8展示了所提方法與Faster-RCNN、ORE的可視化對比以及增量學習的效果。

圖7 所提方法與Faster-RCNN、ORE的可視化效果圖

圖8 其他可視化效果圖
Faster-RCNN的方法只能檢測已標注的目標,未知的目標有時會錯分為已知,有時會忽略為背景。ORE的方法有時會產生過多的框,有時也會產生錯誤檢測;此外,所提方法相較于ORE,可以檢測到更多的目標,可以在增量學習后正確識別出未知目標。
為了研究每個組件在網絡中的貢獻,進行了消融實驗。將各個組件分別加入網絡中,在任務1下得到了如表6的結果。可以看出,所提方法的每部分在網絡中都有一定的貢獻。

表6 消融實驗結果
開放世界的目標檢測能夠識別已學習過的已知類并標記未知類提供給人類用戶,接受注釋后再進行增量學習。所提方法能夠緩解開放世界目標檢測遇到的兩大問題,在以前的基準上略有提升,希望研究成果能對開放世界的目標檢測有所貢獻。