宋鵬鵬,龔聲蓉,,鐘 珊,周立凡,鳳黃浩
(1.蘇州大學 計算機科學與技術學院,江蘇 蘇州 215000;2.常熟理工學院 計算機科學與工程學院,江蘇 蘇州 215000;3.吉林大學 符號計算與知識工程教育部重點實驗室,長春 130000)
目標檢測是計算機視覺領域的熱點研究之一[1]。由于卷積神經網絡的迅速發展和具有完整邊界框的大規模數據集的出現,基于深度學習的全監督目標檢測已取得了重大進展[2-3]。然而,在實際應用中,全監督目標檢測需要一個耗時耗力的過程來準備大量的完整標注數據,但是標注過程由于人為標注因素可能會帶來噪聲,這些因素使得大量的實際應用很難直接采用監督學習方式來解決。因此,近年來研究人員開始專注于弱監督目標檢測(Weakly Supervised Object Detection,WSOD)[4],因其僅需類別標記就可以進行訓練,使得其在大量的實際應用中具有廣泛的前景。
弱監督檢測往往通過多示例學習(Multiple Instance Learning,MIL)來訓練檢測器,多示例學習假設包是示例的集合,每個包都被標記而包中的示例沒有標記,正包表示包中至少有一個正樣本示例,而如果包中的所有示例都是負樣本則為負包。弱監督檢測主要分為基于多示例學習的傳統檢測方法[5-7]和基于端到端多示例檢測網絡(Multiple Instance Detection Networks,MIDN)兩類方法[8-13]。這些方法的主要過程都是首先生成大量候選區域,然后對候選區域執行多示例學習方法。雖然基于多示例學習的傳統檢測方法的檢測速度較快,但是其多數使用手工提取特征且特征不具有魯棒性,所以傳統方法操作復雜而且檢測精度無法令人滿意。受益于深度卷積神經網絡強大的特征提取能力,越來越多的工作使用基于端到端的多示例檢測網絡,使得弱監督檢測的精度顯著提升且無需對特征進行手工提取,極大簡化了檢測流程。但是由于其基于分類網絡構建,而分類網絡往往提取的是目標最顯著性的局部特征,使得目標特征的高響應區域也主要集中在此區域,導致在某些檢測場景下模型易于陷入局部最小值[14],即傾向于穩定在最顯著性的局部目標區域(如非剛性目標的頭或尾部)。然而,在弱監督檢測中,僅關注目標的最顯著區域是不夠的,如何使得模型更關注目標整體區域,進一步提高弱檢測的檢測精度是急需解決的關鍵問題。
本文構建一個端到端的弱監督檢測框架DAENet,在雙注意力擦除(Double Attention Erasure,DAE)模塊中引入了注意力擦除,通過擦除最顯著性的局部前景區域以及背景注意力區域來擴展目標的高響應區域,從而感知目標的整體。此外,為更精確地生成擦除掩碼,本文設計了注意力信息聚合(Attentional Information Aggregation,AIA)模塊來提取通道的全局和局部信息,并為不同尺度的目標構建空間依賴關系以增強特征圖,提高定位不同目標區域的準確性。
目前,一些弱監督檢測的工作受到越來越多的關注并取得了重大進展。在基于多示例學習的傳統弱監督檢測方法[5-7]中,針對圖像集中的目標進行手動注釋較繁瑣且不可靠的問題,SIVA 等[5]介紹了使用類內度量和類間度量來初始化潛在定位信息,然后使用模型漂移檢測方法迭代訓練目標檢測器。為了挖掘背景中的隱藏信息以及抑制無用背景信息,WANG 等[6]提出通過執行概率潛在語義分析方法來學習潛在類別并通過其置信度發現潛在類別目標。針對優化過程的非凸問題,WANG 等[7]提出一種對候選區域深層特征進行凸聚類的方法,使得具有相似特征的候選區域聚集在一起。然而,如果目標被雜亂的背景包圍,則正樣本集可能包含明顯的噪聲。
由于深度卷積神經網絡具有強大的特征表示能力,最近關于弱監督檢測的工作[8-13,15-16]通常是利用MIDN,即通過多示例學習與深度卷積神經網絡相結合來訓練檢測器。其中,BILEN 等[8]將深度卷積網絡和多示例學習統一在一個端到端的弱監督檢測網絡WSDDN 中。作為對WSDDN 的改進,OICR[9]通過增加一個在線實例分類器,逐步優化所選擇的候選區域。為了進一步提升檢測性能,TANG 等[10]在OICR 的基礎上,提出一種對候選區域的深度特征進行聚類的方法,使具有相似特征的候選區域盡可能地聚類在一起。ZENI 等[13]提出了一個知識蒸餾模塊,該模塊可以恢復 OICR 中的在線實例分類細化分支之間的信息損失,以及加入了一個自適應的監督聚合函數來動態調整閾值以解決樣本的錯誤標記問題。REN 等[17]通過引入實例關聯空間多樣化約束和建立參數化空間丟棄塊來解決實例歧義和不完全定位問題,此外還采用了順序批量反向傳播算法來提高內存效率。該方法在參數化空間丟棄塊中引入了丟棄顯著性區域的方法,本文在擦除目標顯著性區域的基礎上進一步考慮了背景區域帶來的影響,并且在雙注意力擦除模塊中引入了另一個分支來增強特征圖維護網絡的分類性能,從而平衡網絡的分類和定位性能。另外,ZHONG 等[18]使用帶有完整注釋的附加源數據集進行知識遷移,逐步對源數據集和弱注釋目標數據集上的泛化器進行訓練以更好地泛化目標數據集。然而,該方法需要找到符合要求的大量完整標注的源數據,使用先驗知識來提升目標域的弱監督檢測性能并且需要進行多次訓練,訓練過程比較復雜。而本文設計了兩個即插即用的模塊,兩個模塊相互協作,易于移植實現并整合到其他網絡中來解決弱監督場景下目標顯著性區域突出從而導致嚴重影響檢測性能的情況。此外,一些弱監督檢測工作也試圖在不同方面改善弱監督檢測器的性能,如生成更多高質量的候選區域[15,19-20]、改進生成監督信息的方式[9-13]、使用額外的標注或數據集[16,21-23]等。與之前的工作相比,本文將注意力擦除策略引入到DAENet 中,以此感知弱監督目標檢測中目標的更大區域。此外,本文方法易于整合到其他弱監督目標檢測框架中。
注意力機制在計算機視覺領域的應用出現在Non-Local 模型[24]中,其引入了非局部操作并使用自注意力機制來建立遠程依賴關系。SENet[25]引入了Squeeze 和Excitation 模塊來獲得每個特征通道的重要性以增強特征。LI 等[26]通過對SENet 的改進,提出一種結合多個卷積核提取不同尺度特征的非線性方法來實現感知領域的自適應調整。為了學習增強或抑制的內容和位置信息,CBAM[27]將注意力機制同時應用于通道和空間維度。GAO 等[28]通過引入協方差來計算通道之間的關系。為減少計算開銷,WANG 等[29]提出一種不降維的局部跨信道交互策略以及對一維卷積核大小的自適應選擇方法。最近,DAI 等[30]提出多尺度通道注意力模塊,通過結合通道的局部和全局信息獲得不同尺度的目標特征信息。
注意力擦除機制[31-35]通過擦除最顯著性的區域來感知目標的整體區域。WEI 等[34]使用分類網絡來優化目標區域的方法以逐步挖掘目標區域,然而這種方法訓練繁瑣。ZHANG 等[31]提出了對抗性互補學習ACoL 模型,該模型利用對抗性互補學習改進類激活圖,將2 個分類器網絡的輸出相結合從而對目標整體進行感知。為減少計算開銷,與ACoL 類似,MAI 等[33]提出一個簡單而有效的EIL 模型,將未擦除和擦除的數據從共享的骨干網絡整合到具有共享權重的雙分支網絡中。為考慮像素之間的相關性,ZHANG 等[35]利用一種自上而下的機制,將高層輸出作為基礎監督來學習目標的位置信息。此外,CHOE 等[32]提出一個即插即用的ADL 模塊來權衡分類和定位之間的性能。與ADL 不同,本文方法進一步考慮擦除背景區域,以防止高響應區域轉移到非目標區域。
DAENet 的整體架構如圖1 所示。對于僅有圖像級標注的輸入圖像,其對應的類別標簽為Y=[y1,y2,…,yC]∈RC×1,其中C為類別總數。對于某幅圖片,如果yc(1 ≤c≤C)=1,則其包含具有類標簽c的目標。輸入圖像的候選區域表示為R={R1,R2,…,RN},其中N為候選區域的數量。具體來說,輸入圖像需要經過MIDN 的分類和檢測流分支,分別生成矩陣xclass∈RC×N和xdet∈RC×N。所有候選區域的分數都可以通過對應元素乘積x0=σclass(xclass)⊙σdet(xdet)來計算,其中σ表示Softmax 函數。最后任何類別c的分類得分都可以通過對所有候選區域中與c有關的分數相加得到,表示為。多示例學習分支的多類交叉熵損失為:

