999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

卷積神經網絡表征可視化研究綜述

2022-08-30 13:50:42司念文張文林羅向陽常禾雨
自動化學報 2022年8期
關鍵詞:可視化特征方法

司念文 張文林 屈 丹 羅向陽 常禾雨 牛 銅

近年來,以深度神經網絡(Deep neural networks,DNN)為代表的機器學習方法逐漸興起[1].由于訓練數據的增加[2-3]及計算能力的大幅提升,DNN 的網絡結構及與之相適應的優化算法[4-6]變得更加復雜,DNN 在各項任務上的性能表現也越來越好,產生了多種適用于不同類型數據處理任務的經典深度網絡結構,如卷積神經網絡(Convolutional neural network,CNN)和循環神經網絡(Recurrent neural network,RNN).對于圖像數據處理與識別領域,CNN 是一種十分常用的網絡結構,在圖像分類、目標檢測、語義分割等任務上取得了非常好的效果,已經成為該領域應用最廣泛的基礎模型[7].

如圖1 所示,傳統機器學習算法采用人工設計的特征集,按照專家經驗和領域知識將其組織到機器學習算法中.由于設計人員本身了解這些被定義特征的具體含義,因此,傳統機器學習方法一定程度上是可解釋的,人們大致明白算法對各種特征的依賴以及算法的決策依據.例如,線性模型可使用特征對應的權重代表特征重要程度.相比于傳統機器學習算法,以CNN 為代表的深度學習算法屬于特征學習或表示學習,可對輸入數據進行自動特征提取及分布式表示,解決了人工特征設計的難題.這一優勢使其能夠學習到更加豐富完備的且含有大量深層語義信息的特征及特征組合,因此在性能表現上超過多數傳統機器學習算法.

圖1 傳統機器學習與深度學習的學習過程對比[8]Fig.1 Comparison of the learning process between traditional machine learning and deep learning[8]

然而,CNN 這一優勢的背后也存在著一定局限性.一方面,人們至今無法較好地理解CNN 內部知識表示及其準確的語義含義.即使是模型設計者也難以回答CNN 到底學習到了哪些特征、特征的具體組織形式以及不同特征的重要性度量等問題,導致CNN 模型的診斷與優化成為經驗性、甚至盲目性的反復試探,這不僅影響了模型性能,還可能遺留潛在的漏洞;另一方面,基于CNN 模型的現實應用在日常中已經大量部署,如人臉識別、行人檢測和場景分割等,但對于一些風險承受能力較低的特殊行業,如醫療、金融、交通、軍事等領域,可解釋性和透明性問題成為其拓展和深入的重大阻礙.這些領域對CNN 等深度學習模型有著強烈的現實需求,但受限于模型安全性與可解釋性問題,目前仍無法大規模使用.模型在實際中可能犯一些常識性錯誤,且無法提供錯誤原因,導致人們難以信任其決策.

因此,對CNN 的理解和解釋逐漸受到人們關注,研究者們嘗試從不同角度出發,解釋CNN 的特征編碼和決策機制.表征可視化作為其中一種解釋方法,采用基于特征重要性的解釋思路,尋找輸入變量、特征編碼及輸出結果之間的相關性,并以視覺展示的方式直觀呈現,是一種較為直接的理解CNN 的途徑.本文對該領域的現有研究進行了系統性整理和回顧,對其中涉及的相關概念及內容、典型方法、效果評估、應用等方面作了歸納總結,著重介紹了可視化方法的分類及算法的具體過程.最后,分析了該領域仍存在的難點并展望了未來研究趨勢.

本文后續內容安排如下:第1 節簡述了CNN表征可視化的相關概念和研究內容;第2 節梳理了現有的表征可視化方法,對其進行了分類整理;第3 節介紹了部分可視化效果評估方法;第4 節簡要闡述了可視化方法在一些領域的應用;第5 節探討了該領域仍存在的難點及未來的研究趨勢;第6 節總結全文.

1 相關概念與研究內容

1.1 相關概念

1.1.1 CNN

目前,CNN 已成為基于深度學習的圖像識別領域應用最廣泛、效果最佳的網絡結構.最早的CNN 由LeCun 等[9]于1998 年提出,用于手寫體數字識別.CNN 的基本結構中含有輸入層、卷積層、全連接層及輸出層.其中輸入層、全連接層、輸出層與其他網絡大致相同,僅卷積層是CNN 特有的結構.經典CNN 卷積層中含有卷積、激活和池化3 種操作:1)卷積操作使用多個卷積核(濾波器)在輸入張量上平移作內積運算,得到對應的特征圖.同層的不同卷積核用來提取不同模式的特征,不同層的卷積核則用來提取不同層級的特征.2)激活操作使用非線性激活函數處理卷積結果,用于提升網絡的非線性特性,增強非線性擬合能力,常用的激活函數如tanh、sigmoid、rectified linear unit (ReLU)[6]和改進版[10-11]等.3)池化操作一般使用最大值池化和平均值池化,按照池化窗口處理整個窗口內的值,用于壓縮參數和降低過擬合.

稀疏連接和權重共享是CNN 相對于前饋神經網絡的主要特點.基于這些經典的CNN 結構及其特性,研究人員通過不斷改進和優化[12],逐漸設計出結構更復雜且識別性能更優異的CNN,以在Imagenet Large Scale Visual Recognition Competition (ILSVRC)數據集[2]圖像分類任務上的優勝CNN模型為例:

1)2012 年,Krizhevsky 等[1]提出了AlexNet,在圖像分類任務上以巨大優勢取得冠軍,成功吸引了學術界的關注,成為新階段CNN 興起的標志.

2)2013 年,Zeiler 等[13]提出了ZFNet,利用反卷積可視化技術診斷AlexNet 的內部表征,然后對其針對性地做了改進,使用較小的卷積核和步長,從而提升了性能.

3)2014 年,谷歌公司Szegedy 等[14]提出了GoogLeNet,核心是其中的Inception 模塊,使用了不同尺寸的卷積核進行多尺度的特征提取和融合,從而更好地表征圖像.同年,牛津大學的Simonyan等[15]提出了視覺幾何組網絡(Visual geometry group network,VGGNet),僅使用2×2 和3×3兩種典型的卷積核,通過簡單地增加層的深度實現了性能提升.

4)2015 年,微軟公司He 等[16]提出了殘差網絡(Residual networks,ResNet),使用殘差連接實現跨層的信息傳播,緩解了之前由于深度增加引起的梯度消失問題,并以3.57%的錯誤率首次超越人類水平.

5)2016 年,Huang 等[17]提出了DenseNet,相比于ResNet,使用了密集連接操作,強化特征的傳播和復用.

6)2017 年,Hu 等[18]提出了壓縮激勵網絡(Squeeze-and-excitation networks,SENet),通過特征圖各通道間的權值自適應再調整,實現各個通道之間的特征重標定,提升了網絡的特征提取能力.

CNN 在圖像數據處理上有天然的優勢,因而在圖像分類、目標檢測、語義分割和場景識別等領域應用廣泛,在其他模態的數據如視頻、語音和文本等領域也有較多應用.圖像分類是CNN 最典型的應用領域,許多圖像分類系統使用預訓練的CNN進行部署.預訓練的CNN 是指已經在某個數據集上完成訓練的CNN 模型.一般情況下,預訓練的CNN由研究人員設計并調整至最佳狀態,在實際場景中可以直接使用而無需再訓練.由于預訓練CNN 模型在現實中經常使用,因此,針對預訓練CNN 模型的理解和解釋是可解釋性研究中的一項重要內容.

1.1.2 可解釋性

可解釋性是近年來深度學習領域的研究熱點.可解釋性與可理解性的含義并不相同[19-20],文獻[19]從CNN 特征表示形式的角度出發,對CNN 的“可解釋性”和“可理解性”做了區分:可解釋性表示從抽象概念(向量空間、非結構化特征空間)到人類可理解的領域(圖像和文字等)的映射,而可理解性表示可解釋域內促使模型產生特定決策的一組特征.從這種區分看,“可解釋性”研究重點在于將參數化形式表示的特征映射到人類可直觀感受的表示形式,而“可理解性”側重在人類可理解的領域中尋找與模型某個決策相關的具體特征.也就是說,“解釋”是一種從不可解釋域到可解釋域的映射動作,“理解”則是一種在可解釋域內尋找感興趣證據的過程.麻省理工的研究人員認為[20],通過“解釋”能夠實現對深度網絡的“理解”,可解釋性的研究目標是以某種人類可理解的方式描述一個系統的內部機制.同時,將可解釋性的研究內容分為DNN 處理過程的理解、DNN 內部表征的理解和自解釋的DNN 三個方面.

深度學習可解釋性的研究內容非常豐富,本文從可解釋性研究的模型對象出發,根據待解釋的目標模型是否已經完成訓練,將深度學習可解釋性研究劃分為兩部分:事后解釋和自解釋模型,如圖2所示[21].

圖2 可解釋性深度學習的研究內容劃分Fig.2 The division of the research content of the interpretable deep learning

事后解釋是對預訓練模型的解釋.現實中,由于模型已經完成訓練和部署,而重新訓練模型耗費的時間和資源成本過大,因此不具備重新訓練的可能性.針對這種模型的解釋,需要在不修改模型自身結構及參數的情況下完成,結合預訓練模型的輸入、中間層參數和輸出等信息,實現對模型內部表征及決策結果的解釋.

對于預訓練模型的事后解釋方法,現有研究主要分為以下3 類:

1)表征可視化.表征可視化是一種基于特征重要性的解釋方法,主要研究模型內部的特征表示及這些特征與模型輸入、輸出之間的關系.梯度歸因方法[22-23]是最具代表性的表征可視化方法,使用輸入空間中像素自身的梯度(或絕對值、平方等)來衡量該像素與預測結果的關聯程度.表征可視化與模型結構可視化不同,前者重在研究模型內部特征(以參數的形式)的語義理解,以及輸入、特征編碼及輸出之間的因果關系,后者研究模型結構、數據流向及形狀的變化.

2)基于樣例的解釋.基于樣例的解釋是一種基于樣本重要性的解釋方法,采用訓練數據中的樣本原型作為當前決策結果的解釋[24-25].這種方法模擬人對事物的解釋過程[26],從數據集中已有樣本(已經學習過)中找到相似樣本,作為對新的樣本預測結果的比較.

3)自然語言解釋.自然語言解釋以人類可理解的自然語言形式,對CNN 識別結果進行解釋[27].該過程中,需要將CNN 的圖像特征編碼映射為RNN的自然語言特征編碼,通過跨模態的表征融合來生成用于解釋CNN 輸入與輸出的自然語言.該過程與圖像描述[28]和視覺問答[29]相似.

自解釋模型不同于事后解釋,其在模型設計時即考慮了內在可解釋性,在此基礎上進行訓練和優化,形成結構上或邏輯上具有內生可解釋性的模型.自解釋模型能夠在應用的同時由其自身為用戶提供對輸出結果的解釋.

對于建立具有自身可解釋性的模型,現有研究主要分為以下2 類:

1)分離式表征:在模型結構或優化過程中添加一些約束,以降低模型復雜性,同時保證模型的性能,使模型內部的表征分離可理解.例如,Zhang等[30]對濾波器的學習進行約束,訓練出可解釋的濾波器,使每個濾波器有針對性地關注特定目標部位.

