楊傳棟,錢立志,孫子文,陳 棟,凌 沖
中國人民解放軍 陸軍炮兵防空兵學(xué)院 兵器工程系,合肥 230031
隨著以卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)為代表的深度神經(jīng)網(wǎng)絡(luò)模型在自動駕駛、軍事目標(biāo)偵察、圖像制導(dǎo)等高風(fēng)險決策領(lǐng)域的應(yīng)用,其可解釋性成為計算機視覺領(lǐng)域中愈加得到關(guān)注和重視的研究課題[1]。視覺解釋方法是通過可視化手段對神經(jīng)網(wǎng)絡(luò)模型決策結(jié)果進行分析的一項技術(shù),其目標(biāo)是幫助使用者理解模型內(nèi)部機制和信任模型決策。近年來,視覺解釋方法處在快速發(fā)展和完善階段,但解釋效果和算法效率仍存在提升空間,值得進一步研究。
2016年Zhou等人[2]首次提出基于類激活映射(class activation mapping,CAM)的視覺解釋方法,通過對最后一層卷積層特征圖加權(quán)組合形成類激活圖,以圖像像素值大小代表對應(yīng)位置的輸入對輸出結(jié)果的相關(guān)程度,取得了良好的解釋效果。但該方法需要改變CNN模型結(jié)構(gòu)并為每個類重新訓(xùn)練線性分類器以獲取權(quán)重。2017 年,Selvaraju 等人[3]提出GradCAM 方法,挖掘在決策過程中梯度所對應(yīng)的局部信息[4],可用于所有CNN模型且無需改變模型結(jié)構(gòu)和重新訓(xùn)練。Chattopadhyay 等人[5]于2018年在GradCAM方法利用高細粒度局部層次的決策信息提升對多個同類目標(biāo)的定位能力。2019 年Omeiza等人[6]使用平滑處理技術(shù)提高了GradCAM++類激活圖的定位能力。2020年,Wang等人[7]指出使用梯度計算權(quán)重的方法會帶來視覺噪聲、錯誤置信度等問題,首次提出基于無梯度CAM 方法,以在目標(biāo)類上的前向傳遞分類置信度分數(shù)作為特定輸入在網(wǎng)絡(luò)決策中的全局貢獻,取得了更好的視覺效果,但計算量大。2020年Naidu 等人[8]提出IS-CAM 方法,在ScoreCAM 基礎(chǔ)上引入積分操作,能夠更加精確地定位到與決策相關(guān)的特征。2021年,Lee等人[9]提出Relecance-CAM方法,利用層間相關(guān)性傳播獲得加權(quán)得分,解決了基于梯度的可視化方法對中間層特征視覺解釋效果差的問題。2021年,Zhang 等人[10]提出的GroupCAM 方法綜合考慮了梯度信息和全局決策置信度貢獻,但是在計算中精細度不足且速度慢。2022 年,Zheng 等人[11]采用考慮像素間關(guān)系的夏普利值來表示每個像素對模型輸出的決策貢獻。2022 年,梁先明等人[12]提出一種基于時頻GradCAM 的調(diào)制識別網(wǎng)絡(luò)的視覺解釋框架。2022年,張宇等人[13]使用CAM 方法補充定位信息,提高了模型在分割任務(wù)上的性能。
綜上所述,CAM視覺解釋方法憑借直觀形象、解釋性好的優(yōu)點成為該領(lǐng)域熱點方向,并被廣泛應(yīng)用于其他任務(wù)。但現(xiàn)有CAM方法存在多層次決策信息未有效結(jié)合導(dǎo)致視覺解釋效果差的問題。本文提出一種結(jié)合多層次決策信息的CAM 視覺解釋模型(CAM combining hierarchical decision information,HD-CAM)。具體工作有:
(1)挖掘特征圖中高細粒度局部層次的決策信息,生成一組與決策結(jié)果相關(guān)性強的加權(quán)特征圖。
(2)采用定序分組方式合并加權(quán)特征圖,獲取一組包含了局部層次的決策信息且冗余度低、決策相關(guān)性強的掩碼。
(3)基于全局層次的決策貢獻并行計算分組掩碼重要度分數(shù),對掩碼采取模糊邊界和積分方法進行處理,提高了算法對全局決策信息的敏感性和算法速度。
(4)通過消融實驗確定了模型最優(yōu)參數(shù)。利用ImageNet[14]數(shù)據(jù)集進行實驗驗證,并與現(xiàn)有的先進視覺解釋方法進行了定性和定量比較。實驗結(jié)果表明該文方法視覺解釋結(jié)果與現(xiàn)有視覺解釋方法相比具有更高的性能,且算法速度達到68 ms。
CAM 方法以視覺顯著性的方式對CNN 決策進行可視化解釋。區(qū)別于直接可視化大量抽象啟發(fā)式的CNN 特征[15],CAM 方法對含有最豐富語義信息的最后一層卷積層特征圖計算通道級線性加權(quán)和,并使用ReLU()函數(shù)保留正向的激活特征,得到特定類別目標(biāo)對應(yīng)的類激活圖。類激活圖中像素值大的位置對應(yīng)可能的目標(biāo)區(qū)域,改善了人們對決策結(jié)果的理解。
設(shè)f為圖像分類CNN模型,θ為模型參數(shù),對于給定輸入圖像I0,通過全局平均池化,得到第k個通道中位于(i,j)位置的特征圖值所對應(yīng)的權(quán)重。經(jīng)過網(wǎng)絡(luò)前向推理,分類分數(shù)yc計算如式(1):
則第c類目標(biāo)對應(yīng)的類激活圖Lc計算如式(2):
其中,對應(yīng)第c類目標(biāo)的最后一層特征圖中第k個通道特征圖的權(quán)重,根據(jù)衡量各個通道特征圖權(quán)重大小的方式不同,可分為基于梯度和非梯度的方法。梯度能夠反映輸入圖像在CNN 網(wǎng)絡(luò)決策過程中的局部響應(yīng)情況,基于梯度的GradCAM 方法將預(yù)測的分類分數(shù)映射回前一層卷積層,以該層中每個特征圖梯度的平均值表示其對第c類目標(biāo)類別的重要性。權(quán)重計算如式(3):
其中,Z是特征圖中像素數(shù)量。為特征圖在(i,j)位置關(guān)于yc的導(dǎo)數(shù)。
基于平均梯度加權(quán)的CAM方法會出現(xiàn)多個同類目標(biāo)和目標(biāo)區(qū)域部分不能全部激活的現(xiàn)象;同時,僅使用梯度表征與決策結(jié)果的相關(guān)性會受到梯度飽和、假置信度干擾,使類激活映射圖產(chǎn)生偽影、噪聲且無法聚焦于目標(biāo)主體,進而影響解釋視覺效果,如圖1所示。
圖1 CAM方法存在問題示意Fig.1 Problems of CAM method
以ScoreCAM為代表的無梯度CAM方法將多組特征圖作為掩碼與原圖點乘以對原始圖像遮擋,作為擾動圖像將其輸入神經(jīng)網(wǎng)絡(luò)中,以在目標(biāo)類上的前向傳遞分類置信度分數(shù)與基線的差值衡量各層特征圖的重要度,反映CNN整體的決策判斷,如式(4):
其中,Ib為基線圖像,為使用上采樣操作Up()將縮放到到輸入圖像尺寸的特征圖。
雖然以全局決策貢獻的方式能獲得相對精確的類激活映射圖,但是在獲取式(4)中重要度分數(shù)時受限于基線圖像和輸入的干擾圖像的選擇,對不同輸入特征全局決策貢獻的敏感性不足,且忽視了前向傳遞中局部層次的決策信息,解釋性能有待提高。同時前向推理計算量高、計算內(nèi)存占用大,導(dǎo)致算法實時性差。
分析上述問題產(chǎn)生的原因有三點:
(1)僅以平均特征圖梯度作為權(quán)重?zé)o法充分提取到高細粒度的局部層次決策貢獻,導(dǎo)致加權(quán)特征圖與模型決策結(jié)果關(guān)聯(lián)弱,難以準確定位到與決策結(jié)果更為相關(guān)的區(qū)域。
(2)以加權(quán)特征圖作為掩碼進行前向推理時需要進行特征圖組數(shù)次運算,增加了算法計算代價。通過直觀觀察發(fā)現(xiàn)多個加權(quán)特征圖往往對應(yīng)極為相近的激活區(qū)域,且實驗發(fā)現(xiàn)適當(dāng)減少計算組數(shù)對決策結(jié)果影響很小,因此判斷存在信息冗余。
(3)在掩碼重要度分數(shù)計算過程中,直接對輸入圖像遮擋會造成遮擋區(qū)域和顯著區(qū)域之間的邊界尖銳,且基線圖像選擇不合理,使得網(wǎng)絡(luò)對不同輸入特征全局決策貢獻的敏感性不足,影響了全局貢獻得分的準確性。
本文提出一種結(jié)合多層次決策信息的CAM視覺解釋方法HD-CAM,如圖2。方法可分為兩個階段,第一階段通過CNN 前向傳遞得到深層特征圖,通過特定類目標(biāo)分類分數(shù)反向傳播得到特征圖對應(yīng)梯度,經(jīng)特征圖像素級梯度加權(quán)和基于定序分組方式得到一組包含高細粒度局部層次的決策信息的掩碼。第二階段將模糊化的掩碼遮擋圖像輸入CNN,通過包含N次積分采樣的前向傳遞獲取全局決策貢獻,并取分數(shù)均值作為組重要度分數(shù),最后對分組掩碼進行線性加權(quán)得到類激活圖。
圖2 HD-CAM方法框圖Fig.2 Framework of HD-CAM method
分析上述問題產(chǎn)生的原因有三點:
直接基于梯度加權(quán)特征圖合并得到類激活映射圖會因梯度飽和、假置信度等問題難以取得高質(zhì)量結(jié)果。因此利用特征圖像素級梯度對決策結(jié)果的高細粒度貢獻,生成一組與決策結(jié)果相關(guān)性強的加權(quán)特征圖。
對式(1)中各特征圖權(quán)重進行顯性編碼,為特征圖(i,j)位置處的每個像素梯度進行加權(quán),按照式(5)計算:
其中,為類c和特征圖對應(yīng)的像素梯度的加權(quán)系數(shù)。將式(5)代入式(1),并對兩邊求二次偏導(dǎo),可得:
可由式(7)計算得到,通過像素級梯度加權(quán)挖掘了特征圖中高細粒度的局部層次決策信息,使多個同類目標(biāo)整體都能夠得到更好地激活。
圖3為特征圖均值分布和兩種算法對應(yīng)的通道級別權(quán)重分布情況。實驗發(fā)現(xiàn),GradCAM方法包含了大量負方向激活,HD-CAM方法得到的非負權(quán)重激活值與特征圖關(guān)聯(lián)度更高,體現(xiàn)了梯度能對應(yīng)影響決策結(jié)果的關(guān)鍵區(qū)域的能力,能夠更好地反映特征圖的重要程度。
圖3 特征激活圖通道級權(quán)重分布Fig.3 Distribution of channel weights of feature maps
用獲取的特征圖像素級梯度權(quán)重對特征圖加權(quán),得到K個特征通道的激活了不同決策相關(guān)區(qū)域的高細粒度加權(quán)特征圖,如式(8):
為解決加權(quán)特征圖信息冗余問題,基于分組思想[16]將大量的加權(quán)特征圖分為若干小組并合并,以獲取一組信息冗余低、決策相關(guān)性強的掩碼。
將K個加權(quán)特征圖按照產(chǎn)生的加權(quán)特征圖的固定順序等距分為G組(G<K),并將每組加權(quán)特征激活圖疊加,獲得G個用于生成類激活圖的一組中間掩碼Ml,計算方法如式(9):
其中,超參數(shù)G通過實驗確定最優(yōu)取值。同時,經(jīng)實驗測試,分組方法采用按照特征圖固定順序合并的定序分組,算法能夠獲得更好的性能和一致性,具體可見3.2節(jié)。本文模型中,K=512,G=64,通過分組合并,后續(xù)計算量能夠縮減8倍。
為獲取更加平滑的掩碼,將得到的低分辨率掩碼進行歸一化,并上采樣至原圖大小,得到G組掩碼,如式(10):
以相應(yīng)輸入特征對決策結(jié)果的全局貢獻衡量分組掩碼的重要度。為了準確反映輸入特征對決策結(jié)果的影響,前向傳遞的輸入通常為掩碼遮擋的圖像。但直接采用掩碼對輸入圖像遮擋會造成遮擋區(qū)域和顯著區(qū)域之間的邊界尖銳,進而影響組重要度分數(shù)的準確性。因此對遮擋區(qū)域使用高斯模糊處理:
其中,是經(jīng)過高斯模糊的輸入圖像,⊙為哈達馬積。為使用模糊化的掩碼遮擋圖像。guassian_blur()表示高斯模糊處理。
模型預(yù)測與輸入特征之間的歸因應(yīng)符合敏感性(如果不同輸入在某維度存在特征偏差且預(yù)測輸出不同,則該維度歸因不為零)和實現(xiàn)不變性(功能等價的模型對輸入歸因相同)兩個基本公理[17],文獻[8]提出積分方法對相對于基線的輸入的所有特征分量的歸因累加。本文以線性插值為積分路徑逐步累加輸入圖像特征,計算N次在目標(biāo)類上的前向傳遞分類分數(shù)并求平均,作為組掩碼重要度分數(shù),得到輸入所對應(yīng)的更為準確的全局決策貢獻。同時,多種無梯度方法采取純黑圖片或噪聲圖片作為基線圖像,但文獻[18]指出采用該類基線圖像存在缺陷,經(jīng)過實驗驗證本文在具體實現(xiàn)中令基線圖像的輸出為零,避免了不合理基線圖像的干擾。能夠提高對不同輸入特征全局決策貢獻表示的準確性。如式(12):
其中,為第l組掩碼的重要度分數(shù),N為積分采樣數(shù)量。為了提高運行速度,將累加操作展開,并行計算N個掩碼的前向傳遞,有效提高了算法速度。
最后,類激活圖利用重要度分數(shù)對G組掩碼加權(quán),獲得更加精細準確的視覺解釋圖,如式(13):
HD-CAM算法具體流程如下所示。
輸入:圖像I0,模型f,類c,分組數(shù)G,高斯模糊參數(shù)。
3.1.1 實驗平臺及數(shù)據(jù)集
實驗硬件平臺使用配置為AMD EPYC7742 CPU、內(nèi)存為512 GB、4 塊NVIDIA A100 GPU 的A100 服務(wù)器。操作系統(tǒng)為Ubuntu20.04。深度學(xué)習(xí)框架使用python3.9+pytorch1.8,采用Cuda11.1+cudnn8.0加速。
基于ImageNet 分類數(shù)據(jù)集對提出方法進行實驗驗證。ImageNet 驗證集共50 000 張圖片,包含1 000 個目標(biāo)類型,且提供了最高預(yù)測分數(shù)的類別目標(biāo)對應(yīng)的邊界框真值。在ImageNet 驗證集中抽取2 000 張圖片,為每個圖片最高置信度類目標(biāo)生成視覺解釋圖。采用ImageNet圖像數(shù)據(jù)集時通常采取如下預(yù)處理:將圖片大小調(diào)整為(224×224×3),像素值轉(zhuǎn)換至[0,1]范圍,并使用均值向量[0.485,0.456,0.406]和標(biāo)準差向量[0.229,0.224,0.225]進行歸一化。為保證公平性,統(tǒng)一采用pytorch模型庫中的VGG19[19]預(yù)訓(xùn)練模型權(quán)重進行驗證。
3.1.2 評價指標(biāo)
將視覺解釋性方法的評估分為定性評估和定量評估。定性評估可通過分析不同方法得到顯著圖的視覺連續(xù)性、類別區(qū)分性、多目標(biāo)和小目標(biāo)可視化角度對視覺解釋性方法進行定性評價。定量評估分析可以從置信度評價和定位評價兩個方面進行。
置信度評價采用圖像遮擋實驗的方式,迫使模型改變決策,驗證類激活映射圖中顯著區(qū)域?qū)τ陬A(yù)測置信度的重要性,指標(biāo)包括刪除(deletion,Del)和插入(insertion,Ins)度量[20]。綜合考慮兩個度量,可由式(14)計算。其中,刪除度量越小越好,插入度量和I-D指標(biāo)越大越好,
利用弱監(jiān)督目標(biāo)定位實驗評價方法的定位精度。定位精度由loc1和loc5指標(biāo)衡量[21],預(yù)測邊界框和真值邊界框之間的交并比(intersection over union,IoU)閾值按照0.1間隔設(shè)置在(0,1)范圍逐個取值進行測試,得到不同閾值下的loc1和loc5目標(biāo)定位精度,記為mloc1、mloc5。目標(biāo)定位精度越高越好。
對本文提出改進方法中的參數(shù)選取在ImageNet 數(shù)據(jù)集上進行消融實驗測試,以確定最優(yōu)的模型結(jié)構(gòu),實現(xiàn)對不同輸入圖像的自適應(yīng)。由于分組數(shù)量和積分采樣數(shù)量是關(guān)鍵參數(shù)且對計算量和精度影響大,本節(jié)首先通過多組實驗確定了能夠包含最高效信息的分組數(shù)量,以保證基本的算法精度和算法效率;其次選取多組積分采樣數(shù)量在固定的分組數(shù)量的模型基礎(chǔ)上進行精度測試,以確定合理的積分采樣次數(shù),隨后分別測試對結(jié)果影響?yīng)毩⒌姆纸M方法、高斯模糊參數(shù)、負梯度操作進行了驗證。最后對上述改進方法進行驗證,以證明相對于基準模型改進的有效性和速度優(yōu)勢。
3.2.1 分組數(shù)量測試
對HD-CAM算法中分組數(shù)量G取不同值進行測試,實驗中積分采樣數(shù)量設(shè)置為4,分組方法設(shè)置為定序分組并使用負梯度操作,測試結(jié)果見表1。由表1,隨著分組數(shù)量的增加計算量增大,置信度綜合評價指標(biāo)I-D不斷上升,定位精度指標(biāo)先上升后降低,在分組數(shù)量為32和64時取得了最大的mloc1。表明CNN 特征圖中信息存在一定冗余,過大的分組組數(shù)以更大的計算代價僅帶來較小的精度提升??紤]到G=64 時的I-D 指標(biāo)較G=32時提升明顯,且二者耗時相近,因此分組數(shù)量選擇64。
表1 分組參數(shù)G消融實驗結(jié)果Table 1 Ablation study results of group parameter G
3.2.2 積分采樣數(shù)量測試
積分采樣數(shù)量代表輸入圖像特征從0 增加到全部圖像特征的間隔數(shù)量。本小節(jié)驗證了不同積分采樣數(shù)量對HD-CAM 算法性能的影響。實驗中分組數(shù)設(shè)為64,分組方法為定序分組并使用負梯度操作,測試結(jié)果見表2。由表2,隨著積分采樣數(shù)量增加,定位準確度和置信度指標(biāo)先上升后下降,mloc1 定位精度在N=4 與N=10 分別達到最高,在N=2 時I-D 指標(biāo)達到最高,N=4 時為次優(yōu)。說明通過使用積分采樣的方式對輸入圖像特征逐步累加,本文方法能夠結(jié)合輸入特征在不同維度對解釋結(jié)果的貢獻,補充了全局決策信息,進而能提升算法效果。同時隨著采樣數(shù)量增加,耗時增加明顯。因此積分采樣數(shù)量選擇4。
表2 積分采樣數(shù)量N消融實驗結(jié)果Table 2 Ablation study results of integrate sample number N
3.2.3 分組方法測試
本小節(jié)測試了不同分組方法對算法性能的影響。實驗中分組數(shù)設(shè)為64,積分采樣數(shù)量設(shè)置為4,測試結(jié)果見表3。其中基于Kmeans 聚類、層次聚類、譜聚類方法將特征圖展開為一維特征向量進行聚類分組,基于結(jié)構(gòu)相似性(structural similarity,SSIM)分組方法通過計算特征激活圖之間的結(jié)構(gòu)相似性矩陣隨后再進行聚類分組。需要注意的是,受聚類算法初始值的影響,得到的類激活映射圖不具備一致性,表3中聚類方法結(jié)果進行5次測試并取均值。由表3,譜聚類在mloc1和mloc5定位精度指標(biāo)上達到最優(yōu),定序分組方法為次優(yōu)。在I-D 指標(biāo)上定序分組方法為最優(yōu),且耗時最低。定序分組方法不進行人為的聚類,不會產(chǎn)生結(jié)果不一致、聚類不理想的現(xiàn)象;該方法按照特征提取產(chǎn)生加權(quán)特征圖的固定順序進行等距分組,充分利用CNN 特征自身的信息結(jié)構(gòu),更加簡潔高效地得到一組信息冗余低、決策相關(guān)性強的特征掩碼。因此選擇定序分組方法。
表3 分組方法消融實驗結(jié)果Table 3 Ablation study results of grouping method
3.2.4 高斯模糊參數(shù)測試
對公式(11)中的高斯模糊參數(shù)進行測試,以確定合理的高斯核大小。結(jié)果見表4。由表4,隨著高斯核大小增大,I-D 指標(biāo)提升,當(dāng)高斯核大小為51 時,達到最高。高斯核大小對定位精度和耗時影響并不明顯。因此,綜合考慮選擇高斯核大小為51(核標(biāo)準差為50)。
表4 分組方法消融實驗結(jié)果Table 4 Ablation study results of Gaussian blur parameters
3.2.5 負梯度剔除測試
在公式(5)中,HD-CAM 算法利用ReLU 對負梯度進行過濾,本小節(jié)探討負梯度對模型結(jié)果影響。實驗結(jié)果見表5。w/oReLU表示HD-CAM算法在式(5)計算中不使用ReLU??梢钥吹酵ㄟ^剔除負梯度,能夠在定位準確度和置信度指標(biāo)上均帶來2%的提升。
表5 負梯度消融實驗結(jié)果Table 5 Ablation study results of negative gradient
3.2.6 改進方法有效性驗證
為驗證改進方法對算法解釋能力的影響,以Group-CAM算法為基礎(chǔ),逐步引入提出的改進方法驗證其有效性。算法B 表示基礎(chǔ)模型GroupCAM 上增加局部層次信息。算法C 表示基礎(chǔ)模型GroupCAM 上增加全局層次信息。測試結(jié)果見表6。通過B與GroupCAM算法對比,可以看到通過2.1節(jié)的改進方法,算法在mloc1和mloc5定位準確度指標(biāo)上分別有0.76和1.01個百分點的提高。通過2.3節(jié)的改進方法,算法C對I-D置信度指標(biāo)有0.121個百分點的提高。同時,通過在代碼中并行處理分組掩碼,提高了算法速度。綜合來看,本文算法相比基準算法在mloc1、mloc5、I-D指標(biāo)上分別提高了1.01、1.28和0.023個百分點,表明了本文提出改進方法的有效性。
表6 改進方法對比結(jié)果Table 6 Comparative results of improved methods
將本文方法HD-CAM與多種可解釋方法進行定性和定量比較。對比算法包括基于梯度的導(dǎo)向反向傳播(Guided-BP)[15]、基于擾動的RISE[22]、基于類激活映射的GradCAM[3]、GradCAM++[5]、ScoreCAM[7]、ISCAM[8]、RelevanceCAM[9]、GroupCAM[10]及SHAPCAM[11]。RISE掩碼生成數(shù)量為4 000,GroupCAM 組數(shù)為64。ISCAM積分采樣數(shù)量為10。
3.3.1 定性分析
針對四個典型例圖,不同視覺解釋方法生成對應(yīng)的視覺解釋圖如圖4。
圖4 不同方法視覺解釋圖對比Fig.4 Comparison of visual explanation maps of different methods
從視覺效果來看,Guided-BP[15]方法反映了CNN 模型卷積層學(xué)習(xí)到的所有紋理、邊緣等圖像特征,但該類方法被指出[23]在計算過程中修改了梯度信息,無法真正反映模型決策。基于擾動的RISE[22]方法能夠反映圖像中影響CNN決策的關(guān)鍵部分,視覺連續(xù)性較好,但范圍容易發(fā)散,難以集中于目標(biāo)區(qū)域。與之相反,GradCAM[3]方法難以激活目標(biāo)的所有相關(guān)區(qū)域,視覺連續(xù)性較差;與之相比,GradCAM++[5]、ScoreCAM[7]、GroupCAM[10]在目標(biāo)定位區(qū)域完整性和視覺連續(xù)性上都有一定提高,但是對于如圖4例4復(fù)雜背景目標(biāo)仍然可能存在大量背景噪聲,難以體現(xiàn)CNN 決策特征。SHAPCAM[11]具有更小的背景噪聲,獲取的激活區(qū)域相對完整,但仍存在激活了目標(biāo)范圍外的部分或未完全激活目標(biāo)整體的現(xiàn)象。與對比算法相比,HD-CAM方法結(jié)合了非梯度的全局貢獻思想,結(jié)果具有更少的隨機噪聲,能夠產(chǎn)生更加平滑的類激活映射圖,對目標(biāo)區(qū)域定位更為集中準確而完整,具有更好的視覺連續(xù)性,反映了模型做出分類決策的主要依據(jù)。
從多目標(biāo)和小目標(biāo)可視化效果看,圖4例2、例3 中RISE、GradCAM傾向于僅僅捕獲圖像中的單個目標(biāo),且難以激活小目標(biāo)區(qū)域;GradCAM++能夠定位多個目標(biāo),ScoreCAM、GroupCAM 方法具有更加完整集中的目標(biāo)激活,且能夠定位發(fā)現(xiàn)小目標(biāo),但背景復(fù)雜時偽影、噪聲干擾較大。SHAPCAM 對小目標(biāo)可視化稍差。本文提出的HD-CAM 能在復(fù)雜背景下發(fā)現(xiàn)定位多個同類目標(biāo),背景干擾??;同時在小目標(biāo)的激活上更加有效,定位區(qū)域更為準確集中完整,具有更好的視覺效果。
從類別區(qū)分能力看,圖5表明HD-CAM方法能對不同類別目標(biāo)進行良好區(qū)分。對于圖中蝴蝶和花兩類目標(biāo),VGG19 模型將輸入圖像分類為蝴蝶的置信度分數(shù)為94.8%,分類為花的置信度分數(shù)為1%。雖然后者置信度分數(shù)大大低于前者,但通過不同類別置信度反向傳播得到不同的激活特征圖梯度權(quán)重,本文方法仍可以分別給出對應(yīng)不同目標(biāo)區(qū)域的類激活映射圖。
圖5 不同類別可區(qū)分性Fig.5 Discriminability of different categories
3.3.2 定量分析
3.3.2.1 圖像遮擋實驗
圖6分別對應(yīng)了圖4中圖像通過圖像遮擋實驗得到的插入和刪除度量曲線及AUC值??梢钥吹紿D-CAM在插入度量曲線上升更快,AUC更大,刪除度量曲線下降更快,AUC更小,圖4例1、例2、例4的I-D指標(biāo)分別達到了最高的90.11%、36.28%、63.41%,圖4 例3 的I-D指標(biāo)達到次高的79.17%,表明了HD-CAM 具有更好的解釋性,并與視覺定性評價結(jié)果保持了較好的一致性。
圖6 插入和刪除度量曲線Fig.6 Insertion and deletion curve
表7 給出了HD-CAM 與對比方法在驗證集上圖像遮擋實驗指標(biāo)的平均值??梢钥吹?,HD-CAM在Del指標(biāo)達到最佳,在Ins 指標(biāo)上低于ISCAM 僅0.07 個百分點,在I-D 綜合指標(biāo)上低于ISCAM 也是0.07 個百分點,超出GradCAM++4.17 個百分點,比最新的SHAPCAM方法高1.5 個百分點。圖像遮擋實驗表明了HD-CAM方法提供的視覺解釋圖可以對應(yīng)更好的分類置信度,解釋能力更強。
表7 不同方法對比結(jié)果Table 7 Comparative results of different methods
3.3.2.2 弱監(jiān)督目標(biāo)定位精度實驗
對HD-CAM 方法與6 種視覺解釋方法進行弱監(jiān)督目標(biāo)定位精度實驗測試。圖7 為不同方法目標(biāo)定位視覺效果,其中紅色框為目標(biāo)真值框,綠色框為算法得到的邊界框。從視覺直觀角度看,本文算法得到的目標(biāo)定位框更加貼合目標(biāo)真值框,定位更為準確。
圖7 目標(biāo)定位效果示意圖Fig.7 Target location effect
為了更加全面客觀地評價定位精度,在驗證集上測試不同閾值下的定位精度,得到loc1和loc5目標(biāo)定位精度曲線,見圖8。
圖8 不同閾值下的定位精度Fig.8 Positioning precision under different thresh holds
對各個閾值下的定位精度取平均值得到mloc1、mloc5 定位精度,并統(tǒng)計了算法運行速度,結(jié)果見表7??梢钥吹?,在弱監(jiān)督目標(biāo)定位實驗中,相較于對比算法,本文算法在各個閾值下能達到更高的定位精度,且mloc1、mloc5精度達到最高,分別超出第二名GradCAM++0.12和0.1個百分點。表明了算法具有更優(yōu)的定位能力。同時本文算法兼顧了算法速度和性能,速度最快的RelevanceCAM單幀圖像耗時為35 ms,本文方法達到同量級的68 ms,是ISCAM的76倍,是SHAPCAM算法的20倍。說明本文算法在綜合性能上具有更優(yōu)表現(xiàn)。
CNN 模型的可解釋性是理解和信任其決策的前提。針對現(xiàn)有CAM視覺解釋方法未能有效利用多層次決策信息導(dǎo)致視覺解釋效果差的問題,本文提出一種結(jié)合多層次決策信息的CAM視覺解釋方法。通過像素級梯度加權(quán)挖掘特征圖中高細粒度局部層次的決策信息,生成一組與決策結(jié)果相關(guān)性強的加權(quán)特征圖;采用定序分組方式合并加權(quán)特征圖,獲取一組冗余度低、決策相關(guān)性強的掩碼;基于全局決策貢獻并行計算分組掩碼重要度分數(shù),對掩碼采取模糊邊界和積分方法進行處理,提高了不同輸入對全局決策貢獻的敏感性,提高了置信度分數(shù)的準確性和算法速度。置信度實驗和定位測試實驗結(jié)果表明通過結(jié)合多層次決策信息,該文方法視覺解釋效果在綜合性能上具有更優(yōu)表現(xiàn)且更具速度優(yōu)勢。在未來工作中,可以將本文方法應(yīng)用于弱監(jiān)督目標(biāo)定位、語義分割等任務(wù)及幫助開發(fā)者理解模型決策從而對CNN模型進行針對性改進。