圖1 DAENet 的整體網絡框架Fig.1 The overall network framework of DAENet
多示例學習分支的輸出可以通過引入優化分支和蒸餾分支進行細化[13]。從Fc7 的生成特征向量同時進入多示例學習分支、具有K個優化分支和蒸餾分支。所有的分支在結構上是相同的,但在訓練中使用的監督信息是不同的。
在優化分支中,將同時考慮背景的標簽信息,因此將每個優化分支的輸出結果都表示為xk∈R(C+1)×N(k=1,2,…,K)。除了第1 個分支的監督信息來自于多示例學習分支外,其他任何第k-1 個分支的監督信息都來自于其上一個分支。在任何一個類別中得分最高的候選區域將被標記此類別的標簽,而其他候選區域如果有較高的IoU,將被標記與相鄰候選區域相同的標簽,所有其余的候選區域都被用作背景或被忽略[13]。因此,第r個優化分支中的第k-1 個候選區域的監督信息為,它被用作第k個優化分支的偽標簽。第k個優化分支的多類交叉熵損失為:
其中:是第r個候選區域在第k個優化分支中的損失權重,以防止訓練初期不可靠的候選區域得分的影響。
對于蒸餾分支,其偽標簽是通過對優化分支中K個優化分支的輸出進行平均而得到的。蒸餾分支的損失函數Ldistill與優化分支相同。總損失函數可定義如下:
目標的較大區域可以通過擦除最顯著性的注意力區域而被感知[31-33]。然而,隨著迭代訓練的進行,當最顯著的局部前景注意力區域被掩蓋時,高響應區域可能會轉移到背景中。因此,受文獻[32]的啟發,本文設計了雙注意力擦除模塊,其不僅擦除顯著性局部前景注意力區域來尋找整個目標,而且同時擦除背景注意力區域,以防止網絡將注意力集中在背景區域。其整體結構如圖2 所示。
理論研究表明,從信息經濟的發展過程來看,基礎層、傳輸層、融合層、新生層及福利層的信息經濟遵循時間上的不斷遞進、空間上的不斷擴散及程度上的不斷深化的關系,下層是上層的基礎,而上層又反過來促進下層的進一步發展。本文測算了基于西部各省區信息經濟發展層次指數的相關系數矩陣,結果表明,信息經濟各層次之間存在顯著的正相關關系。