2)集成方法:結合傳統可解釋性較好的機器學習方法,構建在深度神經網絡的識別性能和傳統方法的可解釋性之間折衷的新模型.例如,將神經網絡集成到決策樹算法中,使用神經網絡提取的特征作為輸入,這樣訓練得到的模型同時具有兩者的優點,可實現決策路徑的清晰可理解[31].

1.1.3 表征可視化

表征可視化是一種事后解釋方法,通常以視覺的方式對CNN 內部表征和輸出決策進行解釋.表征可視化嘗試解釋CNN 內部特征的表示形式、輸入—內部特征—輸出三者之間的關系、促使網絡做出當前預測的輸入等問題。與其他方法相比,表征可視化方法具有以下優點:1)簡單直觀,從視覺上為用戶提供觀察.2)便于深度分析網絡表征,診斷訓練效果,進而改進網絡結構設計.3)無需修改模型結構,多數表征可視化方法可在模型完成訓練之后進行特征分析與決策結果解釋,無需修改或重新訓練模型.表征可視化方法生成的解釋結果以熱力圖的方式呈現.熱力圖是一個由不同顏色強度構成的圖像,像素顏色的強度與其重要性相對應.從數學角度看,熱力圖實際上是一組與輸入變量對應的重要性值(或相關性值)的集合,集合中的每個元素值表示其對應的輸入變量與輸出結果之間的相關性.

1)CNN 表征可視化

表征可視化過程與CNN 預測過程相互依賴,如圖3 所示.圖3 上方為CNN 預測過程,下方為可視化方法的解釋過程,箭頭表示這兩個過程中各階段之間的相互關系.

圖3 CNN 表征可視化的研究思路Fig.3 The research idea of CNN representation visualization

CNN 預測過程:實現從輸入變量到輸出預測的映射.其中,輸入變量對應的輸入空間被認為是人類可理解的空間(例如圖像和語言文本),而特征編碼對應的特征空間經過了CNN 的自動特征提取與特征組合.可視化解釋CNN 的目的就是將中間層特征編碼和輸出層預測結果反向映射到輸入空間,實現不可解釋域向可解釋域的映射.

可視化方法的解釋過程涉及3 種:1)解釋內部特征:研究黑盒中間編碼了哪些知識,以怎樣的形式組織這些知識的.2)決策與特征關聯:研究中間層的知識與輸出預測之間的關系.3)解釋輸入—輸出關系:研究輸入變量、中間層特征編碼和輸出預測三者之間的關系.

2)CNN、RNN 和生成對抗網絡表征可視化的比較

CNN 在圖像數據處理領域應用較為廣泛,層次化的表征方式使其適用于圖像數據逐層學習的特性,與人類非常相似.因此,CNN 表征可視化主要研究各個隱含層所編碼的特征、這些特征的語義含義及與輸入輸出之間的關系.對于另外兩種常見的DNN:循環神經網絡(RNN)與生成對抗網絡(Generative adversarial network,GAN),表征可視化研究的關注點略有不同.

RNN 是一種隨時間步迭代的深度網絡,有長短時記憶網絡、門控循環單元等擴展版結構,擅長處理時序型數據,在自然語言處理領域應用廣泛.RNN 的主要特點在于其迭代式的處理數據,這些迭代信息存儲于網絡結構中的隱狀態中,每個時間步的隱狀態含義不同,RNN 的長距離依賴關系學習能力也在于這些隱狀態的學習效果.因此,RNN可視化研究多專注于對這些隱藏狀態的理解與解釋.例如,文獻[32]可視化RNN 的隱狀態對于輸入的預期響應,用于觀察RNN 內部的正面與負面輸入時的激活分布.文獻[33]開發了一個長短時記憶網絡可視化工具,用于了解這些隱藏狀態的動力學過程.文獻[34]通過可視化的方式解釋了長短時記憶網絡在長距離依賴關系學習上的優勢.此外,一些圖像領域常用的表征可視化方法如層級相關性反饋(Layer-wise relevance propagation,LRP)方法,也被用于解釋RNN 的表征及量化輸入—輸出之間的關系[35-36].

GAN 是一種生成式神經網絡,由生成器和判別器兩部分構成,二者之間通過對抗學習的方式互相提升性能[37].從結構上看,GAN 的生成器一般使用反卷積結構,判別器可視為一個CNN 結構.由于GAN 主要用于學習數據的潛在分布,然后用于生成式任務,因此,GAN 可視化的關注點主要在于生成器部分.更具體地,在于理解和解釋生成器隱變量的作用.典型的如InfoGAN[38],對輸入向量進行分解,使其轉為可解釋的隱變量及不可壓縮的噪聲,進而約束隱變量與輸出之間的關系,從而學習可解釋的特征表達.文獻[39]和文獻[40]通過操縱生成器的隱變量來觀察生成結果的變化情況,進而理解GAN 的過程.文獻[41]專門研究了GAN 隱空間的語義解糾纏問題,提出了一種效果較好的人臉編輯方法,可通過編輯GAN 的隱空間來調整生成人臉的屬性,如姿勢、性別和年齡等.

1.2 研究內容

本文梳理了CNN 表征可視化的研究內容,如圖4 所示,主要分為以下3 個方面:

圖4 CNN 表征可視化的研究內容Fig.4 Research content of the CNN representation visualization

1)可視化方法.從不同的目標模型和解釋需求出發,研究不同側重點的表征可視化方法,從而提升可視化解釋的效果.

2)可視化效果的評估.研究可視化效果的評估方法,主要從兩個方面展開:有效性評估和魯棒性評估.有效性評估用于評價可視化方法的解釋效果,分別從定性和定量的角度進行度量.魯棒性評估用于評價可視化方法在對抗性輸入的作用下能否有效地提供合理的解釋.

3)可視化的應用.研究可視化方法在相關領域的應用,根據不同可視化方法的特點為其選擇合適的應用場景,例如用于診斷網絡缺陷、為模型提供面向重要特征的注意力機制、用于弱監督目標定位任務等.

2 可視化方法

2.1 方法分類

根據可視化方法的算法原理,可歸納為6 種主要類型:基于擾動的方法、基于反向傳播的方法、類激活映射、激活最大化、注意力掩碼和其他方法.下面分別對每類方法進行介紹.

2.1.1 基于擾動的方法

基于擾動的可視化類似于一種因果過程,通過修改輸入(原因)觀察輸出(結果)的變化情況,從而確定被修改的輸入對于輸出的影響大小.如圖5所示,考慮輸入圖像x∈Rd,分類器f,輸出結果為f(x)∈Rn,其中類別c的Softmax 分數為fc(x).擾動方法研究使用刪除、遮擋、模糊等方式處理x的最小區域,觀察fc(x)的變化.若fc(x)下降較大,則被遮擋區域對fc(x)影響較大,重要性也較大.

圖5 基于擾動的方法的解釋流程Fig.5 Interpretation process of the perturbation based method

典型的擾動方式分為以下3 種:

1)簡單擾動.文獻[13] 使用固定尺寸的像素塊(如2×2),按照從左到向、從上到下的順序依次遮擋圖像的各區域,觀察各遮擋后圖像的預測結果.針對特定預測類別,分數下降越大,表明此時被遮擋區域對于該類別越重要,從而形成基于像素塊重要性的顯著圖.文獻[42]認為使用隨機值作為遮擋模塊的填充像素更合理,而不應僅使用灰色像素.文獻[43]使用蒙特卡洛抽樣產生多個擾動掩碼Mi用于遮擋圖像(見圖6),利用f對擾動圖像x⊙Mi進行分類,從而得到置信度向量,表示該掩碼與各個類別的關聯度大小.最后,使用類別對應的置信度對各掩碼作線性加權,得到最終的掩碼.

圖6 使用隨機采樣產生擾動掩碼的過程[43]Fig.6 The process of generating a perturbation mask using random sampling[43]

2)有意義的擾動.文獻[44]認為用于遮擋圖像的掩碼是可以學習的,而不需要使用簡單的平移或隨機等方式盲目的遮擋.使用優化思想學習到的像素級擾動掩碼有明確的含義,可以更有效地遮擋重要像素,使用的擾動方式如下[44]:

式中,x0(u)表示輸入圖像(自變量為元素位置u),m(u)表示掩碼.第1 種使用常數擾動,u0表示色彩均值;第2 種使用噪聲擾動,η(u)表示高斯噪聲;第3 種使用模糊擾動,σ0表示高斯模糊核gσ的標準差.定義目標函數如下:

使用優化方式學習到的擾動掩碼,對于指定的目標類別,可以使掩碼遮擋后的圖像的預測分類達到局部最低,即表示掩碼有效遮擋了圖像中最重要的區域.該式同時使用L1 范數約束掩碼,使擾動區域盡可能小,以實現擾動最少最關鍵像素的目的.

3)生成式擾動.文獻[45]和文獻[46]使用生成模型擾動輸入特征,得到視覺上更加自然的擾動圖像.如圖7(d)所示,與圖7(b)模糊、圖7(c)灰度化仍保留著目標輪廓相比,生成式模型修復的圖7(d)在目標位置插入與環境一致的平滑像素特征,可使擾動圖像在視覺上仍然是一張自然圖像,而非經過了明顯地遮擋.

圖7 使用生成式模型生成擾動[45] ((a)原圖,(b)模糊;(c)灰度;(d)生成擾動;(e)隨機噪聲)Fig.7 Using generative models to generate perturbation[45] ((a)Original image;(b)Blur;(c)Gray;(d)Generated perturbation;(e)Random noise)

此外,還有極值擾動[47]和對抗性擾動[48]等方法.總體來看,簡單擾動方法將目標網絡當作黑盒,僅需獲取其“輸入-輸出”對,無需接觸網絡權重與中間層激活,解釋過程所需的資源較少,但其解釋效果欠佳.更復雜的擾動方法則需要多次優化迭代,所需時間較長.

2.1.2 基于反向傳播的方法

基于反向傳播的方法根據所設計的反向傳播規則,將網絡輸出層預測值逐層分解并傳播到輸入空間,從而確定輸入-輸出之間的相關性.輸出層信息回傳過程中,利用模型權重參數作為引導,結合網絡中神經元的正向激活值,進行逐層反向計算,直到輸入空間,為每個變量(或一組變量)分配與輸出預測相關的貢獻值.

圖8 描述了基于反向傳播的可視化方法的解釋流程.對于輸入圖像x={x1,···,xd},d表示輸入圖像對應矢量的維度,xi表示該矢量的第i(1≤i≤d)維.設目標網絡為f,解釋方法為g,解釋過程可形式化為:

圖8 基于反向傳播的方法的解釋流程Fig.8 Interpretation process of the backpropagation based method

式中,R(xi)表示輸入的第i維元素與輸出預測f(x)之間的相關性值.

2.1.2.1 梯度方法及其變種

1)普通反向傳播(Vanilla backpropagation,VBP).文獻[22]和文獻[23]提出最簡單的基于梯度的可視化方法,使用網絡輸出得分的輸入空間中數據點的導數,表示該點與輸出結果之間的相關性大小,形式化如下:

式中,x表示輸入圖像,fc(x)表示對x的預測類別c的得分.如圖9 所示,表示在AlexNet[1]上使用VBP 方法進行可視化的過程.其中,C 表示卷積層,FC 表示全連接層.

