熊珺瑤,宋振峰,王 蓉
中國人民公安大學(xué) 信息與網(wǎng)絡(luò)安全學(xué)院,北京 100038
目標(biāo)實例分割[1-2]是對輸入圖像中每個具體對象的位置標(biāo)簽進(jìn)行預(yù)測的任務(wù),實現(xiàn)不同對象的區(qū)分。早期的分割技術(shù)包括基于邊緣的圖像分割、基于閾值的圖像分割、基于區(qū)域的圖像分割等[3],這些方法的分割結(jié)果存在無邊緣特征,噪聲嚴(yán)重,被分割區(qū)域大小與實際目標(biāo)不符等問題。近年來,基于深度學(xué)習(xí)[4]的目標(biāo)實例分割技術(shù)得到廣泛應(yīng)用,這類方法通過RCNN[5]框架對圖像數(shù)據(jù)的復(fù)雜處理抽象出細(xì)粒度特征,輸出與輸入圖像同分辨率的二進(jìn)制掩膜圖,由于RCNN訓(xùn)練是多階段的,每一階段需要分開訓(xùn)練,難以優(yōu)化,F(xiàn)ast RCNN[6]和Faster RCNN[7]框架的出現(xiàn)也逐漸解決了這一問題。但是,這些算法單單基于視覺特征對目標(biāo)實例進(jìn)行分割,僅僅考慮了目標(biāo)的外觀屬性,當(dāng)目標(biāo)處于遮擋或者復(fù)雜背景的情況下,分割結(jié)果往往與實際情況不符。
跨模態(tài)實例分割以圖片和自然語言指代表達(dá)式[8]為輸入,通過自然語言指代表達(dá)式對圖像中特定目標(biāo)進(jìn)行精準(zhǔn)定位,分割出特定目標(biāo)??缒B(tài)實例分割不僅對目標(biāo)外觀屬性進(jìn)行提取,同時考慮了目標(biāo)的動作、空間位置以及與其他對象的關(guān)系,特征更豐富,目標(biāo)實例分割結(jié)果更準(zhǔn)確。如何實現(xiàn)視覺語言兩種模態(tài)的關(guān)聯(lián)是跨模態(tài)實例分割任務(wù)中最重要的問題。Lu等人[9]提出了基于BERT(bidirectional encoder representation from transformers)[10]的視覺語言雙流預(yù)訓(xùn)練模型,將BERT架構(gòu)擴(kuò)展到多模態(tài),通過共同注意轉(zhuǎn)換層將多模態(tài)信息進(jìn)行交互,進(jìn)而轉(zhuǎn)移到多個不同的視覺語言任務(wù)中,實現(xiàn)視覺語言兩種模態(tài)信息的交互;Yu等人[11]提出一個模塊化網(wǎng)絡(luò),將指代表達(dá)式分解為目標(biāo)外觀、位置以及與其他對象關(guān)系的三個模塊,網(wǎng)絡(luò)分別學(xué)習(xí)三個模塊的權(quán)重和注意力,計算三個模塊與圖像中對應(yīng)部分的匹配分?jǐn)?shù),找出最高的匹配分?jǐn)?shù),更好地處理圖像中不同對象之間的關(guān)系;Margffoy-Tuay等人[12]提出的DMN(dynamic multimodal instance segmentation guided by natural language queries)模型,分別對視覺和語言信息進(jìn)行處理,并將提取的視覺、空間位置以及語言特征進(jìn)行融合,進(jìn)一步實現(xiàn)目標(biāo)實例的分割,更好利用自然語言的上下文信息,獲取目標(biāo)對象的位置、類型以及與其他對象的關(guān)系信息。
本文在DMN的基礎(chǔ)上提出了一種改進(jìn)的跨模態(tài)目標(biāo)實例分割方法。針對特征提取在不同的特征通道和空間位置重要性不一致的問題,在特征提取主干網(wǎng)絡(luò)中引入通道注意力機(jī)制和空間注意力機(jī)制,動態(tài)調(diào)整特征表達(dá),使提取出來的特征更具泛化性。其次,針對模型訓(xùn)練過程中批次量對網(wǎng)絡(luò)性能的影響問題,在網(wǎng)絡(luò)的歸一化層中引入帶閾值激活的歸一化層FRN[13](filter response normalization layer),與BN[14](batch normalization)實現(xiàn)聯(lián)合正則,消除網(wǎng)絡(luò)對批次量的依賴。
DMN由一個模塊化網(wǎng)絡(luò)組成,整體框架如圖1所示,分為四個部分,分別是視覺特征提取模塊、語言特征提取模塊、信息融合模塊以及上采樣模塊。首先利用DPN92[15]網(wǎng)絡(luò)作為視覺特征提取主干網(wǎng)絡(luò),SRU[16]作為語言特征提取主干網(wǎng)絡(luò);其次,DMN通過處理語言信息生成動態(tài)濾波器實現(xiàn)多模態(tài)的響應(yīng),得到的響應(yīng)圖與視覺特征和空間位置特征通過卷積進(jìn)行融合;最后利用殘差網(wǎng)絡(luò)的思想實現(xiàn)上采樣過程,以一種連續(xù)的方式不斷融合不同尺度大小的視覺特征,使得分割過程中能獲得更加精細(xì)的特征。
圖1 DMN算法整體框架圖Fig.1 Overall framework diagram of DMN algorithm
視覺特征通過DPN92網(wǎng)絡(luò)進(jìn)行提取,視覺特征表達(dá)為:
其中,I作為原始圖像,In,n∈{1,2,…,N},是在進(jìn)行特征提取之后的特征映射,N表示生成不同比例大小的特征圖的數(shù)量,最終輸出的特征圖維數(shù)降低為原圖的,在實驗中,設(shè)置N=5,即使用5層卷積層對視覺信息進(jìn)行編碼。
SRU作為語言特征提取網(wǎng)絡(luò),為整個引用表達(dá)式生成單個特征映射和一組動態(tài)濾波器,具體方法為:
其中由M個單詞組合而成的表達(dá)式,進(jìn)行詞嵌入操作后得到em,每個單詞送入SRU單元得到對應(yīng)的隱藏狀態(tài)hm,將詞嵌入的結(jié)果與隱藏狀態(tài)結(jié)合rm(em,hm),送入多層感知器,生成一組動態(tài)濾波器ft,m,Wftrm與bft表示生成每個動態(tài)濾波器使用的超參數(shù),σ表示使用sigmoid激活函數(shù),t∈{1,2,…,T},T表示濾波器的數(shù)量,實驗中設(shè)置T=10,表示每個單詞生成10個濾波器與視覺特征圖進(jìn)行響應(yīng)。
模態(tài)信息融合模塊是將多模態(tài)特征進(jìn)行交互,首先由視覺特征提取模塊得到的特征圖I與空間位置特征結(jié)合,然后與語言特征模塊生成的動態(tài)濾波器進(jìn)行交互計算,得到T通道的響應(yīng)圖Dt,再將第N層卷積層生成的視覺特征圖IN與位置坐標(biāo)特征LOC以及響應(yīng)圖Dt進(jìn)行結(jié)合,得到新的視覺特征表示I′,利用一個1×1的卷積層將信息進(jìn)行整合[17-18],在每個時間步長得到一個結(jié)果Rtime,最后將結(jié)果通過多個SRU進(jìn)行級聯(lián),具體方法為:
上采樣模塊是指將在視覺模塊中每個階段提取的視覺特征與每個時間步長得到的特征圖進(jìn)行融合。具體做法是將每個階段得到的Rn與In進(jìn)行連接,結(jié)果執(zhí)行3×3卷積,再通過雙線性插值將大小縮放2倍,生成下一階段的輸入,即Rn-1,此過程一共進(jìn)行l(wèi)bN次,最終產(chǎn)生于輸入I1相同大小的輸出掩碼,利用1×1的卷積生成單通道的特征值,最終通過線性修正單元(rectified linear unit,Relu)進(jìn)行激活得到分割結(jié)果[19],減少網(wǎng)絡(luò)中參數(shù)的相互依存關(guān)系,緩解過擬合的問題,加速網(wǎng)絡(luò)的收斂。
DMN利用自然語言特征提取模塊和視覺特征提取模塊分別提取輸入圖像和語言的特征,生成動態(tài)濾波器實現(xiàn)特征的響應(yīng),對網(wǎng)絡(luò)批次量的依賴性較強。本文基于DMN提出一種改進(jìn)的跨模態(tài)目標(biāo)實例分割算法,整體框架如圖2所示。在視覺特征提取方面,為減小網(wǎng)絡(luò)對批次量的依賴性,引入濾波器響應(yīng)歸一化層FRN,并與BN聯(lián)合進(jìn)行正則化,用于消除深層神經(jīng)網(wǎng)絡(luò)訓(xùn)練中對批處理的依賴;為增強通道和空間上的有用特征,抑制噪聲,引入CBAM注意力機(jī)制[20],使輸入特征圖沿著通道和空間兩個維度進(jìn)行注意力值的計算和更新,得到自適應(yīng)細(xì)化的特征圖。
圖2 改進(jìn)后DMN算法框架圖Fig.2 Optimized algorithm framework diagram based on DMN
BN層是對每一批次數(shù)據(jù)進(jìn)行歸一化,能夠允許更大的學(xué)習(xí)率,大幅提高訓(xùn)練速度,主要通過假設(shè)數(shù)據(jù)都處于正態(tài)分布,將數(shù)據(jù)進(jìn)行歸一化,優(yōu)化網(wǎng)絡(luò)的訓(xùn)練效能。BN解決了梯度消失和梯度爆炸的問題,加快訓(xùn)練速度,提高網(wǎng)絡(luò)的泛化能力。當(dāng)任務(wù)復(fù)雜程度增加時,沒有足夠的顯存存放較多的批量數(shù)據(jù),若批次量太小,BN效果會有明顯下降。FRN結(jié)構(gòu)使輸入特征圖僅依賴于寬度和高度兩個維度,避免了批次量和通道數(shù)對歸一化結(jié)果的影響,在低批次量條件下性能依舊十分穩(wěn)定。FRN分為帶閾值激活的濾波器響應(yīng)歸一化和閾值線性單元兩個部分,結(jié)構(gòu)圖如圖3所示。
圖3 FRN層結(jié)構(gòu)圖Fig.3 FRN layer structure diagram
帶閾值激活的濾波器響應(yīng)歸一化是對于輸入的四元組張量A,元素分別是批次量,圖像的寬度和高度以及特征通道數(shù)。首先求出向量A在圖像寬度高度上的方差V,根據(jù)所求v和一個極小的設(shè)定的量θ進(jìn)行正則化,之后對正則化后的參數(shù)進(jìn)行仿射線性變換,以便網(wǎng)絡(luò)減小標(biāo)準(zhǔn)化的影響,其中γ和β是可通過訓(xùn)練學(xué)習(xí)到的參數(shù),具體計算方式是:
由于在帶閾值激活的濾波器響應(yīng)層中可能出現(xiàn)結(jié)果為0的偏差,這種偏差與Relu一起會對訓(xùn)練產(chǎn)生不利的影響,這里引入閾值線性單元來解決這一問題,具體方法如下:
其中,τ是可以通過學(xué)習(xí)得到的閾值。
本文在BN層中引入FRN正則化,減小網(wǎng)絡(luò)對批次量的依賴。FRN雖然在自然語言處理網(wǎng)絡(luò)中取得了成功,但由于在不同的領(lǐng)域還未進(jìn)行探索,本文僅僅將FRN引入網(wǎng)絡(luò)的低層,保留了BN層,即FRN與BN層各占一半的通道數(shù),保證網(wǎng)絡(luò)參數(shù)和計算量的同時保留了BN層對網(wǎng)絡(luò)性能的優(yōu)化。BN與FRN聯(lián)合正則化結(jié)構(gòu)圖如圖4所示。
圖4 BN+FRN聯(lián)合正則化結(jié)構(gòu)圖Fig.4 Union of BN and FRN structure diagram
CBAM機(jī)制,也被稱為“卷積塊注意模塊”,用于前饋神經(jīng)網(wǎng)絡(luò),強調(diào)沿著通道和空間兩個主要維度上有意義的特征,有效優(yōu)化網(wǎng)絡(luò)上特征的提取和信息的傳遞。機(jī)制分為通道注意力模塊和空間注意力模塊,在這兩個模塊上學(xué)習(xí)有用信息,抑制噪聲信息,再使用卷積計算將通道注意力信息和空間注意力信息融合在一起。以一個特征圖為輸入,沿著兩個獨立的維度產(chǎn)生相應(yīng)的注意力圖,將注意力圖與特征圖進(jìn)行點乘,實現(xiàn)自適應(yīng)的特征細(xì)化,最終得到一個新的特征圖。將輸入特征用X∈RC×H×W進(jìn)行表示,一次產(chǎn)生一個1維的通道注意力圖MC∈RC×1×1和2維的空間注意力圖MS∈R1×H×W,具體表示方法為:
其中?表示點乘。
2.2.1 通道注意力模塊
為了有效地計算通道注意力,要對輸入的特征進(jìn)行池化操作,為獲得精密且豐富的空間信息,CBAM機(jī)制同時使用平均池化和最大池化功能。通道注意力模塊結(jié)構(gòu)如圖5所示。
圖5 通道注意力模塊結(jié)構(gòu)圖Fig.5 Channel attention module structure diagram
首先利用平均池化和最大池化的方法來聚合特征圖上的信息,生成兩個不同的上下文描述符,用和分別表示平均池化和最大池化產(chǎn)生的描述符,將這兩個描述符輸入到一個共享網(wǎng)絡(luò)(共享網(wǎng)絡(luò)由一個帶有隱藏層的多層感知器MLP組成,為了減少參數(shù)開銷,將激活大小設(shè)置為表示的是縮減率),對元素進(jìn)行求和合并得到輸出特征向量,通道注意力實現(xiàn)方法具體如下:
其中,σ表示的是sigmoid函數(shù),MLP表示多層感知器,表示多層感知器中的權(quán)重參數(shù),在輸入上共享,注意力值經(jīng)過權(quán)值W0處理后通過激活函數(shù)Relu。
2.2.2 空間注意力模塊
利用特征之間的空間位置關(guān)系生成空間注意力圖,空間注意力模塊如圖6所示。
圖6 空間注意力模塊結(jié)構(gòu)圖Fig.6 Spartial attention module structure diagram
其中,σ表示sigmoid函數(shù),f7×7表示一個7×7的卷積運算。
通道和空間注意力模塊,分別計算互補的注意力,分別關(guān)注具體目標(biāo)和空間位置信息,兩個模塊可以并行或以順序的方式連接,本文采用順序方式進(jìn)行連接。
本文在三個數(shù)據(jù)集上進(jìn)行了訓(xùn)練和測試:ReferIt[21]、GRef[22]、UNC[23]。這三個數(shù)據(jù)集都是基于MS COCO[24],主要區(qū)別在于自然語言表達(dá)式中對象類型、表達(dá)式的長度、對象的相對大小。這些特征在這三個數(shù)據(jù)集上具有高度可變性,能對優(yōu)化網(wǎng)絡(luò)的泛化能力進(jìn)行證明。ReferIt目前在19 894個圖片中包含130 525個表達(dá)式,涉及目標(biāo)數(shù)有96 654種;GRef數(shù)據(jù)集包含26 711幅圖像,85 474個引用表達(dá)式,涉及目標(biāo)數(shù)有54 822個;UNC數(shù)據(jù)集選擇的圖像包含兩個或多個相同對象類別的對象,共收集19 994幅圖像,142 209個表達(dá)式,涉及目標(biāo)數(shù)有50 000個。
本文實驗在NVIDIA GTX2060Ti GPU上使用Pytorch框架進(jìn)行訓(xùn)練和測試。訓(xùn)練總輪數(shù)設(shè)置為30,利用Adam優(yōu)化器[25]進(jìn)行優(yōu)化,初始學(xué)習(xí)率設(shè)置為1×10-5,第二個時期學(xué)習(xí)率設(shè)置為1×10-6,批次量設(shè)置為一個圖像描述對。
實驗1將CBAM模塊引入DPN92網(wǎng)絡(luò),分別在ReferIt數(shù)據(jù)集GRef數(shù)據(jù)集和UNC數(shù)據(jù)集上對改進(jìn)模型使用mIou(mean intersection over union)指標(biāo)進(jìn)行性能評價,mIou在實例分割應(yīng)用中計算每個實例真實值和預(yù)測值之間的交并比,之后取平均,計算如下:
其中,k表示目標(biāo)實例對象個數(shù),i與j分別表示真實值和預(yù)測值,則pii表示結(jié)果預(yù)測為真實,pij表示預(yù)測值與真實值不相符,pji表示預(yù)測值為真實值,即預(yù)測結(jié)果正確。
實驗2將FRN引入了正則化層,與BN進(jìn)行聯(lián)合正則化,共同引入DPN92網(wǎng)絡(luò)中,分別在ReferIt、GRef數(shù)據(jù)集與UNC數(shù)據(jù)集上對改進(jìn)模型使用mIou指標(biāo)進(jìn)行性能評價。
實驗3將CBAM注意力模塊和FRN+BN聯(lián)合正則化共同引入DPN92網(wǎng)絡(luò)中,在ReferIt,GRef與UNC數(shù)據(jù)集上使用mIou指標(biāo)進(jìn)行性能評價。
實驗1、2、3評估結(jié)果如表1所示,可以看出引入CBAM注意力機(jī)制后,ReferIt、GRef數(shù)據(jù)集在mIou指標(biāo)上分別提升了1.77和0.36個百分點,在UNC數(shù)據(jù)集的val、testA、testB上進(jìn)行評估,分別提升了1.39、1.04和1.75個百分點;引入FRN+BN聯(lián)合正則化的模型在精度上提升較小,在ReferIt、GRef數(shù)據(jù)集上進(jìn)行評估分別提升了1.69和0.21個百分點,在UNC數(shù)據(jù)集的val、testA、testB上進(jìn)行評估,分別提升了0.95、1.12和1.44個百分點;引入CBAM注意力機(jī)制和聯(lián)合正則化的改進(jìn)模型在mIou指標(biāo)上都有提高。在ReferIt、GRef數(shù)據(jù)集上進(jìn)行評估分別提高了1.85和0.52個百分點,在UNC數(shù)據(jù)集的val、testA、testB上進(jìn)行評估,分別提升了1.98、2.22和2.75個百分點。
表1 實驗評價結(jié)果Table 1 Evaluation results of experiment單位:%
為評估改進(jìn)模型在目標(biāo)實例分割上的效果,對上述實驗進(jìn)行可視化分析,實驗結(jié)果如圖7所示,輸入指代表達(dá)式為dark looking guy on the right。其中圖(a)、(b)、(c)、(d)分別表示原圖像、真實圖像掩膜、改進(jìn)前模型生成的分割熱圖和改進(jìn)后模型生成的分割熱圖,從圖7(c)、(d)可以看出改進(jìn)前改進(jìn)后的模型相較改進(jìn)前模型效果更優(yōu)。
圖7 目標(biāo)實例分割效果圖Fig.7 Segment result on object
為評估改進(jìn)后模型的時間性能,記錄下每一輪訓(xùn)練的時長,時間性能比較圖如圖8所示,曲線圖分別描述了在本文實驗環(huán)境下的原模型每輪訓(xùn)練時長以及改進(jìn)后模型的每輪訓(xùn)練時長,橫坐標(biāo)表示訓(xùn)練輪數(shù),縱坐標(biāo)表示時長,可以看出,改進(jìn)后的模型相較改進(jìn)前模型訓(xùn)練時間有小幅度增加。
圖8 時間性能比較圖Fig.8 Time performance comparison
將改進(jìn)的方法與跨模態(tài)實例分割的其他方法進(jìn)行比較,在ReferIt、GRef以及UNC數(shù)據(jù)集上優(yōu)于原模型,可以證明改進(jìn)方法的有效性。對比評價結(jié)果如表2所示。
表2 改進(jìn)的方法與其他指稱表達(dá)方法的對比評價Table 2 Comparison results between improved method and latest referring expression segmentation method單位:%
本文提出了一種優(yōu)化的跨模態(tài)目標(biāo)實例分割方法,在DMN基礎(chǔ)上,對主干網(wǎng)絡(luò)DPN92進(jìn)行了改進(jìn),并在ReferIt、GRef與UNC三個數(shù)據(jù)集上進(jìn)行實驗,以mIou評價指標(biāo)進(jìn)行評價。通過引入CBAM注意力機(jī)制,分別在通道和空間兩個維度上強調(diào)有用特征,抑制無關(guān)的噪聲,實驗證明在前兩個數(shù)據(jù)集上分別提升了1.77和0.36個百分點在UNC的三個驗證集上分別提升了1.39、1.04和1.75個百分點;其次,引入FRN與BN的聯(lián)合正則,改善了批次量對網(wǎng)絡(luò)性能的影響,實驗證明在前兩個數(shù)據(jù)集上分別提升了1.69和0.21個百分點,在UNC的三個驗證集上分別提升了0.95、1.12和1.44個百分點;最后將CBAM注意力機(jī)制與聯(lián)合正則化同時引入網(wǎng)絡(luò)中,實驗證明,改進(jìn)后模型在前兩個數(shù)據(jù)集上分別提升了1.85和0.52個百分點,在UNC的三個驗證集上分別提升了1.98、2.22和2.75個百分點。對改進(jìn)的跨模態(tài)實例分割方法進(jìn)行可視化實驗和時間性能的評估,結(jié)果表明,改進(jìn)后的模型在與改進(jìn)前模型在訓(xùn)練時長相差不大的情況下,分割效果更佳。
由于數(shù)據(jù)集較大,且跨模態(tài)模型較復(fù)雜,需要處理兩種模態(tài)的信息并進(jìn)行響應(yīng)計算,實驗訓(xùn)練耗時時間較長,下一步將結(jié)合輕量級網(wǎng)絡(luò)并減少實驗參數(shù)對網(wǎng)絡(luò)模型進(jìn)行優(yōu)化。