圖2 DAE 模塊的整體結構Fig.2 The overall structure of DAE module
DAE模塊中引入了2個閾值,即前景閾值λfg∈[0,1]和背景閾值λbg∈[0,1]。自注意力圖Msa∈RH×W×1首先通過對輸入特征Fa∈RH×W×D進行平均計算得到,其中D、H和W分別為通道數、高度和寬度。然后將Msa中大于Tfg的對應元素置為0,其他置為1,則由此生成前景擦除掩碼Mfg,其中Tfg=λfg·max(Msa)。與前景注意力擦除方法相反,背景擦除掩碼Mbg是通過將Msa中小于閾值Tbg元素置為0,其余置為1,其中Tbg=λbg·max(Msa)。因此,總擦除掩碼為:
其中:?表示對應元素相乘。
此外,DAE 模塊還引入了另一個分支,通過對Msa進行Sigmoid 函數操作來生成增強圖Mem,以維護分類的性能。通過設置λdrop_rate,網絡模型可以在Mdrop和Mem之間隨機選擇,決定是否使用注意力消除,注意力擦除將有助于定位性能,而另一種則對分類性能起著重要作用,最后將選定的結果作用到輸入特征上。
DAE 的效果依賴于生成的擦除掩碼的準確性,為了提高準確性,本文受文獻[30]啟發,設計了注意力信息聚合模塊。AIA 模塊的整體結構如圖3 所示。輸入特 征Fb∈RH×W×D,首先進行全局平均池化(Global Average Pooling,GAP),然后進行通道衰減(Channel Attenuation)模塊(兩次1×1 的卷積運算),最后生成全局通道向量fglobal∈R1×1×D作為輸出,此外在該過程中設置通道衰減率r以降低計算的復雜性。同時,對Fb進行通道衰減來獲得flocal∈RH×W×D的局部通道信息。經過2 次運算可以得到通道權重,首先通過廣播加法對fglobal和flocal進行計算,然后使用Sigmoid 函數。最終的輸出可以通過式(5)獲得:

圖3 AIA 模塊的整體結構Fig.3 The overall structure of AIA module
其中:σ、⊕和?分別表示 Sigmoid 函數、廣播加法和逐元素乘法。
此外,通過構建特征的空間依賴關系可以使網絡重點關注的那些區域位置有關鍵信息,這對于訓練時缺乏位置標簽的弱監督檢測非常重要。所以,為了進一步提高物體區域的定位性能,本文對輸入特征圖構建目標空間維度的依賴關系。通道平均池化(CAP)和通道最大池化(CMP)同時對輸入特征進行操作,然后將其輸出在通道維度中進行拼接。隨后將拼接的結果通過一個7×7 卷積層,并根據Sigmoid 函數獲取空間信息Ms。但是簡單地將空間信息進行加和可能會影響模型精度,這是由于經過Sigmoid 提取空間信息后的輸出權重為歸一化的特征圖,點乘后會使得特征圖的輸出響應變弱。故而本文進行點乘之后再與原始特征相加,最終注意力信息聚合模塊的輸出可以通過式(6)計算:
本文運用的數據集和評價指標如下:
1)數據集。在2個廣泛使用并具有挑戰性的數據集上進行了實驗:PASCAL VOC 2007[36]和 VOC 2012[37],兩者都包含20 個目標類別。對于VOC 2007,其包含24 640 個標記的對象和9 963 張圖像,其中5 011 張圖像屬于訓練驗證集trainval,4 952 張圖像屬于測試集test。對于VOC 2012,其包含22 531 張圖像,其中11 540 張圖像屬于訓練驗證集,10 991 張圖像屬于測試集。對于每一個數據集,本文實驗都在訓練驗證集進行訓練,并在測試集進行評估檢測結果。
2)評價指標。本文在實驗中使用2 個指標進行評估,即平均精度(mean Average Precision,mAP)和正確定位(Correct Localization,CorLoc)。mAP 用于衡量檢測器在目標檢測中的檢測精度,CorLoc 表示正確定位的圖像數量占總圖像數量的百分比,用于衡量定位精度[8]。根據PASCAL 標準,在評估中只有當一個預測框與真值框的IoU 大于50%時才認為其是正確的。為進行公平的比較,本文算法在test 集上評估mAP,在trainval 集上評價CorLoc。
實驗在NVIDIA Tesla P100 的顯卡上通過PyTorch 框架進行。DAENet 整體網絡在基準模型為Boosted-OICR 的基礎上建立,其骨干網絡是在ImageNet 數據集上預先訓練的VGG16。為了公平起見,所有的設置都與基準模型相同。實驗中使用Selective Search[38]為每個圖像生成初始候選區域。在訓練階段,實驗設置K=3 來優化實例分類器。此外,本文將AIA 模塊插入到VGG16 的conv4-3 層后面。對于DAE 模塊,參照文獻[32]將λfg設為80%,并將λdrop_rate設為75%,根據消融實驗,本文將λbg設為5%。在AIA 模塊中,通道衰減率r被設定為16。在評估過程中,最終結果是從優化和蒸餾分支的平均輸出中得到。在訓練時只使用圖像級別的標簽而不使用圖像的邊框注釋,但在測試時使用圖像完整標注進行評估。
本文在數據集VOC 2007 上進行消融實驗并使用mAP 進行評估。
3.3.1 骨干網絡中的DAE 位置實驗
首先對DAE 模塊在網絡結構中的插入位置進行實驗,結果如表1 所示。可以看到:當DAE 放置到VGG16 的conv4-3 層時性能最好,與Boosted-OICR相比mAP 提高了0.8%。但當把DAE 放置到pool2、pool3 或conv5-3 層時網絡的性能下降。這很可能是由于網絡低層的注意力一般集中在目標的紋理信息上,而在網絡高層中擦除顯著性特征后由于缺乏后續特征提取層使得目標的其他高響應特征難以被激活,因此這兩者都不能為網絡訓練提供有用的信息。

表1 DAE 模塊的插入位置對網絡性能的影響Table 1 Effect of DAE module insertion location on network performance %
3.3.2 DAE 和AIA 的有效性實驗
在實驗網絡模型中DAE 和AIA 的有效性如表2 所示。由DAE 的實驗結果顯示,當將顯著性局部前景區域和部分背景區域一起擦除時網絡的檢測性能提高了0.6 個百分點,并且mAP 達到了50.3%。在AIA 中進一步構建空間依賴關系后,mAP 從49.6%提高到50.0%,這表明空間注意力在弱監督檢測中起著重要作用。實驗結果表明,AIA 和DAE 協同工作可以提高整個DAENet的性能。在表2 中,N/A 表示未添加任何模塊,w/和w/o 分別表示with 和without。