圖9 VBP 方法的過程[49]Fig.9 The process of the VBP method[49]

VBP 方法的反向傳播過程基于鏈式法則進行,由輸入圖像的梯度構成顯著圖,顯著圖中較亮位置的梯度絕對值也越大,這些突出位置顯示了與模型輸出結果相關的輸入特征,且相關性越高則顯著圖中對應特征越明顯.直觀理解,梯度表示模型訓練中參數的更新量,數據點的梯度越大表示輸出對該點的變化越敏感,則該點與輸出的相關性也越大.因此,這種方法也稱作靈敏度分析方法,用于分析輸出結果對輸入特征的變化量的敏感程度.初始得到的顯著圖,通過取絕對值或取平方等后處理策略,使熱力圖中顯著性區域更加集中,散點噪聲更少.

2)導向反向傳播(Guided backpropagation,GBP).VBP 方法基于普通的梯度反向傳播,依靠網絡自身反向傳播所產生的梯度,僅對最終的梯度圖進行后處理,而未對反向傳播過程作任何更改.GBP方法[50]與其略有不同,它對反向傳播中每個卷積層的梯度都進行負值過濾,使負值調整為0,即使網絡中間有ReLU 層,也會對其梯度再進行一次ReLU過濾.這樣做的目的是僅保留與網絡輸出正相關的梯度,去掉負相關的梯度.

VBP 和GBP 是2 種最簡單的梯度方法,但由于深層網絡的梯度傳播過程中的問題,導致這兩種方法也含有一定的局限性,體現在以下3 個方面:

1)梯度消失.隨著反向傳播過程層數的增加,梯度分布越來越稀疏,再加上一些梯度過濾措施,導致顯著圖愈發不明顯.該問題在很多深層網絡中尤其突出.

2)梯度不能完全反映輸入特征的重要性.梯度用于表示對應點的變化量對輸出的影響,但不一定可以解釋該點自身對輸出的貢獻.例如,沿著梯度下降方向改變(增加/減小)該點的數值能夠使輸出結果分值更高,但并不表示該點自身對輸出有較大影響.因此,梯度方法并不能完全理解為能夠解釋CNN 的分類結果,僅能解釋怎樣改變輸入可使該分類結果的置信度更高.

如圖10 所示,左側表示輸入圖像,右側表示顯著圖的解釋結果.在第1 行中,梯度突出的區域偏向左上方,表明該區域對“reflex camera”標簽更重要,而原圖中對應區域并沒有實際含義.在第2 行中,去除這部分區域后,在預測類別不變且置信度增加的情形下,梯度突出的區域卻發生了改變.從中可以看出,對于一些特殊的圖像,梯度自身能否表明像素重要性值得懷疑.

圖10 梯度不穩定導致解釋結果的不確定性[51]Fig.10 Uncertainty of interpretation results due to gradient instability[51]

3)梯度噪聲.梯度對應的顯著圖中,散點噪聲較多,只能從整體上觀察顯著圖中較模糊的目標信息.目前的研究對這些噪聲的出現作了一些假設,但仍有待進一步探討.圖11 表明了梯度顯著圖的噪聲問題,與給定的邊框相比,顯著圖中高亮區域含有較多的框外散點噪聲.

圖11 梯度方法產生的顯著圖含有大量噪聲[44]Fig.11 The saliency map generated by the gradient method contains a lot of noise[44]

盡管如此,基于梯度的顯著圖可視化仍有一些有益的作用,是一種能夠有效輔助理解CNN 的方法.針對上述問題,一些研究嘗試使用新的方法對梯度反向傳播規則或梯度圖自身進行處理,以提升梯度顯著圖的可視化效果,形成像素區域更加集中的和連續的梯度圖.這些研究包含以下幾項:

1)平滑梯度.Smilkov 等[52]對梯度圖中噪聲出現的原因作了假設,認為這些噪聲是由神經網絡學習到的得分函數的不平滑性引起的,噪聲即是一些變量的梯度對應的沒有實際含義的局部變化.ReLU激活函數就是一種典型的不平滑激活函數.圖12表示在不改變圖像的視覺效果與分類結果的情況下,對單個輸入像素添加細微擾動,擾動率(橫軸)的增加引起的該像素各通道的梯度值(縱軸)的變化.可以看出,像素梯度變化對像素的改變具有較大敏感性,盡管這種改變并不一定具有實際含義.

圖12 單個像素的梯度值的不穩定性[52]Fig.12 The instability of the gradient value of a single pixel[52]

梯度的不穩定特性是“平滑梯度”方法提出的依據,通過為輸入圖像添加采樣自高斯分布的噪聲,對每次生成的梯度圖疊加后再平均,實現對梯度圖的平滑與去噪.具體地,對于輸入圖像x,添加服從高斯分布ε~N(0,σ2)的噪聲,形成在視覺上無明顯變化的N張帶噪聲圖像x+ε,然后對這些圖像生成的梯度圖加以平均,得到最終的顯著圖.這樣通過多個顯著圖平均化的方式實現圖像的平滑,從而去除顯著圖中存在的噪聲,得到更好的可視化效果.

2)積分梯度[53].將輸入圖像從某個初始值(例如0)開始,按照一定比例放大到當前值.將中間過程中的每個輸入對應的顯著圖進行平均,得到最終的顯著圖.

3)整流梯度.Kim 等[54]深入對比了現有的梯度反向傳播方法,并提出假設認為,由于CNN 在前向傳播中本身含有噪聲,導致反向傳播中相應元素位置會出現梯度噪聲.為了處理掉顯著圖中的噪聲,通過設置適當的閾值,使重要性分數超過該閾值的神經元的梯度才會被反向傳播,從而過濾非重要的特征.

此外,文獻[55]還提供了梯度歸因方法的比較基準.文獻[56]對幾種基于梯度的可視化方法的效果作了詳細對比,引入了一種量化評價標準sensitivity-n統一進行度量.文獻[57]采用聚合的思路,對幾種方法的結果進行聚合,實現更加穩定的解釋.總體來看,梯度方法及其變種主要依靠基于梯度的反向傳播實現解釋過程,各種方法在傳播規則上略有不同,表1 對比了各方法的特點.

表1 梯度方法及其變種的特點比較Table 1 Comparison of the characteristics of the gradient method and its variants

2.1.2.2 反卷積

Zeiler 等[13]提出基于反卷積的可視化方法,反向重建CNN 中間層神經元學習到的模式.通過正向卷積的逆過程,將中間層激活值逐層反向卷積到輸入空間,在輸入空間找到激活該神經元的特征.

為了清楚介紹經典反卷積過程,首先將正向卷積過程形式化.如圖13 所示,對于正向卷積[1,15],輸入圖像x經過含有L個卷積層的網絡f,進行特征提取與分類,該過程形式化表示如下:

圖13 反卷積可視化方法的過程Fig.13 The process of deconvolution visualization method

式中,Al(1≤l≤L)表示中間第l個卷積層輸出的多通道特征圖,θ表示CNN 的參數集合,函數f表示正向卷積過程.

1)卷積層:將卷積過程形式化為第l層的卷積核fl作用于一個多通道特征圖Al,*表示卷積運算,如下:

2)激活層:使用激活函數ReLU 過濾負激活值,該過程如下:

3)池化層:使用最大值池化過程中,僅取每個池化窗口中的最大值,并紀錄各最大值在整張特征圖中的位置,稱為switches.它可以在反向池化過程中,按照紀錄的位置恢復最大值.過程如下:

對于反卷積過程,形式化如下:

1)反池化層:按照正向最大值池化中紀錄的最大值位置,將反向過程中的特征圖各元素恢復到其原始位置.該過程增加了特征圖尺寸,恢復到正向池化前的特征圖尺寸.對于在正向池化中被丟棄的值所在的位置,在反向池化中對其填充0.過程如下:

2)反激活層:使用激活函數ReLU 處理反池化得到的特征圖:

3)反卷積層:使用正向卷積核的轉置作為該層的反向卷積核:

上述過程表明,反卷積和正向卷積相似,可對特征圖連續處理,從中間層恢復到輸入層,實現上采樣效果.該過程中,僅逐層恢復較強的激活值,一直到輸入空間,這樣可以發現輸入空間中哪些特征引起了中間層某些較強的激活.

VBP、GBP 和反卷積3 種典型的反向傳播方法過程大致相同,但在反向傳播中對ReLU 函數的處理策略卻不同.圖14 是3 種方法的反向傳播過程對比,使用了ReLU 或ReLUBP函數.其中,Conv表示正向過程卷積,ConvBP表示對應的反向過程.ReLUBP表示激活值為正,ReLUBP表示激活值為正的區域反向傳播其梯度,激活值為負或零的區域其反向梯度為零.ReLU 則根據梯度值自身的正負來過濾梯度.GBP 綜合了ReLU和ReLUBP,只有在激活值和梯度值均為正的情形下,該位置的梯度才會反向傳播,其余位置仍保持為零.

圖14 VBP、GBP 和反卷積三者之間的關系[49]Fig.14 The relationship of VBP,GBP and deconvolution[49]

2.1.2.3 LRP 及其變種

Bach 等[58]提出層級相關性反饋(Layer-wise relevance propagation,LRP),重新定義了新的反向傳播規則,使用相關性函數R來計算某個輸入變量對函數值的貢獻,如圖15 所示.其中,函數值f(x)可按照制定的逐層相關性傳播規則,從輸出層一直分解到輸入空間的每個變量上,以度量每個變量與函數值之間的相關性.R(x)表示輸入變量x的每一維對該輸出的貢獻大小.

圖15 LRP 的過程Fig.15 The process of the LRP

如圖16 所示,假設輸入層向量記作x=,其中 1≤d≤V,V表示輸入層向量維度.中間第l層向量記作z=,V(l)表示第l層向量維度,對應的激活值記作a=,如下[19]:

圖16 LRP 正向傳播的過程[19]Fig.16 The forward propagation process of the LRP[19]

將輸入層記作第0 層,中間層從第1 層開始,最后一層為第L層.

在反向傳播中,各層神經元的相關性分值定義如下:將輸入層變量的相關性分值記作R(x)=,簡寫為.中間第l層神經元的相關性分值記作R(z)=,簡寫為R(z)=.

LRP 方法中涉及幾個約束條件如下[19]:

約束1.輸入空間中變量貢獻值的正負由其相關性分值的正負決定.相關性函數值R(xi)的含義如下:

約束2.輸入空間貢獻值由函數值f(x)分配.f(x)為網絡輸出層目標神經元的函數值,其值等于輸入空間所有變量的相關性值之和:

約束3.層級相關性分值守恒.函數值f(x)對中間各層神經元的相關性值分配滿足守恒定律:

約束4.第l層某個神經元被分解出的相關性值,等于其流向的第l-1 層中所有神經元的相關性值之和:

約束5.第l層某個神經元被流入的相關性值,等于第l+1 層所有流向該神經元的相關性值之和:

上述定義和約束規定了相關性值的含義及守恒原則,對應的示例如圖17 所示,其中實線對應約束4 的內容,虛線對應約束5 的內容.

圖17 LRP 反向傳播的過程[19]Fig.17 The backpropagation process of the LRP[19]

