摘要: 針對基于類激活映射(CAM)的可解釋性方法因受到與目標類別無關特征的干擾, 導致可視化結果中含有較多噪聲及對目標物體定位精度較低的問題
, 提出一種基于消融分析的卷積神經網絡(CNN)可視化方法. 先通過消融實驗考察深層網絡特征與目標類別的相關性并計算特征融合權重; 再通過ReLU或Softmax函數對融合權重進行
修正, 以減少無關特征的干擾, 得到定位精度更高的類激活圖, 從而對網絡決策做出有效說明. 在驗證集ILSVRC 2012上使用多種評估指標進行驗證, 實驗結果表明, 該方法在各項指
標上均取得了更好的模型解釋能力.
關鍵詞: 可解釋性; 卷積神經網絡; 消融分析; 深度學習
中圖分類號: TP391" 文獻標志碼: A" 文章編號: 1671-5489(2024)03-0606-09
Interpretability Analysis of Convolutional Neural NetworksBased on Ablation Analysis
LI Shaoxuan, YANG Youlong
(School of Mathematics and Statistics, Xidian University, Xi’an 710126, China)
Abstract: Aiming at the problem that the interpretable method based on class activation mapping (CAM) was disturbed by features unrelated to the t
arget class, which led to more noise in the visualization results and lower localization accuracy of target objects, we proposed a convolutional neural network
(CNN) visualization method based on ablation analysis. Firstly, the correlation between deep network features and target classes was investigated and featu
re fusion weights were calculated through ablation experiments. Secondly," the feature fusion weights were corrected by ReLU or Softmax functions to reduce the interference of irrele
vant features and obtain" class activation map with higher localization accuracy, so as to make an effective description of network decisions. A variety of e
valuation metrics were used for verification on the ILSVRC 2012 validation set, the experimental results show that the method achieves better model interpretati
on capability in all indicators.
Keywords: interpretability; convolutional neural network; ablation analysis; deep learning
收稿日期: 2023-02-14.
第一作者簡介: 李紹軒(1997—), 男, 漢族, 碩士研究生, 從事計算機視覺的研究, E-mail: 1195935783@qq.com.
通信作者簡介: 楊有龍(1967—), 男, 漢族, 博士, 教授, 博士生導師, 從事數據分析和概率圖模型的研究, E-mail: ylyang@mail.xidian.edu.cn.
基金項目: 國家自然科學基金(批準號: 61573266)和陜西省自然科學基礎研究計劃項目(批準號: 2021JM-133).
0" 引" 言
深度學習的可解釋性任務旨在開發(fā)新的技術和方法解釋神經網絡的決策過程, 揭示網絡內部的判別規(guī)則和學習策略. 卷積神經網絡(convolutional neural networks, CNN)
在圖像識別[1-2]、 目標檢測[3-5]和語義分割[6]等任務中性能優(yōu)異, 而針對CNN的理解主要通過各種可視化方法
得到. 文獻[7-8]利用目標節(jié)點相對于輸入圖像的梯度信息計算每個像素對網絡決策的貢獻度; RISE方法[9]和LIME方法[10]通過生成大量的隨機掩碼對原圖像
進行擾動, 然后根據擾動樣本和網絡決策結果判斷圖像中不同區(qū)域對目標類別的重要性, 但采樣的特征空間非常大, 增加了算法的運行時間和計算機的內存損耗. Zhou等[11]
提出了類激活映射(class avtivation mapping, CAM)方法對網絡的決策做出說明, 將CNN的全連接層替換為全局平均池化層(global average fooling, GAP)[12], 利用特定
的網絡結構生成類激活圖. 如圖1所示, 通過對最后一個卷積層的特征圖進行加權融合計算類激活圖, 但需要修改網絡結構并重新訓練模型, 限制了CAM技術的應用. 文獻[13-15
]通過特征圖的梯度信息計算特征融合權重, 增強了CAM技術的泛化能力; Wang等[16]提出了Score-CAM可視化技術, 通過計算特征圖對網絡輸出的貢獻度作
為類激活的權重, 該方法對多目標可視化、 分類可視化的類激活圖質量較已有方法均有提高; 文獻[17]提出了Ablation-CAM算法, 通過特征圖消融前后網絡對目標類別的預測
分數計算特征圖的融合權重.
為解決類激活圖中較多噪聲和對目標物體定位不準確的問題, 本文基于消融分析[18]和Ablation-CAM算法設計了Ablation-CAM++和Softmax Ablation-CAM(SA-CAM)兩種
改進算法. 首先通過消融實驗考察深層網絡特征對網絡決策的影響, 進而衡量特征圖與目標類別的相關性, 并使用網絡的分類分數計算特征融合權重; 然后使用ReLU或Softmax函數對
特征融合權重進行修正, 避免與目標類別無關的特征信息對類激活圖造成干擾, 減少類激活圖中的噪聲并增強對目標物體的定位能力. 實驗結果表明, 本文算法能對網絡的決
策做出有效說明, 有較強的模型解釋能力.
1" 算法設計
針對特定類別c生成的類激活圖應只包含對c有積極影響的特征信息, 這樣會使類激活圖更專注于目標物體所在的圖像區(qū)域. 基于CAM的算法通常選擇CNN最后一個卷積層的所有
特征圖用于類激活圖的計算, 忽略了不同特征信息與目標類別之間的相關性, 不僅導致算法的時間成本較高, 且可視化結果中含有較多噪聲并對目標物體的定位不夠精確, 無法對網絡
決策做出有效說明.
CNN通過連續(xù)的卷積和池化操作, 得到擁有豐富語義信息的深層網絡特征圖, 然后全連接層根據眾多的語義特征完成對輸入圖像的預測. 因此, 考察深層語義特征與網絡預測結果的關
系是一種加深模型理解的有效方法. 圖2為將不同類別圖像輸入CNN后網絡深層特征圖的可視化結果, 其中第1行為原圖像, 從左至右類別分別為柯基犬、 恩特雷布赫山
地犬、 史賓格獵犬、 熱氣球和鵜鶘; 第2~4行分別是不同卷積核提取特征的可視化結果. 由圖2可見: 上述3種犬類之間存在很多相似的視覺特征, 如毛發(fā)顏色、 形體等, 提取相
關特征的卷積核對3種類別產生了相似的響應結果, 如圖2中第1~3列所示; 而這些卷積核從“熱氣球”和“鵜鶘”中提取到不規(guī)則特征或未產生響應, 如圖2中第4,5列可視化結果所
示. 表明網絡深層提取的特征并不為某一類別所特有, 而是具有歸納性的高級語義信息, 是不同類別公共特征的抽象化.
為改善類激活圖質量, 增強CAM算法的模型解釋能力, 本文基于消融分析和Ablation-CAM設計了Ablation-CAM++和SA-CAM算法. 首先通過消融實驗考察深層網絡特征與目標類別的相
關性, 并計算特征融合權重, 然后采用ReLU或Softmax函數過濾無關的干擾信息, 保證類激活圖中只包含與目標類別相關的正向信息. 圖3為本文算法的流程, 具體操作過程如下.
首先確定目標類別c和目標卷積層l, 將原圖像輸入神經網絡后獲取網絡對類別c的初始預測分數yc, 并提取卷積層l的輸出特征圖A={A1,A2,…,A
n}, 如圖3中流程一所示; 然后沿通道維度, 依次將每張?zhí)卣鲌D中所有神經元的值修改為0, 將消融處理后的特征圖重新輸入目標層l后的網絡模塊, 獲取網絡對
目標類別的消融分數yck, 并計算相應特征圖的特征融合權重, 用公式表示為
wck=yc-yckyc,(1)
其中k表示當前消融特征圖的索引, 該過程如圖3中流程二所示.
通過上述消融實驗得到每張?zhí)卣鲌D的權重, 權重為正數表示特征的消融使得CNN對類別c的預測分數下降, 表明該特征圖中包含與類別c相關的正向信息, 卷積核做出的響應
會提高類別c的置信度; 權重為負數表明類別c中不包含相應的特征, 卷積核做出的響應會對網絡決策做出干擾, 導致類別c的置信度下降, 因此應將該特征排除在類激
活圖的計算中. 為消除無關特征的消極影響, 本文采用ReLU或Softmax函數對特征融合權重做進一步處理.
ReLU函數通常用作神經網絡的激活函數, 表達式為
ReLU(x)=0,xlt;0,x,x≥0.(2)
借助ReLU函數對負值權重進行修正, 且保持正值權重不變, 只采用與目標類別相關的特征信息進行加權融合, 可得到Ablation-CAM++算法:
LcAblation-CAM++=∑kReLU(wck)Ak.(3)
CNN輸出層的分類分數經過Softmax函數可轉化為不同類別的置信度, 計算過程為
Softmax(xi)=exi∑nj=1exj," i=1,2,…,n.(4)
本文使用Softmax函數對式(1)計算的權重進行處理, 作為最終的特征融合權重, 表示不同特征與目標類別相關的概率, 不僅可以將融合權重全部轉化為非負值, 還可以放大
主要特征的比重, 使其在最后的結果中占主要作用, 增強對同類別多目標物體的識別和定位能力. 可得到Softmax Ablation-CAM(SA-CAM)算法:
LcSA-CAM=∑kSoftmax(wck)Ak.(5)
2" 實" 驗
本文實驗基于PyTorch深度學習框架, 操作系統為Windows10專業(yè)工作站版, 硬件平臺為Inte
l(R) Xeon(R) Silver 4114 CPU@2.20 GHz, 2.19 GHz雙處理器, 運行內存64 GB, 配置GeForce RTX 2080 Ti顯卡.
2.1" 數據集和神經網絡
本文使用當前圖像分類、 目標檢測等任務中最常用的驗證集ILSVRC 2012[19]作為實驗數據集, 該數據集共包含5萬張高分辨率的自然圖像, 1 000個類別, 平均每個類別包含50個實例.
實驗中使用預訓練的VGG-16[20]和ResNet-34[21]神經網絡對本文方法的有效性進行驗證, 無需對網絡進行重新訓練, 統一提取網絡最后一個卷積層的輸出特征圖
用于生成類激活圖. 原圖像在輸入CNN前, 將尺寸統一調整為224×224, 并將像素中的值轉換至[0,1]內, 然后減去均值向量(0.485,0.456,0.406)和除以標準差向量(0.229,0.224,0.225).
2.2" 評估指標
解釋圖是一張與原圖像有相同分辨率的圖片, 但只包含原圖像的一部分區(qū)域. 通過保留原圖像中對CNN決策貢獻度較高的像素點得到相應的解釋圖. 圖4為基于Ablation-CAM
算法生成的解釋圖, 保留40%像素.
2.2.1" Average Drop和Percent Increase評估指標
Average Drop是指將解釋圖和原圖像分別輸入CNN時, 對目標類別預測得分的差距, 計算公式為
Average Drop=1N∑Ni=1max{0,Yci-Oci}Yci,(6)
其中Yci和Oci分別為CNN將原圖像和解釋圖判定為類別c的分數, N為數據量, 使用max函數排除解釋圖得分高于原圖像的情況. Average Drop數
值越小說明算法效果越好.
Percent Increase是指解釋圖得分高于原圖像的樣本占整個數據集的比重, 計算公式為
Percent Increase=1N∑Ni=1Func(Ycilt;Oci),(7)
其中Func為Boolean函數, 當括號內表達式為真時返回1, 否則返回0. Percent Increase越大算法效果越好.
2.2.2" Deletion和Insertion評估指標
Deletion(Insertion)[9]是指Deletion(Insertion)曲線下與坐標軸圍成的面積(area under curve, AUC), 圖5為根據不同算法繪制的Deletion和Insertion曲線. Dele
tion(Insertion)數值越大(?。┱f明算法效果越好.
2.3" 結果與分析
為驗證本文算法在驗證集ILSVRC 2012上的性能, 將Ablation-CAM++,SA-CAM與Grad-CAM[13], Ablation-CAM[17]和Score-CAM[16]算法進行對比分析.
首先從視覺上直觀地進行對比分析, 不同算法生成的類激活圖可視化結果如圖6所示, 其中第1列為原圖像, 從上到下類別分別為豪豬、 鶴、 白鸛、 澳洲青蘋果和加拿大盤羊
. 由圖6可見: Grad-CAM受到梯度飽和問題影響以及Ablation-CAM受到無關特征的干擾, 背景中含有較多噪聲, 不能準確地定位目標物體, 特別是對同類別的多目標物體檢測不精
確, 如圖6中第2,3列的可視化結果所示; Score-CAM及本文算法均能對目標物體實現準確識別和定位, 避免噪聲的干擾, 且本文算法略優(yōu)于Score-CAM算法, 如圖6中第4~6列可視化結果
所示. 實驗結果表明, 本文提出的Ablation-CAM++和SA-CAM算法在識別和定位目標物體性能上優(yōu)于其他算法.
本文算法還有良好的類辨別能力, 即能在一張圖像中對不同類別的物體進行識別和定位. 如圖7所示, VGG-16網絡以66.21%的概率將原圖像分類為挪威獵犬, 0.08
%的概率分類為蝴蝶犬. 雖然網絡對兩種類別的預測概率相差極大, 但Ablation-CAM++和SA-CAM算法仍可以對相關區(qū)域進行突出顯示, 準確定位目標物體在圖片中的位置.
下面進行定量對比實驗分析. 表1和表2分別列出了不同算法在VGG-16和ResNet-34神經網絡上的定量對比結果. 由表1可見: 本文算法均取得了各項評估指標的最優(yōu)結果; 相比于
其他算法中的最優(yōu)結果, 本文算法在Average Drop,Average Increase,Deletion和Insertion指標上的最優(yōu)結果分別提升了1.31,3.20,0.24,1.87個百分點.
由表2可見: 在Average Drop,Deletion和Insertion指標上本文算法均取得了最優(yōu)結果, 與其他算法中的最優(yōu)結果相比, 分別提高了1.37,0.44,0.94個百分點; 在Average Increase指標上也取得了較好的結果.
實驗結果表明, 本文算法具有優(yōu)于其他算法的模型解釋能力.
2.4" 模型診斷
雖然CNN在大規(guī)模圖像分類任務中表現優(yōu)異, 但在實際應用中仍有很多錯誤決策, 影響用戶對網絡預測結果的可信度. 本文算法除能對網絡的正確決策進行解釋外,
還可以分析網絡錯誤決策的原因, 以便對網絡進行診斷和改進, 增加用戶對模型的信任度. 下面以SA-CAM算法為例(使用Ablation-CAM++算法可得到相同結論)對VGG-16
網絡的錯誤決策進行分析和說明, 考察網絡失敗的原因, 以證明本文算法的實用性.
實驗結果表明, 神經網絡誤分類的原因主要有以下3點:
1) 不同類別物體會包含相同或者相似特征. 如圖8所示, VGG-16將真實類別為“喜樂蒂牧羊犬”的圖像誤分類為“邊境牧羊犬”; 對比其他實例(圖8中第2,3張圖像)可見, 兩種
犬類之間存在許多相似特征, 如毛發(fā)顏色、 體型等, 網絡根據這些相似特征進行決策時, 易輸出錯誤的預測結果. 利用SA-CAM算法將兩種類別進行可視化(圖8中第4,5張圖像), 發(fā)
現網絡的關注區(qū)域基本重合.
2) 場景對網絡決策的誤導. 某些類別總與特定的場景相關, 網絡的決策很大程度上會受場景影響, 導致輸出錯誤結果. 如圖9所示, VGG-16將真實類別為“轉軸”的圖
像誤分類為“船槳”, 而這兩種類別物體大多出現在相似的場景中(圖9中第1~3張圖像). 利
用SA-CAM算法對原圖像中的“轉軸”可視化可見, 除“轉軸”所在區(qū)域外, 網絡對背景也有較高的關注度.
3) 同一張圖像中包含不同類別物體. 不同類別對象會出現在同一張圖像中, 而人工標注的圖像真實類別只有一個. 在這種情況下, 網絡從圖像中提取到屬于不同類別物體的特
征, 對多種類別產生響應, 輸出結果為響應最大的類別, 這通常會與圖像的真實類別存在差異, 導致網絡做出錯誤決策.
2.5" 算法效率對比
下面對多種算法的運行速度進行對比分析, 進行如下實驗: 首先從驗證集ILSVRC 2012中隨機挑選3個子集, 每個子集包含500張圖片, 且任意兩個子集之間沒有公共樣本; 然后統
計5種算法在每個子集上的平均運行時間, 結果列于表3. 由表3可見: Grad-CAM算法只需進行一次前向傳播和反向傳播便可完成整個算法流程, 所需時間最短; Scor
e-CAM算法需要對所有特征圖進行大量復雜操作, 算法復雜度較高, 運行時間最長; 本文算法和Ablation-CAM算法的平均運行時間均小于0.1 s, 雖然運行效率略低于Grad-CAM算法, 但
仍可以滿足實時性要求, 且本文算法比Grad-CAM算法具有更好的可視化效果和模型解釋能力.
綜上所述, 針對基于類激活映射的可解釋性方法生成的類激活圖中含有較多噪聲及對目標物體定位能力較差的問題, 本文根據卷積神經網絡特征提取的特點, 通過消融實驗考察深層視
覺特征與目標類別的相關性, 并使用ReLU或Softmax函數對特征融合權重做進一步處理, 以減少無關特征的干擾, 增強類激活圖的定位能力. 實驗結果表明, 本文Ablation-CAM++
和SA-CAM算法可有效減少類激活圖中的噪聲, 有較強的目標定位能力和模型解釋能力.
參考文獻
[1]" KRIZHEVSKY A, SUTSKEVER I, HINTON G E. Imagene
t Classification with Deep Convolutional Neural Networks [J]. Communications of the ACM, 2017, 60(6): 84-90.
[2]" SZEGEDY C, LIU W, JIA Y Q, et al. Going Deeper with Convol
utions [C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2015: 1-9.
[3]" XUE B, TONG N N. Real-World ISAR Object Recognition
Using Deep Multimodal Relation Learning [J]. IEEE Transactions on Cybernetics, 2020, 50(10): 4256-4267.
[4]" XUE B, HE Y, JING F, et al. Robot Target Recognition
Using Deep Federated Learning [J]. International Journal of Intelligent Systems, 2021, 36(12): 7754-7769.
[5]" XUE B, TONG N N. DIOD: Fast and Efficient Weakly
Semi-supervised Deep Complex ISAR Object Detection [J]. IEEE Transactions on Cybernetics, 2019, 49(11): 3991-4003.
[6]" LONG J, SHELHAMER E, DARRELL T. Fully Convolutional
Networks for Semantic Segmentation [C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2015: 3431-3440.
[7]" SIMONYAN K, VEDALDI A, ZISSERMAN A. Deep Inside Conv
olutional Networks: Visualising Image Classification Models and Saliency Maps [EB/OL]. (2014-04-19)[2023-04-01]. https://arxiv.org/abs/1312.6034.
[8]" SUNDARARAJAN M, TALY A, YAN Q. Axiomatic Attribution
for Deep Networks [C]//International Conference on Machine Learning. New York: PMLR, 2017: 3319-3328.
[9]" PETSIUK V, DAS A, SAENKO K. Rise: Randomized Input Sampl
ing for Explanation of Black-Box Models [EB/OL]. (2018-09-25)[2023-04-04]. https://arxiv.org/abs/1806.07421.
[10]" RIBEIRO M T, SINGH S, GUESTRIN C. “Why Should I Trust You?” Explaining the Predictions of Any Classifier [C]//Proceedings of the 22nd
ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. New York: ACM, 2016: 1135-1144.
[11]" ZHOU B L, KHOSLA A, LAPEDRIZA A, et al. Learning Deep Fea
tures for Discriminative Localization [C]//Proceedings of the IEEE Conference
on Computer Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2016: 2921-2929.
[12]" LIN M, CHEN Q, YAN S C. Network in Network [EB/OL]. (2014-03-04)[2023-04-10]. http://arxiv.org/abs/1312.4400.
[13]" SELVARAJU R R, COGSWELL M, DAS A, et al. Grad-CAM: Vis
ual Explanations from Deep Networks via Gradient-Based Localization [C]//Proc
eedings of the IEEE International Conference on Computer Vision. Piscataway, NJ: IEEE, 2017: 618-626.
[14]" CHATTOPADHAY A, SARKAR A, HOWLADER P, et al. Grad-CAM+
+: Generalized Gradient-Based Visual Explanations for Deep Convolutional Networ
ks [C]//2018 IEEE Winter Conference on Applications of Computer Vision (WACV). Piscataway, NJ: IEEE, 2018: 839-847.
[15]" JIANG P T, ZHANG C B, HOU Q, et al. Layercam: Exploring
Hierarchical Class Activation Maps for Localization [J]. IEEE Transactions on Image Processing, 2021, 30: 5875-5888.
[16]" WANG H F, WANG Z F, DU M N, et al. Score-CAM: Score-Weighte
d Visual Explanations for Convolutional Neural Networks [C]//Proceedings of th
e IEEE/CVF Conference on Computer Vision and Pattern Recognition Workshops. Piscataway, NJ: IEEE, 2020: 24-25.
[17]" RAMASWAMY H G. Ablation-CAM: Visual Explanations f
or Deep Convolutional Network via Gradient-Free Localization [C]//Proceeding of
the IEEE/CVF Winter Conference on Applications of Computer Vision. Piscataway, NJ: IEEE, 2020: 983-991.
[18]" ZHOU B L, SUN Y Y, BAU D, et al. Revisiting the Impor
tance of Individual Units in CNNs via Ablation [EB/OL]. (2018-06-07)[2023-04-13]. http://arxiv.org/abs/1806.02891.
[19]" RUSSAKOVSKY O, DENG J, SU H, et al. ImageNet Large
Scale Visual Recognition Challenge [J]. International Journal of Computer Vision, 2015, 115(3): 211-252.
[20]" SIMONYAN K, ZISSERMAN A. Very Deep Convolutional Ne
tworks for Large-Scale Image Recognition [EB/OL]. (2015-04-10)[2023-04-17]. https://arxiv.org/abs/1409.1556.
[21]" HE K M, ZHANG X Y, REN S Q, et al. Deep Residual Le
arning for Image Recognition [C]//Proceedings of the IEEE Conference on Computer
Vision and Pattern Recognition. Piscataway, NJ: IEEE, 2016: 770-778.
(責任編輯: 韓" 嘯)