表2 DAE 和AIA 的有效性實驗結果Table 2 Experimental results of the effectiveness of DAE module and AIA module %
3.3.3 DAE 中背景閾值參數的設定
為了確定DAE 中背景閾值λbg的最佳閾值,本文進行了不同設置實驗,如圖4 所示。從圖4 可以看出:背景閾值λbg很大程度上影響了檢測性能。當λbg設置為5%時該模型性能表現最佳,當不斷增加該值時網絡性能會逐漸變差。這可能是由于當背景閾值過大時網絡會將更多的目標區域誤認為是背景區域,造成重要的信息也被擦除從而影響檢測的性能。

圖4 不同閾值對檢測性能的影響Fig.4 Effect of different threshold on detection performances
本文分析了DAENet 與Boosted-OICR 相比在一些非剛性目標的高響應區域特征圖的情況,可視化情況如圖5 所示。本文提取了主干網絡VGG16 的conv5-3 層的特征圖,并將顯著性的特征進行可視化。可以發現:Boosted-OICR 方法的高響應區域主要集中在非剛性物體的最顯著性的區域,導致最終檢測結果不完整。本文方法可以有效擴展最顯著性的區域并激活其他顯著性較低的區域,以盡可能地定位目標整體。

圖5 非剛性目標的高響應區域特征圖的可視化Fig.5 Visualization of high response region feature maps of non-rigid objects
此外,在數據集VOC 2007 和VOC 2012 上,本文將DAENet 與其他最近的弱監督目標檢測方法進行了實驗比較,在數據集VOC 2007 上的mAP 和CorLoc 如表3 和表4 所示。可以看出:本文方法的mAP 達到了50.5%,CorLoc 達到了66.6%。特別地,對于一些非剛性目標,如cat、dog、horse 和people,本文方法的mAP 分別比Boosted-OICR 提高了19.6、5.5、3.6 和11.3 個百分點,這也充分證明了本文算法可以有效地擴展目標的顯著性局部區域,從而感知目標的整體。此外,在數據集VOC 2012 的檢測結果如表5 所示,本文方法的mAP 取得了47.4%的檢測結果,CorLoc 取得了67.3%的檢測結果,與Boosted-OICR 相比,DAENet 的mAP 和CorLoc 分別高出1.3和1.4 個百分點。DAENet 與其他最近的弱監督檢測方法相比也顯示出有競爭力的結果。然而從表3、表4 也可以發現:對于一些特殊的非剛性目標如bird、cow 和sheep,與最近的弱監督方法相比本文算法在準確度上提升幅度較小,對于如bird 等此類圖像總是由復雜的場景和小目標組成目標,易受擦除機制的影響使得后續該目標高響應區域減弱,而cow 和sheep等目標通常成群出現,易于將多個目標的高響應區域相連,這些因素都會極大地影響檢測結果。

表3 VOC 2007 test 集上不同WSOD 方法的mAP 比較Table 3 mAP comparison of different WSOD methods on VOC 2007 test set %

表4 VOC 2007 trainval 集上不同WSOD 方法的CorLoc 比較Table 4 CorLoc comparison of different WSOD methods on VOC 2007 trainval set %

表5 VOC 2012 數據集上不同WSOD 方法的mAP 和CorLoc 的比較Table 5 Comparison of mAP and CorLoc of different WSOD methods on the VOC 2012 data set %
本文將雙注意力擦除和注意力信息進行聚合,提出一種端到端弱監督檢測框架DAENet 來處理弱監督檢測問題。通過擴展目標的最顯著性區域提高整體網絡模型的性能,雙注意力擦除采用了注意力擦除方法來擦除最顯著性的前景注意力區域,同時擦除部分背景注意力區域,使整體網絡模型能夠盡可能地關注目標的整體區域。在此基礎上,將注意力信息聚合模塊通道中的全局特征和局部特征進行聚合,通過引入空間依賴性來輔助生成更加精準的注意力擦除掩碼,從而提高檢測精度。實驗結果表明,DAENet 框架通過雙注意力擦除和注意力信息聚合的協作能夠明顯提高檢測性能,且在一些非剛性目標上的精度也有明顯提高。下一步將對弱監督檢測中的小目標進行研究,以提高小目標的檢測精度。