在上述約束規則的基礎上,定義逐層反向傳播的αβ規則,如下:

以上是化簡后的α和β規則.在實際應用中,取α=1,β=0,由式(18)和式(19)分別得到:

式(22)~(23)表示α=1、β=0、b=0 情形下的相關性傳遞規則.相關性值傳遞與正向過程中的權重和激活值有關,它們決定了每個神經元的相關性分配比例.

盡管LRP 的傳播規則非常細致,但初始情形下的相關性值僅考慮了目標類別的神經元,忽視了其他類別神經元的作用,即:

式中,N表示第L層神經元的總個數.進一步地,Iwana 等[60]提出了Softmax 梯度層級相關性反饋(Softmax-gradient LRP,SGLRP),將Softmax 梯度信息引入初始相關性分數值,以區分其中的各個類的比例:

2.1.2.4 深度泰勒分解

深度泰勒分解(Deep Taylor decomposition,DTD).Montavon 等[61]認為梯度方法屬于DTD 方法的一種特殊情形,即用輸入空間所有像素的梯度之和表示輸入層的相關性分數總和.DTD 的思想基于CNN 的函數特性,采用數學中的泰勒分解方法對CNN 進行分解.假設將CNN 視作一個由輸入到輸出的函數f,其中x為輸入變量,f(x)為輸出結果,則可以對該函數在某點a處進行泰勒分解,如下:

從數學的角度觀察,右側第1 項f(a)表示a點處的函數值,右側第2 項 (f′(a)/1!)(x-a)表示該函數的一階導數(斜率)和自變量與點a差值的乘積,右側第3 項與函數的二階導數(曲率)相關,后續依次為更高階導數項.而從神經網絡的角度觀察,f(x)表示網絡輸出值,也即對輸入變量x的分類結果,將其分解到輸入變量上,即表示輸入變量的貢獻值.假如a點為零點,滿足f(a)=0,則f(x)的一階泰勒項f′(a)·x即與VBP 方法相似,使用梯度與輸入變量的乘積作為相關性值.

從熱力圖的計算方式看,梯度方法對應的顯著圖由f′(a)得到,表示預測結果對輸入圖像中哪些特征的改變較為靈敏.DTD 對應的顯著圖則由f′(a)·x得到,顯著圖中將會包含輸入圖像中的原始特征,相當于梯度值與輸入圖像共同作用的結果.因此,與梯度方法相比,DTD 回答了“是哪些特征讓這張圖像被分類為貓?”,而梯度方法則回答了“是哪些特征讓這張圖像更像一只貓?”.這看起來是大致相同的問題,但實際上前者尋找的是貓的所有特征,而后者則更偏向于尋找能使貓區分于其他事物的特征,這也可作為梯度方法為何稱作靈敏度分析方法的一種理解[19].

2.1.2.5 小結

本節介紹4 種基于反向傳播的可視化方法,核心思想是通過設計一定的反向傳播規則,將CNN網絡輸出結果反向傳播到輸入空間,為輸入空間的各個變量分配相關性值,以衡量其對預測值的貢獻,這樣在輸入空間形成了由相關性值構成的圖像,即熱力圖.熱力圖以不同明暗強度的形式表明各像素點與預測值之間的相關性.最簡單的反向傳播規則依靠網絡自身梯度反向傳播中的鏈式法則,如VBP方法.更復雜的則采用自定義的反向傳播規則,如LRP 和DTD.

2.1.3 類激活映射

1)類激活映射(Class activation mapping,CAM)通過生成類激活圖來可視化CNN 的關注區域,類激活圖使用區域級的特征高亮方式,以突出與特定類別最相關的區域.Zhou 等[62]認為,隨著CNN 層數的加深,中間層特征圖編碼中與決策無關的信息越來越少,因此越往深層目標信息越抽象,語義信息也越豐富.CNN 最后的卷積層在高層語義信息上達到最佳,其對應的特征圖含有最抽象的目標級語義信息,且每個通道檢測到目標的不同激活部位.因此,通過對最后的特征圖進行通道級加權調整,可生成與特定類別最相關的類激活圖.

CAM 所依賴的網絡結構如圖18 所示,假設最高層特征圖(第L層)為AL,其中,第k個通道為,經過全局平均池化(Global average pooling,GAP)層映射到Softmax 輸出層進行分類.生成類激活圖的形式化表示如下:

圖18 CAM 的過程Fig.18 The process of the CAM

2)梯度加權的類激活映射(Gradient-weighted CAM,Grad-CAM).由于CAM 使用的GAP 層并沒有出現在AlexNet[1]、VGGNet[15]和GooLeNet[14]等常見的網絡中,因此,若要使用CAM 可視化CNN,需要按照圖18 對網絡結構進行改造并重新訓練模型,這極大地增加了工作量.為了更一般化CAM,Selvaraju 等[63-64]提出了基于梯度的CAM—Grad-CAM.其基本過程與CAM 相似,但為了克服對于GAP 層的依賴,Grad-CAM 使用反向傳播中獲取的通道梯度均值作為通道權重,生成的熱力圖有類似的效果,具體過程如圖19 所示.

圖19 Grad-CAM 的過程Fig.19 The process of the Grad-CAM

式中,求和元素為通道k內部每個神經元激活值的梯度,Z表示歸一化因子.將得到的類激活圖和GBP 得到的顯著圖逐點相乘,能夠實現這兩種熱力圖特點的融合,生成細粒度的、含有類別區分性的熱力圖.

1)Grad-CAM++.Chattopadhyay 等[65]進一步提出了Grad-CAM 的更高階導數版本Grad-CAM++,其基本形式與Grad-CAM 相同,僅使用的通道權重不同.Grad-CAM++將更高階的梯度(高階導數)的組合作為通道權重,改善了多目標圖像的可視化效果,具體細節這里不再贅述.

2)分數加權的類激活映射(Score-weighted CAM,Score-CAM).Wang 等[66]認為Grad-CAM和Grad-CAM++都是基于梯度的類激活圖生成方法,采用的線性加權權重是由梯度或其變體構成.而梯度具有不穩定特性[51-52],將導致生成的類激活圖也不穩定.因此,Score-CAM 試圖使用非梯度方法獲取各通道的權重,以消除梯度不穩定性的影響.如圖20 所示,Score-CAM 將最高層特征圖的每個通道作為一個掩碼,將其與輸入圖像疊加后再送入CNN 中,由CNN 對該通道的各類別的重要性(即分類概率)進行預測.使用特定目標類別的重要性進行通道加權,可以生成噪聲含量更少的類激活圖,并且抵抗一些基于梯度的對抗性攻擊,實現穩定的解釋效果.

圖20 Score-CAM 的過程[66]Fig.20 The process of the Score-CAM[66]

此外,還有U-CAM[67]和Smooth Grad-CAM++[68]等以CAM 作為基礎的改進研究.根據上述幾種方法的分析,可知類激活圖的生成過程基本相同,將最高層特征圖作為基本的特征空間,使用權重對各通道進行加權.理論上,權重大小應當表示該通道對特定類別的貢獻大小.經過加權調和后,將各個通道相加合并,得到二維的初始類激活圖.此時,類激活圖的尺寸與最高層特征圖的尺寸相同,需采用插值方式(如雙線性插值)將其擴大到與輸入圖像相同的尺寸.在類激活映射基本形式下,各種方法采用不同的權重對各通道進行加權,這些權重及其優缺點分析如表2 所示.

表2 類激活映射方法的比較Table 2 Comparision of the class activation mapping methods

2.1.4 激活最大化

激活最大化(Activation maximization,AM)方法用于可視化網絡的偏好輸入,找到能夠最大限度激活某個特定神經元的輸入模式.與梯度方法的不同之處在于,梯度方法研究輸入數據點通過怎樣的變化可使輸出分數更高,這種變化量即作為該點相對于輸出的貢獻度大小.AM 方法則研究一組怎樣的輸入數據點集合能夠使某個輸出類別分數最高,通過優化方法來搜索這樣一組數據點,即為網絡最偏好的某個類別數據點集合.如圖21 所示,對于圖像分類模型,使用一張隨機初始化的圖像,通過最大化分類該圖像的某個激活值,來反向傳播并更新輸入圖像的像素值,經過多次迭代,得到能最大激活該神經元的偏好圖像.該過程中,分類器的參數保持不變,僅更新輸入圖像.

圖21 AM 的過程Fig.21 The process of the AM

首先,使用帶標注訓練集樣本 {xt,yt},按照設計的目標函數,對CNN 進行參數優化并保存,將該網絡稱作目標CNN,即圖中實線部分.然后,對隨機初始化的輸入圖像x,在固定目標CNN 模型參數的情況下,通過優化x來實現對輸出層某個類的概率最大化,即圖中虛線部分.此時,以最大化網絡輸出概率分布中某個類別的概率為目標,設計目標函數如下[19]:

該目標函數通過添加對x的L2 正則化約束,保證其數值變化的穩定性.使用梯度上升優化算法來更新參數,此時目標函數的優化對象并不是網絡參數,而是輸入矩陣x.在經過多輪迭代優化后,最終可得到最大化的類別概率和對應的輸入x,即為該類別神經元所偏好的最佳輸入模式.同時,目標函數也可以選擇最大化中間層某個神經元或一組神經元的激活值,從而得到中間層神經元偏好的輸入模式.

然而,試圖從隨機初始化的輸入變量中優化出真正與目標類別c對應的視覺概念是非常困難的,實驗中經常觀察到,雖然指定類別的概率p(wc|x,θ)達到迭代停止時的最大值,但此時對應的輸入圖像x在視覺上卻沒有任何語義概念.這表明,對于恢復出一張有意義的圖像來說,僅依靠類別概率作為先驗,可用的信息量遠遠不夠.文獻[69]指出了該問題,并提出添加一些限制措施(如正則化約束)進行改進,以形成視覺上接近真實圖像的生成圖像[70-71].文獻[19]從為該優化過程的起點引入先驗知識入手,使用生成網絡改進AM 方法,提出了基于深度生成模型的AM 方法(Deep generator network based AM,DGN-AM),如圖22 所示.

圖22 所示的過程分為3 個步驟:

圖22 DGN-AM 的過程Fig.22 The process of the DGN-AM

1)訓練目標CNN.目標CNN 表示需要被解釋的CNN,同時也用來提供先驗知識,作為編碼器對輸入圖像進行編碼.此時,訓練數據來自標準的帶標注數據集,使用交叉熵作為損失函數,優化參數為目標CNN 的參數.

2)訓練GAN.分別訓練生成器G 和判別器D,此時,固定目標CNN 的參數,僅輸入無標簽的訓練數據,先后對D 和G 進行參數優化.

其中,D 的損失函數含有兩部分:最大化Dr和最小化Df.Dr表示D 對真實圖像的分類得分,Df表示D 對生成圖像的分類得分,如下:

G 的損失函數含有最大化Df、最小化xf和輸入圖像x之間的歐氏距離,最小化vf(fake)和v之間的距離:

式中,v表示x經過目標CNN 提取的特征向量,該向量可作為x的代表.xf表示G 作用于向量v而生成的圖像.vf表示使用目標CNN 從生成圖像提取的特征向量.λ1和λ2表示損失函數的系數.該式同時對輸入向量及特征向量兩部分進行約束,實現G 生成圖像質量的提升.

由于不需要使用訓練數據的標簽,因此上述GAN 的訓練是無監督訓練過程.對GAN 訓練的目的是學習訓練樣本的先驗分布,從而在后續使用G生成圖像時,能夠直接使用數據集的先驗知識,而非在完全隨機初始化的輸入上生成圖像.

3)使用AM 生成最佳輸入模式,如圖22 虛線框內所示.針對隨機初始化的向量vr,經過G 生成相應的輸入圖像,再使用CNN 分類模型(即步驟1中目標CNN,這里用作分類器)進行分類,并對輸出概率分布中某類的概率進行最大化.因此,損失函數與正常的CNN 分類損失函數相同,優化對象為輸入向量vr,其余網絡參數均保持不變.最終得到優化向量,再將該向量經過G,即可生成相應的圖像.由于步驟2 中訓練后的G 含有豐富的來自于原始訓練數據的樣本信息,相當于從目標CNN 中提取而來,此時生成圖像的視覺效果比單純使用AM 時的結果更佳.

如圖23 所示,表示在MNIST 數據集上使用AM 方法對目標CNN 模型的可視化結果[19].其中,第1 行表示最簡單的情形,損失函數為loss=maxxln(p(wc|x,θ)).第2 行表示對x進行L2 正則化約束,損失函數為loss=maxx(ln(p(wc|x,θ))-λ||x||2).第3 行表示使用數據集的均值xmean對x進行約束,損失函數為loss=maxx(ln(p(wc|x,θ))-λ||x-xmean||2).第4 行表示使用DGN-AM 方法得到的結果.可以看出,隨著先驗知識的加入,AM方法針對模型的各個類別提取出的圖像越來越逼近真實圖像,逐漸變得清晰可理解.其中,DGN-AM方法得到的結果最接近真實圖像.

圖23 在MNIST 數據集上使用AM 方法對目標CNN 模型的可視化結果對比[19]Fig.23 Comparison of the visualization results of the target CNN model using the AM method on the MNIST dataset[19]

2.1.5 注意力掩碼

注意力掩碼是由圖像識別中的注意力機制產生的掩碼矩陣.由于注意力機制本身能夠解釋網絡對不同變量的依賴,因此,對注意力掩碼的可視化能夠觀察到網絡對變量的關注度,從而理解網絡的訓練效果及決策所依據的輸入特征.圖像識別模型中的注意力機制包含通道注意力、空間注意力與通道注意力的混合、類別注意力等.

1)SENet:2018 年,Hu 等[18]提出SENet 模塊,對CNN 中間層特征圖的各通道進行加權調整,提升特征學習效果.如圖24 所示,對于一個尺寸為C×H×W的多通道特征圖,C表示通道數,H和W分別表示各通道的高和寬,SENet 模塊采用壓縮和激勵2 個操作,對特征圖進行變換,得到一個C維向量.使用該向量對各通道進行通道級加權,實現對通道間依賴關系的顯式建模和重標定.其中,壓縮操作使用全局池化將特征通道池化為單個點,則整個特征圖變為一個特征向量,該向量稱之為全局信息向量,其每一維均包含對應的整個特征通道信息.然后,經過兩個全連接層的先降維再還原變換,實現自適應校準(即激勵操作),向量尺寸變化為C→(C/r)→C,其中r表示首個全連接層對C維向量的降維率.最后,將得到的向量作為通道的權重向量,其每一維表示對應特征通道的權重,經過通道加權調整后的特征圖更具有針對性,含有更明確的語義信息.以該方法實現的SENet 網絡,在2017 年ILSVRC 圖像分類挑戰賽上獲得冠軍,實現了2.25%的前5 分類錯誤率.

圖24 Squeeze and excitation 模塊[18]Fig.24 Squeeze and excitation module[18]

2)CBAM (Convolutional block attention module).2018 年,Woo 等[72]在通道注意力模塊的基礎上作了進一步探索,認為通道級注意力將各通道視為一個整體,僅能實現各通道間的相互關系建模,而忽略了通道內不同空間位置的特征分布特性.為此,提出了一種通道注意力與空間注意力結合的方式,對特征圖分別進行通道級和空間級的權重調整,得到通道注意力權重與空間注意力權重,再與原始特征圖融合,實現對特征圖各通道和通道內不同位置的特征重標定.如圖25 所示.將通道與空間注意力模塊插入到初始網絡結構中,采用先通道后空間注意力模塊的順序,對特征圖進行加權調整,且不改變特征圖尺寸.與SENet 相比,CBAM 在各通道之間和通道內各空間位置上實現了更加深入的特征圖自適應調整.

圖25 通道—空間注意力模塊[72]Fig.25 Channel-spatial attention module[72]

通道注意力模塊如圖26 所示,其整體結構與SENet 大致相似,但在某些策略上有細微調整,例如同時使用了使用了最大值池化和平均值池化2 種池化方式.

圖26 通道注意力模塊[72]Fig.26 Channel attention module[72]

通道注意力權重由各通道全局池化得到,因此通道注意力權重向量的維度與通道數相同.與之不同,空間注意力權重按照各空間位置進行逐通道池化,因此空間注意力權重為矩陣形式,其尺寸與各通道尺寸大小相同,空間注意力模塊如圖27 所示.

圖27 空間注意力模塊[72]Fig.27 Spatial attention module[72]

3)類別注意力.對于一些具有類別區分信息的可視化方法,如CAM 和Grad-CAM 等,常被集成到網絡結構中,通過生成針對特定目標的注意力掩碼,引導網絡將更多注意力應用到這些區域的特征提取和語義表示上,以針對性地提升模型的學習性能.文獻[73]提出使用一個額外的預訓練模型輔助生成CAM 類激活圖,將該圖二值化后作為掩碼添加在原圖上,從而集中對原圖中目標主體區域的關注.文獻[74]同樣將該思路應用到圖像分類任務中.文獻[75]使用自頂向下的注意力將類別信息傳遞到特征空間,實現針對特定類的注意力.文獻[76]利用指定類的注意力實現物體級別的區域關注,從而對多標簽圖像進行分類等.文獻[77]使用Grad-CAM 為遙感圖像的多標簽分類任務提供類別注意力等.這些研究在不同任務中應用類別注意力,而非聚焦于可視化方法本身,可作為表征可視化方法的拓展研究.

基于注意力掩碼的可視化呈現出以下特點:1)注意力可視化多用于診斷網絡的訓練效果,通過觀察內部表征來推測注意力效果的好壞,但無法對CNN的決策依據進行解釋.2)網絡分類/檢測準確率越高,中間層注意力掩碼對目標的信息覆蓋越全面,則特征圖對目標的定位越準確.圖28 展示了在ResNet50 中使用SENet 和CBAM 兩種模塊的注意力效果對比.

圖28 ResNet50、集成SENet 的ResNet50 (ResNet50 +SE)和集成CBAM 的ResNet50 (ResNet50 +CBAM)的最高層特征圖的可視化[72]Fig.28 Visualization of the highest-level feature maps of ResNet50,ResNet50 integrated with SEnet(ResNet50+SE),and ResNet50 integrated with CBAM (ResNet50+CBAM)[72]

2.1.6 其他方法

除了上述幾類方法外,還有一些方法在圖像和文本任務的解釋上均適用,常被用于特征歸因及特征選擇,CNN 可視化僅是其中一項應用.本節介紹2 種常見的方法:局部可理解的模型無關解釋(Local interpretable model-agnostic explanations,LIME)和沙普利加和解釋(Shapley additive explanations,SHAP).

1)Ribeiro 等[78]于2016 年提出LIME 方法,用于解釋任意黑盒分類器的預測.LIME 方法的主要思想為,在輸入樣本附近多次采樣,獲取一組近鄰樣本,使用這些近鄰樣本訓練可解釋的線性模型,利用線性模型在局部范圍內逼近深度模型的預測,實現模型代理解釋.LIME 可應用于圖像和文本等分類器的解釋.

具體地,給定輸入樣本x,目標分類器f,定義解釋模型g,LIME 通過不斷在輸入樣本的鄰域內采樣并作為輸入,來優化下列目標函數:

式中,πx表示采樣樣本與輸入樣本之間的相似性度量,Ω(g)約束解釋模型的復雜度,G表示一組可解釋的簡單模型.該式的前一項用于保證解釋模型的保真度,使其在局部的預測結果與目標分類器盡量一致.第2 項用于約束解釋模型的復雜度.相似性度量函數用于衡量擾動前后樣本的相似度,這個相似度即可用作采樣樣本的權重:

式中,D(·)表示距離函數,如L2 范數距離.將LIME實例化為對某個圖像分類器的解釋,其中的訓練樣本構建流程見圖29.

圖29 中,x′(d′維,可理解的特征)表示輸入樣本x(d維,原始特征)的可理解表示形式,例如二值向量,每一維表示x的某個特征出現與否.將這種映射記作x=hx(x′).在x′附近隨機采樣N次,得到N個樣本.將恢復到原始輸入空間,得到zi,計算相應標簽f(zi)及與x的相似度πx.其中,采樣的過程就是在可理解的表示域內擾動,擾動的對象為一組相鄰的超像素(即一系列相鄰且相似的像素形成的像素塊),通過改變x′∈{0, 1} 的值,來表示對應超像素的出現與否,從而獲取采樣樣本.

圖29 LIME 的樣本處理流程Fig.29 The sample processing flow of the LIME

按照上述流程,獲得采樣樣本及其標簽,形成輸入樣本x的近鄰數據集Z=,可在Z上優化如下目標函數,得到解釋模型g:

直觀來看,LIME 希望在局部范圍內,使用采樣得到的簡單樣本z′訓練出解釋模型g(z′),使得在z′≈x′的局部范圍內,總有g(z′)≈f(hx(z′)).這樣訓練得到的解釋模型g便可以在局部代替待解釋的目標模型f.

如圖30 所示,表示LIME 在3 種不同的CNN模型上針對輸入圖像的可視化結果,此時設置隨機采樣樣本數量為10 000,使用余弦函數作為距離度量.該方法能夠對特定預測結果分別找到正向和負向貢獻的特征,且不同模型上的可視化效果也不同.LIME 方法的優點在于簡單且易于理解,是一種模型無關的方法,通用性較好,對于圖像和文本分類任務均適用.但其缺點在于其采用的是局部近似,無法對模型整體進行解釋,并且需要重新訓練一個新的解釋模型.同時,對于同一個輸入樣本,多次運行LIME 方法時,由于每次隨機采樣的樣本不同,使得每次解釋結果都不相同,且所選擇的采樣樣本數量和特征數目等參數都會影響解釋效果,使其無法為用戶提供一個穩定的解釋.

圖30 LIME 在AlexNet、VGGNet16 及ResNet50 模型上可視化結果示例Fig.30 Example of LIME visualization results on AlexNet,VGGNet16 and ResNet50 models

2)Lundberg 等[79]利用博弈理論的Shapley 值來解釋模型預測,提出了SHAP 方法.Shapley 值由加州大學洛杉磯分校的Shapley 等[80]提出,用于解決合作博弈中的分配均衡問題,在許多領域均有應用.SHAP 方法的基本思想為,將輸入數據中的特征視為合作博弈模型中的玩家,通過計算每個玩家的Shapley 值來量化該玩家在完成任務中的貢獻,進而為其分配相應的貢獻值,即該特征對預測結果的貢獻.

假設有目標模型f和解釋模型g,且f和g滿足:

1)局部保真性.即對于同一個輸入樣本z,解釋模型g的輸出g(z′)應當與目標模型f的輸出f(z)保持一致.

2)缺失性.若輸入中某個特征沒有貢獻,則其Shapley 值為0,即=0→φi=0.

3)一致性.如果目標模型發生變化,使得某個特征的貢獻增加,則其對應的Shapley 值也應增加.

Shapley 值是已被證明滿足有效性、對稱性、可加性和單調性的指標.按照上述性質,每個特征都具有唯一的Shapley 值.Lundberg 等[79]給出了具體的Shapley 值計算公式.文獻[79]還介紹了幾種基本的SHAP 方法變體,如Kernel SHAP、Linear SHAP、Low-Order SHAP 和 Deep SHAP.其中,Kernel SHAP 就是線性模型下的LIME 方法與Shapley 值的結合.SHAP 方法的優勢在于其廣泛適用性,CNN 決策結果的可視化僅是其應用的一個方面,對于其他機器學習模型的解釋也都適用.

2.2 分析與比較

2.2.1 特點分析

第2.1 節介紹了多種典型的可視化方法,本節對它們的特點進行了歸納,如表3 所示,分為以下6 個方面:

表3 可視化方法的特點比較Table 3 Comparison of characteristics of visualization methods

1)細粒度與區域級.細粒度的可視化實現像素級的相關性反向傳播,輸入空間中每個像素都會被分配一個對應的貢獻值,在數值上表示其對CNN某個特定輸出值的貢獻大小.基于反向傳播的方法多屬于細粒度的可視化方法.區域級的可視化一般不關注單個像素與輸出之間的相關性,而是將某些區域所涵蓋的具有語義概念的像素集合作為整體,其中單個像素的數值大小與其對網絡輸出值的影響并不一定呈現比例關系,但區域整體上對CNN 的輸出類別貢獻成比例.基于擾動的方法、類激活映射及注意力掩碼等多屬于區域級的可視化方法.

2)類別相關性.通用的可視化方法生成的熱力圖是與具體輸出類別無關的,比如梯度方法、反卷積、LRP 和DTD 等.輸入圖像中含有明顯語義信息的目標都會被可視化方法定位,但無法區分哪些目標和當前輸出類別最相關.類別區分性可視化方法生成的熱力圖是類別相關的,可在輸入空間中找到與指定輸出類別相關的區域和特征.CLRP、SCLRP、AM 和CAM 這類方法均為類別區分性可視化方法.

3)在線與離線可視化.離線可視化表示對已經完成訓練的模型的可視化,在可視化過程中僅通過測試樣例輸入,而無需對模型本身的結構或參數進行任何修改.在線可視化則需要修改模型結構并重新訓練模型,典型的在線可視化方法如CAM,需要為網絡末端添加GAP 層,然后重新訓練模型.

4)模型明晰的和模型不可知的.模型明晰的方法將模型視作白盒,事先知道模型結構并能獲取模型的參數和激活值等內部信息.模型不可知的方法將模型視作黑盒,僅能獲取模型的輸入和輸出,對模型的其他信息(如網絡結構和參數等)并不了解.除簡單擾動、LIME 和SHAP 方法外,其他均為模型明晰的方法.

5)可視化視角.包括從解釋神經元的激活、層的表征、輸出類別等方面來理解CNN 的表征.以反向傳播可視化為例,通常以輸出類別的分數開始,反饋到輸入空間得到熱力圖,即表示從輸出類的角度進行可視化.注意力掩碼通常以在線的方式,直接觀察中間層的特征圖,從而理解CNN 模型訓練效果的好壞.

6)局部解釋和全局解釋.局部解釋一般僅以單個輸入樣本為指導,根據對該樣本的可視化結果來理解CNN 在該輸入下的表征與決策.全局解釋側重從整個模型的角度,理解模型所學習到的知識和決策規則等.顯然,解釋CNN 對單個樣本的決策結果比理解CNN 模型整體更加簡單,因此,局部解釋比全局解釋在方法實現上更加容易,表3 所列方法多數屬于局部解釋方法.

2.2.2 結果比較

由于不同方法生成的熱力圖效果并不相同,后處理對于最終結果的比較非常重要,圖31 總結了一些基本的熱力圖處理技巧.

圖31 熱力圖的后處理與效果對比Fig.31 Post-processing and effect comparison of heatmap

方式1 表示3 通道熱力圖(如VBP、GBP、反卷積等基于反向傳播的方法)在各通道像素值的相加求和后,可轉換為單通道熱力圖,視覺效果上等同于將彩色圖轉換為灰度圖.

方式2 表示單通道熱力圖(如CAM)在通道復制后,可轉換為3 通道熱力圖.由于各通道數值相同,因此,其視覺效果與單通道熱力圖相同.

方式3 表示單通道熱力圖(如CAM)轉換為3通道熱力圖.與方式2 不同的是,該方式使用OpenCV等工具包中的偽彩色函數生成偽彩色圖.這種后處理在CAM 類方法中比較常見,用于區分圖像中的物體類別.

利用上述熱力圖后處理方法,選擇幾種典型可視化方法進行效果對比,圖32(a)為VBP[23],圖32(b)為GBP[50],圖32(c)為Smooth gradient[52],圖32(d)為Integrated gradient[53],圖32(e)為Guided Grad-CAM[63],圖32(f)為LRP[58],圖32(g)為Grad-CAM[63],圖32(h)為Score-CAM[66],圖32(i)為簡單擾動[13],圖32(j)為有意義的擾動[44].圖32 對比展示了這些方法的測試效果[83].

圖32 可視化方法的效果比較.每張輸入圖像分別展示了灰度和彩色兩種可視化結果Fig.32 Comparison of the effects of visualization methods.Each input image shows two visualization results of grayscale and color image

從可視化結果來看,基于梯度的方法生成散點形式的熱力圖,這與梯度方法的逐元素反向傳播有關.上述幾種梯度方法生成的散點圖中的噪聲越來越少,效果上呈現出逐漸改善的趨勢.對于不同的輸入圖像,由于圖像中前景物體及背景的復雜程度不同,使用某一種方法得到的可視化效果并不總是特別理想.但總體上看,GBP 和Smooth gradient方法更能將關注度集中在前景物體上.LRP 方法則傾向于可視化目標的輪廓特征,可作為一種物體邊緣檢測器使用.

CAM 類方法生成的類激活圖能夠實現區域級可視化效果,這一點與梯度類方法區別較為明顯.CAM 類方法的優勢在于類別區分性,這種特性使其能夠應用于含有多個不同類目標的場景,實現目標定位任務.設定適當的閾值二值化處理類激活圖,然后生成目標的邊框,即可實現圖像級標簽下的弱監督目標定位.

基于擾動的方法對應的熱力圖較為平滑,這與所使用的擾動策略有關.擾動方法需要多次前向傳播,相比于其他方法更耗時.由于擾動方法直接在輸入空間進行修改,有時可能無意中擾動出對抗性輸入,使相應的可視化結果出現誤差[44].另外,若所能獲取的有關目標模型的知識有限,可優先選擇擾動方法進行可視化,因為擾動方法多數是模型不可知的方法,這是其重要優勢.

3 可視化效果的評估

可視化效果評估用于度量不同方法的解釋效果,指導用戶針對特定任務選擇合適的可視化方法.具體來講,可從以下兩個方面對可視化效果進行評估:有效性和魯棒性.

3.1 有效性

3.1.1 定性評估

定性評估方法在表征可視化研究的早期被經常使用,依靠人的視覺感觀來評價解釋結果是否符合人的認知.由于定性評估具有簡單直觀、便于理解等優點,至今仍廣泛使用.常用的定性度量標準有以下3 個:

1)視覺連貫性.熱力圖需要關注感興趣的目標區域,忽略其他不相關區域.在視覺連貫性標準下,熱力圖中突出的區域對感興趣目標的覆蓋越全面、冗余部分越少,表明可視化效果越好.

2)視覺可分辨性.熱力圖需要與預測結果中的不同類別相對應,這對于含有多個不同類別目標的圖像來說至關重要.例如,在同時含有“Dog”和“Cat”的圖像中,“Dog”的熱力圖應該聚焦與之對應的圖像區域,而盡量去除與“Cat”相關的區域.視覺可分辨性對應于可視化方法的類別區分性特點,用于評估熱力圖能否針對特定類別進行可視化,以定位僅與該類別其相關的區域和特征.

3)多目標可視化.當多個同一類別的目標同時出現在圖像中時,可視化方法需要同時定位多個目標,而沒有遺漏其中的某個目標.

此外,解釋結果的客觀性也應作為一種評價可視化方法有效性的標準,即解釋結果是否真實的反映了模型的決策依據,而非按照“預期”尋找到了人類所希望的決策依據.例如,文獻[78]的實驗表明,分類器做出的決策可能依據目標周圍的環境因素,而目標自身卻不是主導因素.該情形下,解釋方法只能對分類器的分類依據如實解釋,而非按照人的期望去定位目標主體的某些特征.文獻[84]的研究同樣驗證了這一點,若分類器從數據集中學習到“女性面部涂口紅,男性面部不涂口紅”這種帶有一定“偏見”的事實,導致分類器面對“涂有口紅”的男性圖像時,仍將其判定為“未涂口紅”.此時,盡管分類器結果錯誤,但解釋方法應當遵循分類器的決策依據,定位于男性面部的其他特征,將其作為判定為“男性”,進而“未涂口紅”的依據.而非像人所認為的那樣,直接對該圖像的嘴唇位置進行定位,這樣的解釋結果與分類結果將出現明顯不一致的現象,無法客觀地解釋分類器的決策依據.

盡管解釋的客觀性問題在相關文獻中較少被提及,但也應引起注意.只有讓解釋方法客觀、真實地反映模型的決策依據,才能使人真正理解并診斷其存在的問題,進而改進與優化.

3.1.2 定量評估

定量評估方法按照某種得分規則,計算數據集上所有圖像的可視化結果的平均得分,從而定量比較各方法的優劣.這里介紹3 種典型的定量評估方法.

1)弱監督目標定位[63-64].使用目標定位任務的指標來評價可視化方法的目標定位效果.具體方法為:按照設定的閾值處理熱力圖以生成邊框,然后和真實邊框進行比較,計算交并比(Intersection over union,IoU).對于某個定位結果,IoU >0.5表示成功定位該目標,以此在整個數據集上計算定位準確率.該方法多用于評價CAM 這類目標區分性較好、具有區域級可視化效果的方法.

由于某些細粒度的可視化方法更易定位與預測最相關的像素,而非尋求覆蓋目標整體,因此,熱力圖對應的邊框將會定位在目標的局部區域,導致IoU 值總體偏小.此時,IoU 值無法反映解釋結果的優劣,表明這種評價方法具有一定的局限性[66].

2)指向游戲[75].對于特定類別目標的熱力圖,計算其最大激活值是否落入該類別的一個實例的邊框中,若落入則計入指向成功1 次(#Hit),否則不計入(#Miss),以此計算每個目標類別的定位準確率Acc=#Hits/(#Hits+#Misses).最終使用不同類別的平均準確度作為度量標準.

指向游戲只考慮熱力圖的最大值點,無需突出特定目標的全部區域,僅需對熱力圖最少量的后處理,這樣對不同特點的熱力圖更公平.其可能的缺點在于熱力圖自身的噪聲問題,最大值點可能來自極值噪聲點,導致評價結果產生誤差.

3)隨機性檢驗.文獻[85]提出隨機性檢驗方法,用于評估可視化方法的適用范圍和解釋質量.分為兩種隨機化檢驗:一種是模型參數隨機化,使用隨機化模型參數和預訓練模型參數加載模型,對比這兩種情形下可視化方法的輸出變化,以檢驗該方法是否對模型參數敏感;另一種是數據隨機化,對訓練數據標簽進行隨機化打亂并重新訓練模型,與未打亂標簽的可視化結果進行對比,檢驗該方法是否對訓練數據標簽敏感.

隨機性檢驗已成為廣泛認可的基準測試方法,用于檢驗可視化方法是否能有效實現解釋,從而區分出對模型參數和訓練數據標簽并不敏感的可視化方法.這種不敏感的可視化方法的真實作用相當于一個獨立于模型的邊緣檢測器,而非一個有效的解釋器.文獻[85]通過該實驗驗證了VBP 和Grad-CAM 的有效性,而GBP 和Guided Grad-CAM 等未通過檢驗.

3.2 魯棒性

可視化方法的魯棒性與CNN 模型的魯棒性不同.CNN 模型的魯棒性是指模型的預測結果不會因為對抗攻擊而發生明顯變化.可視化方法的魯棒性是指在面臨對抗攻擊時,可視化方法仍能夠提供準確有效的解釋.為此,本文將對抗攻擊分為以下2 種情形:1)攻擊模型預測結果,測試解釋結果是否隨之改變;2)攻擊解釋結果,測試其是否會被誤導.

3.2.1 穩定性

可視化方法的穩定性是指在模型預測受到對抗攻擊時,可視化方法的解釋結果仍能保持穩定而不發生顯著變化.其中,用于攻擊模型預測結果的對抗樣本xadv具有以下3 個特點:

1)對原圖x施加擾動δ后得到對抗圖像xadv,xadv相對于x的變化在視覺上難以感知,滿足||δ||=||xadv-x||?ε(ε表示較小常數),保證擾動后圖像的視覺不變性;

2)圖像分類模型f對xadv的分類結果將會極大的改變,即f(xadv)f(x);

3)解釋方法g產生的解釋結果不會因為擾動而發生顯著變化,滿足g(xadv)≈g(x).

這里簡單介紹一種經典的基于梯度的對抗攻擊方法 (Fast gradient sign method,FGSM)[86],可用于攻擊模型的預測結果,檢驗可視化方法的解釋結果是否仍保持穩定.FGSM 利用梯度上升方法,通過優化輸入圖像來最大化損失函數,使模型產生誤分類的結果,此時對應的輸入圖像即為對抗圖像.FGSM 方法形式化如下:

式中,?xJ(θ,x,f(x))表示原圖對應初始類別的梯度.sign(·)表示符號函數,根據梯度正負取+1 或-1.?表示擾動系數.FGSM 的具體過程如圖33 所示.其中,x表示輸入圖像,f(x)的結果為“Panda”,置信度為57.7%.擾動量大小?=0.07.經過“Nematode”的擾動后,擾動后的圖像雖然在視覺上仍為“Panda”,但卻被分類為“Gibbon”,且置信度高達99.3%.

圖33 FGSM 生成對抗樣本的過程[87]Fig.33 The process of generating adversarial example by FGSM[87]

文獻[63]和文獻[66]使用FGSM 對抗樣本測試Grad-CAM 生成的類激活圖的穩定性,如圖34所示.圖34(a)和(b)分別表示原圖和對抗圖像,原圖分類結果為Boxer:0.40,Tiger Cat:0.18.對抗圖像的分類結果為Airliner:0.9999.在圖34(c)和圖34(d)中,針對對抗圖像,使用Grad-CAM 分別對Boxer (Dog)和Tiger Cat (Cat)進行定位時,仍可以穩定地找出相關目標區域,盡管此時這兩種目標的分類置信度非常低.這表明Grad-CAM 產生的解釋具有一定的穩定性,可以抵抗針對模型預測結果的對抗攻擊.

圖34 使用FGSM 對抗樣本測試Grad-CAM 的穩定性[63]((a)原圖;(b)對抗圖像;(c)Grad-CAM“Dog”;(d)Grad-CAM“Cat”)Fig.34 Using FGSM adversarial example to test the stability of Grad-CAM[63] ((a)Original image;(b)Adversarial image;(c)Grad-CAM“Dog”;(d)Grad-CAM“Cat”)

盡管這是一種測試可視化方法穩定性的方法,但文獻[88]認為,當模型分類結果受到攻擊時,解釋結果應當隨著分類結果的改變而改變,即解釋方法應該嘗試對新的分類結果進行解釋,而不應保持原來的解釋不變,這樣才是一種忠實的解釋方法.由此可見,這種穩定性測試方法的合理性仍存在一定疑問.根據這種思路,即可視化結果應當與新的誤分類結果相對應,文獻[88]使用可視化方法來檢測對抗樣本,從而找出其中誤導分類結果的特征.

3.2.2 抗欺騙性

可視化方法的抗欺騙性是指可視化方法自身受到對抗攻擊時,解釋結果能夠抵抗這種欺騙性的攻擊,仍能實現有效的解釋.

文獻[89]指出,可視化方法生成的顯著圖可以被人為設計的對抗樣本操縱.通過對輸入施加視覺上難以察覺的擾動,使網絡的輸出近似保持不變,顯著圖卻可以被任意改變.也就是說,這種對抗樣本的攻擊對象不是模型預測結果,而是對預測結果的解釋.用于攻擊可視化方法的解釋結果的對抗樣本xadv具有以下3 個特點[90]:

1)對原圖x施加擾動δ后得到對抗圖像xadv.xadv相對于x的變化在視覺上難以感知,滿足||δ||=||xadv-x||?ε(ε表示較小常數),保證擾動后圖像的視覺不變性;

2)圖像分類模型f對xadv的分類結果基本不變,即f(xadv)=f(x);

3)解釋方法g產生的解釋結果g(xadv)將根據擾動的變化而變化g(x),使之偏離原來的解釋結果,即滿足g(xadv)g(x).

一種典型的針對解釋結果的攻擊方法如圖35所示,圖35 中3 個CNN 表示同一個待解釋的預訓練CNN.其中,Con 表示原圖x的分類置信度,Exp 表示對應的解釋.使用均方誤差損失作為約束,使對抗圖像的分類結果f(xadv)逼近原圖的分類結果f(x),而解釋結果g(xadv)則逼近目標圖的解釋結果g(xtarget),最終的目標函數是兩者的加權和:

圖35 針對可視化結果的攻擊Fig.35 Attacks on the visualization results

式中,xtarget表示用于誘導解釋結果的目標圖像,λ1和λ2為2 部分的權重參數.

攻擊結果如圖36 所示,圖36(a)為目標圖像xtarget,圖36(b)為原圖x,圖36(c)為對抗圖像xadv,圖36(e)~(g)分別表示對應的顯著圖.由圖36 可以看出,g(xadv)被誘導偏向g(xtarget),顯示出一只鳥的輪廓.與此同時,f(xadv)卻基本保持不變.

對于使用隨機初始化的原圖生成的對抗圖像圖36(d),同樣可以使用上述攻擊方法,使其對應的顯著圖36(h)被誘導偏向目標圖的解釋圖36(e),盡管原圖和對抗圖像本身沒有任務的語義信息.最終,分類器對對抗圖像圖36(d)的分類結果圖36(b)相近,解釋結果與圖36(e)相近,但對抗圖像圖36(d)從視覺上看僅是一幅噪聲圖像.可見,顯著圖解釋方法的抗欺騙能力的確存在漏洞,而目前對于造成這一問題的原因分析仍在探索之中[90].

圖36 使用GAN 生成的目標圖像誘導對LRP 顯著圖的攻擊[82,90]Fig.36 Using the target image generated by GAN to induce an attack on the LRP saliency map[82,90]

上述分析顯示,在輸入圖像未被顯著改變、分類結果也保持不變的情形下,針對分類結果的解釋卻可以被明顯改變而偏向任意目標的解釋,表明可視化方法存在被欺騙的可能.文獻[91]從另一種思路出發,通過重新微調模型參數,使微調后的模型的預測結果大致不變,但解釋結果卻可以被任意引導.文獻[92]對自解釋模型所提供的解釋的魯棒性進行了評估,發現通過創建這樣一些對抗性輸入,會使自解釋模型提供錯誤的解釋,表明現有的自解釋模型提供的解釋魯棒性并不好,無法經受住對抗性攻擊.另一方面,為了提升可視化方法的魯棒性,使其不易被誤導,文獻[93]將顯著圖應用到模型訓練中,對訓練集進行數據增強,從而訓練出歸因魯棒性較好的模型.

4 可視化的應用

4.1 理解與解釋模型

表征可視化是理解CNN 模型的一種重要途徑,在圖像領域應用廣泛,常見于圖像分類、場景識別等任務的可視化解釋.本文第3 節所述的表征可視化方法常用于對基于CNN 的圖像分類器的解釋,例如,AM 方法用于可視化網絡對輸入圖像的偏好,從另一種角度揭示了網絡對何種輸入模式的依賴性較強.注意力掩碼能夠告訴設計者網絡的關注點,這使其自身具有一定的可解釋特性,因此,基于注意力掩碼的可視化方法不僅可以驗證注意力機制自身的有效性,也常用于觀察網絡的訓練效果.

此外,表征可視化方法也可以應用在其他類型的數據,例如,CAM 這類方法具有較好的類別區分性,能夠用來確定與特定輸出類別相關聯的圖像區域,可在視覺問答模型中幫助定位與問題最相關的圖像區域.LRP 方法在制定反向傳播規則時依靠網絡的權重與激活值,而非特征圖和通道等圖像領域的概念.因此,它不僅適應于圖像識別任務的解釋,還可以用于可視化機器翻譯、語音識別[94]等任務中,為這些領域的研究者提供了另一種理解模型的途徑.

4.2 診斷與優化網絡

在CNN 學習效果診斷和結構優化上,基于反卷積的可視化能夠觀察任意層的神經元的激活,從而分析CNN 的學習率、卷積核尺寸及步長等重要參數的設計是否達到最優.文獻[13]使用基于反卷積的可視化方法對AlexNet 內部激活進行分析與改進,進而提出了ZFNet,獲得了2013 年ImageNet 數據集圖像分類任務冠軍.這種基于表征可視化的針對性分析和診斷方式,很大程度上避免了盲目的參數調優.文獻[95]利用基于梯度的可視化方法指導單像素的對抗性擾動和對抗性分析,幫助模型進行對抗性學習.文獻[88]則使用顯著性方法檢測對抗樣本,避免模型受到對抗攻擊.文獻[72]使用Grad-CAM 產生的類激活圖來觀察網絡中間層表征,分析對比不同結構設計對模型訓練效果的影響.此外,CAM 這類方法還可用于提供自注意力,優化CNN 的結構設計.例如,文獻[73]和文獻[77]使用Grad-CAM 生成自注意力的掩碼作為圖像蒙版,用于去除圖像中的非重要區域,并將處理后的圖像應用于下階段的模型訓練和推理.文獻[96]將CAM 方法集成到圖像轉換模型的自注意力模塊中,引導模型關注源域與目標域之間的判別性區域,從而提升圖像轉換模型對細節的關注能力.

4.3 其他方面

除了對CNN 本身的理解與診斷,可視化方法在其他任務上也有不斷拓展與延伸,例如CAM 和Grad-CAM 方法在弱監督目標定位任務上取得了非常好的效果.文獻[93]進一步探索了將顯著性歸因方法產生的顯著圖作為先驗,應用于弱監督的分割任務上.在應用領域方面,可視化方法能夠提升對推薦系統決策結果的理解[97],以及與知識圖譜的結合來實現可解釋的推薦算法[98].對于自動駕駛[99-100]以及智能醫療[101]等領域,由于這些領域對于決策風險的承受能力較低,可視化方法對這些領域應用的現實落地至關重要.

5 存在的難點及發展趨勢

5.1 難點分析與趨勢展望

近年來,CNN 表征可視化相關研究越來越多,研究者們提出了各種可視化方法,極大推動了該領域的進展,但仍存在一些難點問題有待解決,本節對其進行了歸納,并分析了未來可能的研究趨勢.

1)對于可視化方法,仍存在噪聲、穩定性、解釋能力有限等問題.

通過對多種可視化方法的實驗比較發現,多數可視化方法生成的熱力圖含有一定的噪聲,噪聲產生的原因仍沒有權威統一的解釋.同時,面對不同圖像時的可視化效果不盡相同,有些圖像可能直接導致可視化方法的失效,而失效的原因尚不清楚,仍有待進一步的探究.此外,面對復雜背景條件的圖像、多目標場景、小目標圖像等,受限于模型本身在面對這些情形時的性能約束,可視化方法的解釋效果并不一定好.未來可能的研究趨勢是將可視化方法與其他解釋方法的結合,從不同側面不同角度解釋模型,從而緩解單一可視化方法解釋效果受限的問題.

2)對于可視化效果的評估,仍欠缺標準統一的評估方法.

目前很難找到適用于大多數可視化方法的評估標準,原因在于許多方法的目標并不相同,也即每種方法對“可解釋性”的理解并不相同,導致各種可視化方法的解釋結果差別較大.同時,很多可視化方法自身同樣缺乏清晰明確的數學與邏輯機理,導致結果難以量化比較.如果可以從“可解釋性”的概念出發,統一數個可解釋性的標準,那么對于可視化結果的評估也就有了依據.同時,還可以根據可視化方法產生的熱力圖的特點進行分類評價,每類熱力圖使用與之適應的評價標準,提升其側重解釋某方面的能力.

3)對于可視化的對象,細粒度的識別模型難以可視化解釋.

可視化方法多應用于對圖像分類、目標定位及場景識別等任務的解釋,能夠實現對多目標圖像中語義級目標的區分.例如,“Cat”和“Dog”雖然同屬動物,但是在語義級上屬于明顯不同的兩種動物.而單獨對于“Cat”這一動物,實現的不同品種貓的細粒度圖像分類,受限于分類網絡自身準確性,可視化方法很難找到用于區分目標的細節特征,此時的解釋效果非常有限,甚至對于不同的目標可視化效果始終相同.與人們的視覺觀察及解釋能力相差較遠.這一問題或許可以通過視覺解釋與語言解釋相結合的途徑來改善解釋效果.對可視化解釋難以描述的細微之處,輔助加以自然語言描述形式的解釋(比如對貓的顏色、貓耳形狀的描述),能夠實現更好的解釋效果.

4)對于可視化解釋的完備性,現有研究中的解釋結果與預測結果無法相互印證.

理論上看,一個完備可靠的解釋可以使用戶從中推理并得到被解釋的預測結果,而目前的可視化方法仍不具備這一能力,僅能從預測結果中得到解釋結果,而無法根據解釋來推斷出模型的預測,即兩者之間的相互印證關系沒有被建立起來.例如,如果可視化方法給出了錯誤的解釋,但這一解釋恰好符合用戶根據預測結果推測的預期解釋,進而使得用戶相信了解釋的可靠性,這將對其形成誤導.此時,若能根據解釋結果推斷預測結果,發現推斷出的預測結果和實際預測結果不相符合,則可通過進一步分析發現其中存在的問題,從而提升用戶對可視化方法的信任.

5.2 學界近年來的關注

近年來,眾多人工智能領域頂級會議關注人工智能和深度學習可解釋問題,其中許多涉及到表征可視化方面的前沿研究,如[102]:

1)IJCAI 2020 Tutorial on Trustworthiness of Interpretable Machine Learning;

2)CVPR 2020 Tutorial on Interpretable Machine Learning for Computer Vision;

3)ICCV 2019 Workshop on Interpretating and Explaining Visual Artificial Intelligence Models;

4)ICLR 2019 Workshop on Safe Machine Learning;

5)CVPR 2019 Workshop on Explainable AI;

6)AAAI 2019 Workshop on Network Interpretability for Deep Learning;

7)IJCAI 2018/2017 Workshop on Explainable Artificial Intelligence;

8)ICML 2018 Workshop on Human Interpretability in Machine Learning;

9)NIPS 2017 Interpretable Machine Learning Symposium.

表4 列舉了可解釋性深度學習研究領域的部分綜述文獻,對各文獻的內容側重作了簡要介紹,其中包含CNN 表征可視化的相關內容.

表4 CNN 表征可視化相關的綜述文獻統計Table 4 Review literature statistics related to CNN representation visualization

5.3 開源工具

CNN 可視化的相關開源工具,一些研究人員在GitHub 等網站開源了多種方法綜合的代碼包,這對于表征可視化研究及遷移到其他任務使用具有重要價值.

文獻[103]對2016 年以前的可視化方法作了詳細調研和分類整理,將其中主流方法分為修改輸入的方法(如基于擾動的方法)、反卷積類方法和重建輸入的方法(如激活最大化方法)三類.根據這些方法開發了基于MatConvNet 框架[112]的CNN 可視化工具包FeatureVis,適用于Matlab 平臺上的CNN 可視化.

Ozbulak[83]發布了一個內容豐富的開源代碼包,實現了10 余種可視化方法,包括梯度方法(如VBP、GAP、Smooth gradient、Integrated gradient 等)和類激活映射方法(如Grad-CAM、Score-CAM 等).該源碼包基于PyTorch 框架,已經被許多研究人員關注和使用,受到領域內好評,目前仍在更新與拓展中.

韓國科學技術院的Kim[113]發布了基于Tensorflow 框架的可視化源碼包,該源碼包含有梯度類方法、CAM 類方法、激活最大化方法等,配有詳細的使用教程,對各種方法的原理及實現過程的介紹細致,適合初學者使用.

此外,佐治亞理工學院的Wang 等[114]實現了對CNN 網絡的交互式可視化,可對CNN 網絡各層的卷積、激活和池化操作的數據流向及中間層特征圖進行實時展示,支持交互式的選擇輸入圖像,實時觀察各層的數據流向及表征情況.雖然該工具更多關注于CNN 網絡中數據流的走向,而非解釋CNN 中間層特征的語義,但也非常有利于理解CNN的內部表征.

6 結束語

本文圍繞CNN 表征可視化研究,詳細梳理了該領域近年來相關的文獻,從基礎概念及內容、常見方法的分類與比較、效果的評估及應用等方面進行了詳細介紹.其中,對常見的可視化方法的分類和介紹是本文的重點內容,該部分詳細分析了各種算法的過程,歸納了每一類方法的特點,并對它們的效果進行了比較.最后,對該領域仍存在的難點和未來的研究趨勢作了總結和展望.

隨著表征可視化研究的深入,人們對CNN 的特征學習和預測機制的理解也會更加深刻.同時,其他類型的可解釋性方法也在不斷發展中,在它們的共同作用下,不斷推動可解釋性深度學習的發展.期待未來實現可理解的、透明的和高效的深度學習方法.

猜你喜歡
可視化特征方法
基于CiteSpace的足三里穴研究可視化分析
基于Power BI的油田注水運行動態分析與可視化展示
云南化工(2021年8期)2021-12-21 06:37:54
基于CGAL和OpenGL的海底地形三維可視化
如何表達“特征”
“融評”:黨媒評論的可視化創新
傳媒評論(2019年4期)2019-07-13 05:49:14
不忠誠的四個特征
當代陜西(2019年10期)2019-06-03 10:12:04
抓住特征巧觀察
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
捕魚
主站蜘蛛池模板: 婷婷五月在线| 一级毛片在线免费视频| 热99re99首页精品亚洲五月天| 国产成人午夜福利免费无码r| 国产亚洲一区二区三区在线| 国产一级无码不卡视频| 日韩精品资源| 青青青视频91在线 | 区国产精品搜索视频| 国产AV毛片| 日本道综合一本久久久88| 在线观看91精品国产剧情免费| 日韩高清一区 | 国产精品嫩草影院视频| 999精品视频在线| 996免费视频国产在线播放| 精品人妻无码中字系列| 精品超清无码视频在线观看| 日本三区视频| 波多野结衣在线一区二区| 亚洲综合九九| 丁香婷婷激情网| 美女国产在线| 97视频免费看| 原味小视频在线www国产| 欧美在线一级片| 在线观看亚洲国产| 精品人妻一区无码视频| 久久一色本道亚洲| 在线亚洲精品自拍| 国产办公室秘书无码精品| 国产手机在线ΑⅤ片无码观看| 中国精品久久| 成人福利在线免费观看| 中日韩欧亚无码视频| 欧美专区日韩专区| 亚洲欧美另类视频| 亚洲综合欧美在线一区在线播放| 久久国产成人精品国产成人亚洲 | 一本久道久久综合多人| 日韩福利在线观看| 免费 国产 无码久久久| 国产成人亚洲精品色欲AV | 亚洲日本一本dvd高清| 99这里只有精品免费视频| 国产精品理论片| 国内精品小视频福利网址| 免费毛片全部不收费的| 午夜性刺激在线观看免费| 在线观看热码亚洲av每日更新| 亚洲成人网在线播放| www.99精品视频在线播放| 欧美日韩国产综合视频在线观看 | 国产麻豆va精品视频| 欧美国产成人在线| JIZZ亚洲国产| 欧美一道本| 国产网站在线看| 国产女人在线| 久久青草精品一区二区三区| 超薄丝袜足j国产在线视频| 成人亚洲国产| 亚洲清纯自偷自拍另类专区| 国产小视频在线高清播放| 国产激情无码一区二区免费| 国产欧美视频综合二区| 日韩国产另类| 91久久偷偷做嫩草影院| 久久99精品久久久久久不卡| av一区二区三区在线观看 | 亚洲免费福利视频| 中文字幕在线免费看| 国产成人综合日韩精品无码不卡| 97精品国产高清久久久久蜜芽| 青青草欧美| 亚洲免费黄色网| 亚洲天堂精品视频| 欧美亚洲国产一区| 91精品最新国内在线播放| 欧美亚洲激情| 国产亚洲欧美另类一区二区| 日韩黄色大片免费看|