国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

卷積神經(jīng)網(wǎng)絡(luò)表征可視化研究綜述

2022-08-30 13:50:42司念文張文林羅向陽常禾雨
自動(dòng)化學(xué)報(bào) 2022年8期
關(guān)鍵詞:擾動(dòng)梯度可視化

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

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

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

圖1 傳統(tǒng)機(jī)器學(xué)習(xí)與深度學(xué)習(xí)的學(xué)習(xí)過程對(duì)比[8]Fig.1 Comparison of the learning process between traditional machine learning and deep learning[8]

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

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

本文后續(xù)內(nèi)容安排如下:第1 節(jié)簡(jiǎn)述了CNN表征可視化的相關(guān)概念和研究內(nèi)容;第2 節(jié)梳理了現(xiàn)有的表征可視化方法,對(duì)其進(jìn)行了分類整理;第3 節(jié)介紹了部分可視化效果評(píng)估方法;第4 節(jié)簡(jiǎn)要闡述了可視化方法在一些領(lǐng)域的應(yīng)用;第5 節(jié)探討了該領(lǐng)域仍存在的難點(diǎn)及未來的研究趨勢(shì);第6 節(jié)總結(jié)全文.

1 相關(guān)概念與研究內(nèi)容

1.1 相關(guān)概念

1.1.1 CNN

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

稀疏連接和權(quán)重共享是CNN 相對(duì)于前饋神經(jīng)網(wǎng)絡(luò)的主要特點(diǎn).基于這些經(jīng)典的CNN 結(jié)構(gòu)及其特性,研究人員通過不斷改進(jìn)和優(yōu)化[12],逐漸設(shè)計(jì)出結(jié)構(gòu)更復(fù)雜且識(shí)別性能更優(yōu)異的CNN,以在Imagenet Large Scale Visual Recognition Competition (ILSVRC)數(shù)據(jù)集[2]圖像分類任務(wù)上的優(yōu)勝CNN模型為例:

1)2012 年,Krizhevsky 等[1]提出了AlexNet,在圖像分類任務(wù)上以巨大優(yōu)勢(shì)取得冠軍,成功吸引了學(xué)術(shù)界的關(guān)注,成為新階段CNN 興起的標(biāo)志.

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

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

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

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

6)2017 年,Hu 等[18]提出了壓縮激勵(lì)網(wǎng)絡(luò)(Squeeze-and-excitation networks,SENet),通過特征圖各通道間的權(quán)值自適應(yīng)再調(diào)整,實(shí)現(xiàn)各個(gè)通道之間的特征重標(biāo)定,提升了網(wǎng)絡(luò)的特征提取能力.

CNN 在圖像數(shù)據(jù)處理上有天然的優(yōu)勢(shì),因而在圖像分類、目標(biāo)檢測(cè)、語義分割和場(chǎng)景識(shí)別等領(lǐng)域應(yīng)用廣泛,在其他模態(tài)的數(shù)據(jù)如視頻、語音和文本等領(lǐng)域也有較多應(yīng)用.圖像分類是CNN 最典型的應(yīng)用領(lǐng)域,許多圖像分類系統(tǒng)使用預(yù)訓(xùn)練的CNN進(jìn)行部署.預(yù)訓(xùn)練的CNN 是指已經(jīng)在某個(gè)數(shù)據(jù)集上完成訓(xùn)練的CNN 模型.一般情況下,預(yù)訓(xùn)練的CNN由研究人員設(shè)計(jì)并調(diào)整至最佳狀態(tài),在實(shí)際場(chǎng)景中可以直接使用而無需再訓(xùn)練.由于預(yù)訓(xùn)練CNN 模型在現(xiàn)實(shí)中經(jīng)常使用,因此,針對(duì)預(yù)訓(xùn)練CNN 模型的理解和解釋是可解釋性研究中的一項(xiàng)重要內(nèi)容.

1.1.2 可解釋性

可解釋性是近年來深度學(xué)習(xí)領(lǐng)域的研究熱點(diǎn).可解釋性與可理解性的含義并不相同[19-20],文獻(xiàn)[19]從CNN 特征表示形式的角度出發(fā),對(duì)CNN 的“可解釋性”和“可理解性”做了區(qū)分:可解釋性表示從抽象概念(向量空間、非結(jié)構(gòu)化特征空間)到人類可理解的領(lǐng)域(圖像和文字等)的映射,而可理解性表示可解釋域內(nèi)促使模型產(chǎn)生特定決策的一組特征.從這種區(qū)分看,“可解釋性”研究重點(diǎn)在于將參數(shù)化形式表示的特征映射到人類可直觀感受的表示形式,而“可理解性”側(cè)重在人類可理解的領(lǐng)域中尋找與模型某個(gè)決策相關(guān)的具體特征.也就是說,“解釋”是一種從不可解釋域到可解釋域的映射動(dòng)作,“理解”則是一種在可解釋域內(nèi)尋找感興趣證據(jù)的過程.麻省理工的研究人員認(rèn)為[20],通過“解釋”能夠?qū)崿F(xiàn)對(duì)深度網(wǎng)絡(luò)的“理解”,可解釋性的研究目標(biāo)是以某種人類可理解的方式描述一個(gè)系統(tǒng)的內(nèi)部機(jī)制.同時(shí),將可解釋性的研究內(nèi)容分為DNN 處理過程的理解、DNN 內(nèi)部表征的理解和自解釋的DNN 三個(gè)方面.

深度學(xué)習(xí)可解釋性的研究內(nèi)容非常豐富,本文從可解釋性研究的模型對(duì)象出發(fā),根據(jù)待解釋的目標(biāo)模型是否已經(jīng)完成訓(xùn)練,將深度學(xué)習(xí)可解釋性研究劃分為兩部分:事后解釋和自解釋模型,如圖2所示[21].

圖2 可解釋性深度學(xué)習(xí)的研究內(nèi)容劃分Fig.2 The division of the research content of the interpretable deep learning

事后解釋是對(duì)預(yù)訓(xùn)練模型的解釋.現(xiàn)實(shí)中,由于模型已經(jīng)完成訓(xùn)練和部署,而重新訓(xùn)練模型耗費(fèi)的時(shí)間和資源成本過大,因此不具備重新訓(xùn)練的可能性.針對(duì)這種模型的解釋,需要在不修改模型自身結(jié)構(gòu)及參數(shù)的情況下完成,結(jié)合預(yù)訓(xùn)練模型的輸入、中間層參數(shù)和輸出等信息,實(shí)現(xiàn)對(duì)模型內(nèi)部表征及決策結(jié)果的解釋.

對(duì)于預(yù)訓(xùn)練模型的事后解釋方法,現(xiàn)有研究主要分為以下3 類:

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

2)基于樣例的解釋.基于樣例的解釋是一種基于樣本重要性的解釋方法,采用訓(xùn)練數(shù)據(jù)中的樣本原型作為當(dāng)前決策結(jié)果的解釋[24-25].這種方法模擬人對(duì)事物的解釋過程[26],從數(shù)據(jù)集中已有樣本(已經(jīng)學(xué)習(xí)過)中找到相似樣本,作為對(duì)新的樣本預(yù)測(cè)結(jié)果的比較.

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

自解釋模型不同于事后解釋,其在模型設(shè)計(jì)時(shí)即考慮了內(nèi)在可解釋性,在此基礎(chǔ)上進(jìn)行訓(xùn)練和優(yōu)化,形成結(jié)構(gòu)上或邏輯上具有內(nèi)生可解釋性的模型.自解釋模型能夠在應(yīng)用的同時(shí)由其自身為用戶提供對(duì)輸出結(jié)果的解釋.

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

1)分離式表征:在模型結(jié)構(gòu)或優(yōu)化過程中添加一些約束,以降低模型復(fù)雜性,同時(shí)保證模型的性能,使模型內(nèi)部的表征分離可理解.例如,Zhang等[30]對(duì)濾波器的學(xué)習(xí)進(jìn)行約束,訓(xùn)練出可解釋的濾波器,使每個(gè)濾波器有針對(duì)性地關(guān)注特定目標(biāo)部位.

2)集成方法:結(jié)合傳統(tǒng)可解釋性較好的機(jī)器學(xué)習(xí)方法,構(gòu)建在深度神經(jīng)網(wǎng)絡(luò)的識(shí)別性能和傳統(tǒng)方法的可解釋性之間折衷的新模型.例如,將神經(jīng)網(wǎng)絡(luò)集成到?jīng)Q策樹算法中,使用神經(jīng)網(wǎng)絡(luò)提取的特征作為輸入,這樣訓(xùn)練得到的模型同時(shí)具有兩者的優(yōu)點(diǎn),可實(shí)現(xiàn)決策路徑的清晰可理解[31].

1.1.3 表征可視化

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

1)CNN 表征可視化

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

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

CNN 預(yù)測(cè)過程:實(shí)現(xiàn)從輸入變量到輸出預(yù)測(cè)的映射.其中,輸入變量對(duì)應(yīng)的輸入空間被認(rèn)為是人類可理解的空間(例如圖像和語言文本),而特征編碼對(duì)應(yīng)的特征空間經(jīng)過了CNN 的自動(dòng)特征提取與特征組合.可視化解釋CNN 的目的就是將中間層特征編碼和輸出層預(yù)測(cè)結(jié)果反向映射到輸入空間,實(shí)現(xiàn)不可解釋域向可解釋域的映射.

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

2)CNN、RNN 和生成對(duì)抗網(wǎng)絡(luò)表征可視化的比較

CNN 在圖像數(shù)據(jù)處理領(lǐng)域應(yīng)用較為廣泛,層次化的表征方式使其適用于圖像數(shù)據(jù)逐層學(xué)習(xí)的特性,與人類非常相似.因此,CNN 表征可視化主要研究各個(gè)隱含層所編碼的特征、這些特征的語義含義及與輸入輸出之間的關(guān)系.對(duì)于另外兩種常見的DNN:循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)與生成對(duì)抗網(wǎng)絡(luò)(Generative adversarial network,GAN),表征可視化研究的關(guān)注點(diǎn)略有不同.

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

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

1.2 研究內(nèi)容

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

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

1)可視化方法.從不同的目標(biāo)模型和解釋需求出發(fā),研究不同側(cè)重點(diǎn)的表征可視化方法,從而提升可視化解釋的效果.

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

3)可視化的應(yīng)用.研究可視化方法在相關(guān)領(lǐng)域的應(yīng)用,根據(jù)不同可視化方法的特點(diǎn)為其選擇合適的應(yīng)用場(chǎng)景,例如用于診斷網(wǎng)絡(luò)缺陷、為模型提供面向重要特征的注意力機(jī)制、用于弱監(jiān)督目標(biāo)定位任務(wù)等.

2 可視化方法

2.1 方法分類

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

2.1.1 基于擾動(dòng)的方法

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

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

典型的擾動(dòng)方式分為以下3 種:

1)簡(jiǎn)單擾動(dòng).文獻(xiàn)[13] 使用固定尺寸的像素塊(如2×2),按照從左到向、從上到下的順序依次遮擋圖像的各區(qū)域,觀察各遮擋后圖像的預(yù)測(cè)結(jié)果.針對(duì)特定預(yù)測(cè)類別,分?jǐn)?shù)下降越大,表明此時(shí)被遮擋區(qū)域?qū)τ谠擃悇e越重要,從而形成基于像素塊重要性的顯著圖.文獻(xiàn)[42]認(rèn)為使用隨機(jī)值作為遮擋模塊的填充像素更合理,而不應(yīng)僅使用灰色像素.文獻(xiàn)[43]使用蒙特卡洛抽樣產(chǎn)生多個(gè)擾動(dòng)掩碼Mi用于遮擋圖像(見圖6),利用f對(duì)擾動(dòng)圖像x⊙Mi進(jìn)行分類,從而得到置信度向量,表示該掩碼與各個(gè)類別的關(guān)聯(lián)度大小.最后,使用類別對(duì)應(yīng)的置信度對(duì)各掩碼作線性加權(quán),得到最終的掩碼.

圖6 使用隨機(jī)采樣產(chǎn)生擾動(dòng)掩碼的過程[43]Fig.6 The process of generating a perturbation mask using random sampling[43]

2)有意義的擾動(dòng).文獻(xiàn)[44]認(rèn)為用于遮擋圖像的掩碼是可以學(xué)習(xí)的,而不需要使用簡(jiǎn)單的平移或隨機(jī)等方式盲目的遮擋.使用優(yōu)化思想學(xué)習(xí)到的像素級(jí)擾動(dòng)掩碼有明確的含義,可以更有效地遮擋重要像素,使用的擾動(dòng)方式如下[44]:

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

使用優(yōu)化方式學(xué)習(xí)到的擾動(dòng)掩碼,對(duì)于指定的目標(biāo)類別,可以使掩碼遮擋后的圖像的預(yù)測(cè)分類達(dá)到局部最低,即表示掩碼有效遮擋了圖像中最重要的區(qū)域.該式同時(shí)使用L1 范數(shù)約束掩碼,使擾動(dòng)區(qū)域盡可能小,以實(shí)現(xiàn)擾動(dòng)最少最關(guān)鍵像素的目的.

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

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

此外,還有極值擾動(dòng)[47]和對(duì)抗性擾動(dòng)[48]等方法.總體來看,簡(jiǎn)單擾動(dòng)方法將目標(biāo)網(wǎng)絡(luò)當(dāng)作黑盒,僅需獲取其“輸入-輸出”對(duì),無需接觸網(wǎng)絡(luò)權(quán)重與中間層激活,解釋過程所需的資源較少,但其解釋效果欠佳.更復(fù)雜的擾動(dòng)方法則需要多次優(yōu)化迭代,所需時(shí)間較長.

2.1.2 基于反向傳播的方法

基于反向傳播的方法根據(jù)所設(shè)計(jì)的反向傳播規(guī)則,將網(wǎng)絡(luò)輸出層預(yù)測(cè)值逐層分解并傳播到輸入空間,從而確定輸入-輸出之間的相關(guān)性.輸出層信息回傳過程中,利用模型權(quán)重參數(shù)作為引導(dǎo),結(jié)合網(wǎng)絡(luò)中神經(jīng)元的正向激活值,進(jìn)行逐層反向計(jì)算,直到輸入空間,為每個(gè)變量(或一組變量)分配與輸出預(yù)測(cè)相關(guān)的貢獻(xiàn)值.

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

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

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

2.1.2.1 梯度方法及其變種

1)普通反向傳播(Vanilla backpropagation,VBP).文獻(xiàn)[22]和文獻(xiàn)[23]提出最簡(jiǎn)單的基于梯度的可視化方法,使用網(wǎng)絡(luò)輸出得分的輸入空間中數(shù)據(jù)點(diǎn)的導(dǎo)數(shù),表示該點(diǎn)與輸出結(jié)果之間的相關(guān)性大小,形式化如下:

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

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

VBP 方法的反向傳播過程基于鏈?zhǔn)椒▌t進(jìn)行,由輸入圖像的梯度構(gòu)成顯著圖,顯著圖中較亮位置的梯度絕對(duì)值也越大,這些突出位置顯示了與模型輸出結(jié)果相關(guān)的輸入特征,且相關(guān)性越高則顯著圖中對(duì)應(yīng)特征越明顯.直觀理解,梯度表示模型訓(xùn)練中參數(shù)的更新量,數(shù)據(jù)點(diǎn)的梯度越大表示輸出對(duì)該點(diǎn)的變化越敏感,則該點(diǎn)與輸出的相關(guān)性也越大.因此,這種方法也稱作靈敏度分析方法,用于分析輸出結(jié)果對(duì)輸入特征的變化量的敏感程度.初始得到的顯著圖,通過取絕對(duì)值或取平方等后處理策略,使熱力圖中顯著性區(qū)域更加集中,散點(diǎn)噪聲更少.

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

VBP 和GBP 是2 種最簡(jiǎn)單的梯度方法,但由于深層網(wǎng)絡(luò)的梯度傳播過程中的問題,導(dǎo)致這兩種方法也含有一定的局限性,體現(xiàn)在以下3 個(gè)方面:

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

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

如圖10 所示,左側(cè)表示輸入圖像,右側(cè)表示顯著圖的解釋結(jié)果.在第1 行中,梯度突出的區(qū)域偏向左上方,表明該區(qū)域?qū)Α皉eflex camera”標(biāo)簽更重要,而原圖中對(duì)應(yīng)區(qū)域并沒有實(shí)際含義.在第2 行中,去除這部分區(qū)域后,在預(yù)測(cè)類別不變且置信度增加的情形下,梯度突出的區(qū)域卻發(fā)生了改變.從中可以看出,對(duì)于一些特殊的圖像,梯度自身能否表明像素重要性值得懷疑.

圖10 梯度不穩(wěn)定導(dǎo)致解釋結(jié)果的不確定性[51]Fig.10 Uncertainty of interpretation results due to gradient instability[51]

3)梯度噪聲.梯度對(duì)應(yīng)的顯著圖中,散點(diǎn)噪聲較多,只能從整體上觀察顯著圖中較模糊的目標(biāo)信息.目前的研究對(duì)這些噪聲的出現(xiàn)作了一些假設(shè),但仍有待進(jìn)一步探討.圖11 表明了梯度顯著圖的噪聲問題,與給定的邊框相比,顯著圖中高亮區(qū)域含有較多的框外散點(diǎn)噪聲.

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

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

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

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

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

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

3)整流梯度.Kim 等[54]深入對(duì)比了現(xiàn)有的梯度反向傳播方法,并提出假設(shè)認(rèn)為,由于CNN 在前向傳播中本身含有噪聲,導(dǎo)致反向傳播中相應(yīng)元素位置會(huì)出現(xiàn)梯度噪聲.為了處理掉顯著圖中的噪聲,通過設(shè)置適當(dāng)?shù)拈撝?使重要性分?jǐn)?shù)超過該閾值的神經(jīng)元的梯度才會(huì)被反向傳播,從而過濾非重要的特征.

此外,文獻(xiàn)[55]還提供了梯度歸因方法的比較基準(zhǔn).文獻(xiàn)[56]對(duì)幾種基于梯度的可視化方法的效果作了詳細(xì)對(duì)比,引入了一種量化評(píng)價(jià)標(biāo)準(zhǔn)sensitivity-n統(tǒng)一進(jìn)行度量.文獻(xiàn)[57]采用聚合的思路,對(duì)幾種方法的結(jié)果進(jìn)行聚合,實(shí)現(xiàn)更加穩(wěn)定的解釋.總體來看,梯度方法及其變種主要依靠基于梯度的反向傳播實(shí)現(xiàn)解釋過程,各種方法在傳播規(guī)則上略有不同,表1 對(duì)比了各方法的特點(diǎn).

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

2.1.2.2 反卷積

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

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

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

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

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

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

3)池化層:使用最大值池化過程中,僅取每個(gè)池化窗口中的最大值,并紀(jì)錄各最大值在整張?zhí)卣鲌D中的位置,稱為switches.它可以在反向池化過程中,按照紀(jì)錄的位置恢復(fù)最大值.過程如下:

對(duì)于反卷積過程,形式化如下:

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

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

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

上述過程表明,反卷積和正向卷積相似,可對(duì)特征圖連續(xù)處理,從中間層恢復(fù)到輸入層,實(shí)現(xiàn)上采樣效果.該過程中,僅逐層恢復(fù)較強(qiáng)的激活值,一直到輸入空間,這樣可以發(fā)現(xiàn)輸入空間中哪些特征引起了中間層某些較強(qiáng)的激活.

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

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

2.1.2.3 LRP 及其變種

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

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

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

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

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

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

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

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

約束2.輸入空間貢獻(xiàn)值由函數(shù)值f(x)分配.f(x)為網(wǎng)絡(luò)輸出層目標(biāo)神經(jīng)元的函數(shù)值,其值等于輸入空間所有變量的相關(guān)性值之和:

約束3.層級(jí)相關(guān)性分值守恒.函數(shù)值f(x)對(duì)中間各層神經(jīng)元的相關(guān)性值分配滿足守恒定律:

約束4.第l層某個(gè)神經(jīng)元被分解出的相關(guān)性值,等于其流向的第l-1 層中所有神經(jīng)元的相關(guān)性值之和:

約束5.第l層某個(gè)神經(jīng)元被流入的相關(guān)性值,等于第l+1 層所有流向該神經(jīng)元的相關(guān)性值之和:

上述定義和約束規(guī)定了相關(guān)性值的含義及守恒原則,對(duì)應(yīng)的示例如圖17 所示,其中實(shí)線對(duì)應(yīng)約束4 的內(nèi)容,虛線對(duì)應(yīng)約束5 的內(nèi)容.

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

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

以上是化簡(jiǎn)后的α和β規(guī)則.在實(shí)際應(yīng)用中,取α=1,β=0,由式(18)和式(19)分別得到:

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

盡管LRP 的傳播規(guī)則非常細(xì)致,但初始情形下的相關(guān)性值僅考慮了目標(biāo)類別的神經(jīng)元,忽視了其他類別神經(jīng)元的作用,即:

式中,N表示第L層神經(jīng)元的總個(gè)數(shù).進(jìn)一步地,Iwana 等[60]提出了Softmax 梯度層級(jí)相關(guān)性反饋(Softmax-gradient LRP,SGLRP),將Softmax 梯度信息引入初始相關(guān)性分?jǐn)?shù)值,以區(qū)分其中的各個(gè)類的比例:

2.1.2.4 深度泰勒分解

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

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

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

2.1.2.5 小結(jié)

本節(jié)介紹4 種基于反向傳播的可視化方法,核心思想是通過設(shè)計(jì)一定的反向傳播規(guī)則,將CNN網(wǎng)絡(luò)輸出結(jié)果反向傳播到輸入空間,為輸入空間的各個(gè)變量分配相關(guān)性值,以衡量其對(duì)預(yù)測(cè)值的貢獻(xiàn),這樣在輸入空間形成了由相關(guān)性值構(gòu)成的圖像,即熱力圖.熱力圖以不同明暗強(qiáng)度的形式表明各像素點(diǎn)與預(yù)測(cè)值之間的相關(guān)性.最簡(jiǎn)單的反向傳播規(guī)則依靠網(wǎng)絡(luò)自身梯度反向傳播中的鏈?zhǔn)椒▌t,如VBP方法.更復(fù)雜的則采用自定義的反向傳播規(guī)則,如LRP 和DTD.

2.1.3 類激活映射

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

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

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

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

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

式中,求和元素為通道k內(nèi)部每個(gè)神經(jīng)元激活值的梯度,Z表示歸一化因子.將得到的類激活圖和GBP 得到的顯著圖逐點(diǎn)相乘,能夠?qū)崿F(xiàn)這兩種熱力圖特點(diǎn)的融合,生成細(xì)粒度的、含有類別區(qū)分性的熱力圖.

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

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

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

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

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

2.1.4 激活最大化

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

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

首先,使用帶標(biāo)注訓(xùn)練集樣本 {xt,yt},按照設(shè)計(jì)的目標(biāo)函數(shù),對(duì)CNN 進(jìn)行參數(shù)優(yōu)化并保存,將該網(wǎng)絡(luò)稱作目標(biāo)CNN,即圖中實(shí)線部分.然后,對(duì)隨機(jī)初始化的輸入圖像x,在固定目標(biāo)CNN 模型參數(shù)的情況下,通過優(yōu)化x來實(shí)現(xiàn)對(duì)輸出層某個(gè)類的概率最大化,即圖中虛線部分.此時(shí),以最大化網(wǎng)絡(luò)輸出概率分布中某個(gè)類別的概率為目標(biāo),設(shè)計(jì)目標(biāo)函數(shù)如下[19]:

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

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

圖22 所示的過程分為3 個(gè)步驟:

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

1)訓(xùn)練目標(biāo)CNN.目標(biāo)CNN 表示需要被解釋的CNN,同時(shí)也用來提供先驗(yàn)知識(shí),作為編碼器對(duì)輸入圖像進(jìn)行編碼.此時(shí),訓(xùn)練數(shù)據(jù)來自標(biāo)準(zhǔn)的帶標(biāo)注數(shù)據(jù)集,使用交叉熵作為損失函數(shù),優(yōu)化參數(shù)為目標(biāo)CNN 的參數(shù).

2)訓(xùn)練GAN.分別訓(xùn)練生成器G 和判別器D,此時(shí),固定目標(biāo)CNN 的參數(shù),僅輸入無標(biāo)簽的訓(xùn)練數(shù)據(jù),先后對(duì)D 和G 進(jìn)行參數(shù)優(yōu)化.

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

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

式中,v表示x經(jīng)過目標(biāo)CNN 提取的特征向量,該向量可作為x的代表.xf表示G 作用于向量v而生成的圖像.vf表示使用目標(biāo)CNN 從生成圖像提取的特征向量.λ1和λ2表示損失函數(shù)的系數(shù).該式同時(shí)對(duì)輸入向量及特征向量兩部分進(jìn)行約束,實(shí)現(xiàn)G 生成圖像質(zhì)量的提升.

由于不需要使用訓(xùn)練數(shù)據(jù)的標(biāo)簽,因此上述GAN 的訓(xùn)練是無監(jiān)督訓(xùn)練過程.對(duì)GAN 訓(xùn)練的目的是學(xué)習(xí)訓(xùn)練樣本的先驗(yàn)分布,從而在后續(xù)使用G生成圖像時(shí),能夠直接使用數(shù)據(jù)集的先驗(yàn)知識(shí),而非在完全隨機(jī)初始化的輸入上生成圖像.

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

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

圖23 在MNIST 數(shù)據(jù)集上使用AM 方法對(duì)目標(biāo)CNN 模型的可視化結(jié)果對(duì)比[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 注意力掩碼

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

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

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

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

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

通道注意力模塊如圖26 所示,其整體結(jié)構(gòu)與SENet 大致相似,但在某些策略上有細(xì)微調(diào)整,例如同時(shí)使用了使用了最大值池化和平均值池化2 種池化方式.

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

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

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

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

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

圖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 其他方法

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

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

具體地,給定輸入樣本x,目標(biāo)分類器f,定義解釋模型g,LIME 通過不斷在輸入樣本的鄰域內(nèi)采樣并作為輸入,來優(yōu)化下列目標(biāo)函數(shù):

式中,πx表示采樣樣本與輸入樣本之間的相似性度量,Ω(g)約束解釋模型的復(fù)雜度,G表示一組可解釋的簡(jiǎn)單模型.該式的前一項(xiàng)用于保證解釋模型的保真度,使其在局部的預(yù)測(cè)結(jié)果與目標(biāo)分類器盡量一致.第2 項(xiàng)用于約束解釋模型的復(fù)雜度.相似性度量函數(shù)用于衡量擾動(dòng)前后樣本的相似度,這個(gè)相似度即可用作采樣樣本的權(quán)重:

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

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

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

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

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

如圖30 所示,表示LIME 在3 種不同的CNN模型上針對(duì)輸入圖像的可視化結(jié)果,此時(shí)設(shè)置隨機(jī)采樣樣本數(shù)量為10 000,使用余弦函數(shù)作為距離度量.該方法能夠?qū)μ囟A(yù)測(cè)結(jié)果分別找到正向和負(fù)向貢獻(xiàn)的特征,且不同模型上的可視化效果也不同.LIME 方法的優(yōu)點(diǎn)在于簡(jiǎn)單且易于理解,是一種模型無關(guān)的方法,通用性較好,對(duì)于圖像和文本分類任務(wù)均適用.但其缺點(diǎn)在于其采用的是局部近似,無法對(duì)模型整體進(jìn)行解釋,并且需要重新訓(xùn)練一個(gè)新的解釋模型.同時(shí),對(duì)于同一個(gè)輸入樣本,多次運(yùn)行LIME 方法時(shí),由于每次隨機(jī)采樣的樣本不同,使得每次解釋結(jié)果都不相同,且所選擇的采樣樣本數(shù)量和特征數(shù)目等參數(shù)都會(huì)影響解釋效果,使其無法為用戶提供一個(gè)穩(wěn)定的解釋.

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

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

假設(shè)有目標(biāo)模型f和解釋模型g,且f和g滿足:

1)局部保真性.即對(duì)于同一個(gè)輸入樣本z,解釋模型g的輸出g(z′)應(yīng)當(dāng)與目標(biāo)模型f的輸出f(z)保持一致.

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

3)一致性.如果目標(biāo)模型發(fā)生變化,使得某個(gè)特征的貢獻(xiàn)增加,則其對(duì)應(yīng)的Shapley 值也應(yīng)增加.

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

2.2 分析與比較

2.2.1 特點(diǎn)分析

第2.1 節(jié)介紹了多種典型的可視化方法,本節(jié)對(duì)它們的特點(diǎn)進(jìn)行了歸納,如表3 所示,分為以下6 個(gè)方面:

表3 可視化方法的特點(diǎn)比較Table 3 Comparison of characteristics of visualization methods

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

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

3)在線與離線可視化.離線可視化表示對(duì)已經(jīng)完成訓(xùn)練的模型的可視化,在可視化過程中僅通過測(cè)試樣例輸入,而無需對(duì)模型本身的結(jié)構(gòu)或參數(shù)進(jìn)行任何修改.在線可視化則需要修改模型結(jié)構(gòu)并重新訓(xùn)練模型,典型的在線可視化方法如CAM,需要為網(wǎng)絡(luò)末端添加GAP 層,然后重新訓(xùn)練模型.

4)模型明晰的和模型不可知的.模型明晰的方法將模型視作白盒,事先知道模型結(jié)構(gòu)并能獲取模型的參數(shù)和激活值等內(nèi)部信息.模型不可知的方法將模型視作黑盒,僅能獲取模型的輸入和輸出,對(duì)模型的其他信息(如網(wǎng)絡(luò)結(jié)構(gòu)和參數(shù)等)并不了解.除簡(jiǎn)單擾動(dòng)、LIME 和SHAP 方法外,其他均為模型明晰的方法.

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

6)局部解釋和全局解釋.局部解釋一般僅以單個(gè)輸入樣本為指導(dǎo),根據(jù)對(duì)該樣本的可視化結(jié)果來理解CNN 在該輸入下的表征與決策.全局解釋側(cè)重從整個(gè)模型的角度,理解模型所學(xué)習(xí)到的知識(shí)和決策規(guī)則等.顯然,解釋CNN 對(duì)單個(gè)樣本的決策結(jié)果比理解CNN 模型整體更加簡(jiǎn)單,因此,局部解釋比全局解釋在方法實(shí)現(xiàn)上更加容易,表3 所列方法多數(shù)屬于局部解釋方法.

2.2.2 結(jié)果比較

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

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

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

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

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

利用上述熱力圖后處理方法,選擇幾種典型可視化方法進(jìn)行效果對(duì)比,圖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)為簡(jiǎn)單擾動(dòng)[13],圖32(j)為有意義的擾動(dòng)[44].圖32 對(duì)比展示了這些方法的測(cè)試效果[83].

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

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

CAM 類方法生成的類激活圖能夠?qū)崿F(xiàn)區(qū)域級(jí)可視化效果,這一點(diǎn)與梯度類方法區(qū)別較為明顯.CAM 類方法的優(yōu)勢(shì)在于類別區(qū)分性,這種特性使其能夠應(yīng)用于含有多個(gè)不同類目標(biāo)的場(chǎng)景,實(shí)現(xiàn)目標(biāo)定位任務(wù).設(shè)定適當(dāng)?shù)拈撝刀祷幚眍惣せ顖D,然后生成目標(biāo)的邊框,即可實(shí)現(xiàn)圖像級(jí)標(biāo)簽下的弱監(jiān)督目標(biāo)定位.

基于擾動(dòng)的方法對(duì)應(yīng)的熱力圖較為平滑,這與所使用的擾動(dòng)策略有關(guān).擾動(dòng)方法需要多次前向傳播,相比于其他方法更耗時(shí).由于擾動(dòng)方法直接在輸入空間進(jìn)行修改,有時(shí)可能無意中擾動(dòng)出對(duì)抗性輸入,使相應(yīng)的可視化結(jié)果出現(xiàn)誤差[44].另外,若所能獲取的有關(guān)目標(biāo)模型的知識(shí)有限,可優(yōu)先選擇擾動(dòng)方法進(jìn)行可視化,因?yàn)閿_動(dòng)方法多數(shù)是模型不可知的方法,這是其重要優(yōu)勢(shì).

3 可視化效果的評(píng)估

可視化效果評(píng)估用于度量不同方法的解釋效果,指導(dǎo)用戶針對(duì)特定任務(wù)選擇合適的可視化方法.具體來講,可從以下兩個(gè)方面對(duì)可視化效果進(jìn)行評(píng)估:有效性和魯棒性.

3.1 有效性

3.1.1 定性評(píng)估

定性評(píng)估方法在表征可視化研究的早期被經(jīng)常使用,依靠人的視覺感觀來評(píng)價(jià)解釋結(jié)果是否符合人的認(rèn)知.由于定性評(píng)估具有簡(jiǎn)單直觀、便于理解等優(yōu)點(diǎn),至今仍廣泛使用.常用的定性度量標(biāo)準(zhǔn)有以下3 個(gè):

1)視覺連貫性.熱力圖需要關(guān)注感興趣的目標(biāo)區(qū)域,忽略其他不相關(guān)區(qū)域.在視覺連貫性標(biāo)準(zhǔn)下,熱力圖中突出的區(qū)域?qū)Ω信d趣目標(biāo)的覆蓋越全面、冗余部分越少,表明可視化效果越好.

2)視覺可分辨性.熱力圖需要與預(yù)測(cè)結(jié)果中的不同類別相對(duì)應(yīng),這對(duì)于含有多個(gè)不同類別目標(biāo)的圖像來說至關(guān)重要.例如,在同時(shí)含有“Dog”和“Cat”的圖像中,“Dog”的熱力圖應(yīng)該聚焦與之對(duì)應(yīng)的圖像區(qū)域,而盡量去除與“Cat”相關(guān)的區(qū)域.視覺可分辨性對(duì)應(yīng)于可視化方法的類別區(qū)分性特點(diǎn),用于評(píng)估熱力圖能否針對(duì)特定類別進(jìn)行可視化,以定位僅與該類別其相關(guān)的區(qū)域和特征.

3)多目標(biāo)可視化.當(dāng)多個(gè)同一類別的目標(biāo)同時(shí)出現(xiàn)在圖像中時(shí),可視化方法需要同時(shí)定位多個(gè)目標(biāo),而沒有遺漏其中的某個(gè)目標(biāo).

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

盡管解釋的客觀性問題在相關(guān)文獻(xiàn)中較少被提及,但也應(yīng)引起注意.只有讓解釋方法客觀、真實(shí)地反映模型的決策依據(jù),才能使人真正理解并診斷其存在的問題,進(jìn)而改進(jìn)與優(yōu)化.

3.1.2 定量評(píng)估

定量評(píng)估方法按照某種得分規(guī)則,計(jì)算數(shù)據(jù)集上所有圖像的可視化結(jié)果的平均得分,從而定量比較各方法的優(yōu)劣.這里介紹3 種典型的定量評(píng)估方法.

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

由于某些細(xì)粒度的可視化方法更易定位與預(yù)測(cè)最相關(guān)的像素,而非尋求覆蓋目標(biāo)整體,因此,熱力圖對(duì)應(yīng)的邊框?qū)?huì)定位在目標(biāo)的局部區(qū)域,導(dǎo)致IoU 值總體偏小.此時(shí),IoU 值無法反映解釋結(jié)果的優(yōu)劣,表明這種評(píng)價(jià)方法具有一定的局限性[66].

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

指向游戲只考慮熱力圖的最大值點(diǎn),無需突出特定目標(biāo)的全部區(qū)域,僅需對(duì)熱力圖最少量的后處理,這樣對(duì)不同特點(diǎn)的熱力圖更公平.其可能的缺點(diǎn)在于熱力圖自身的噪聲問題,最大值點(diǎn)可能來自極值噪聲點(diǎn),導(dǎo)致評(píng)價(jià)結(jié)果產(chǎn)生誤差.

3)隨機(jī)性檢驗(yàn).文獻(xiàn)[85]提出隨機(jī)性檢驗(yàn)方法,用于評(píng)估可視化方法的適用范圍和解釋質(zhì)量.分為兩種隨機(jī)化檢驗(yàn):一種是模型參數(shù)隨機(jī)化,使用隨機(jī)化模型參數(shù)和預(yù)訓(xùn)練模型參數(shù)加載模型,對(duì)比這兩種情形下可視化方法的輸出變化,以檢驗(yàn)該方法是否對(duì)模型參數(shù)敏感;另一種是數(shù)據(jù)隨機(jī)化,對(duì)訓(xùn)練數(shù)據(jù)標(biāo)簽進(jìn)行隨機(jī)化打亂并重新訓(xùn)練模型,與未打亂標(biāo)簽的可視化結(jié)果進(jìn)行對(duì)比,檢驗(yàn)該方法是否對(duì)訓(xùn)練數(shù)據(jù)標(biāo)簽敏感.

隨機(jī)性檢驗(yàn)已成為廣泛認(rèn)可的基準(zhǔn)測(cè)試方法,用于檢驗(yàn)可視化方法是否能有效實(shí)現(xiàn)解釋,從而區(qū)分出對(duì)模型參數(shù)和訓(xùn)練數(shù)據(jù)標(biāo)簽并不敏感的可視化方法.這種不敏感的可視化方法的真實(shí)作用相當(dāng)于一個(gè)獨(dú)立于模型的邊緣檢測(cè)器,而非一個(gè)有效的解釋器.文獻(xiàn)[85]通過該實(shí)驗(yàn)驗(yàn)證了VBP 和Grad-CAM 的有效性,而GBP 和Guided Grad-CAM 等未通過檢驗(yàn).

3.2 魯棒性

可視化方法的魯棒性與CNN 模型的魯棒性不同.CNN 模型的魯棒性是指模型的預(yù)測(cè)結(jié)果不會(huì)因?yàn)閷?duì)抗攻擊而發(fā)生明顯變化.可視化方法的魯棒性是指在面臨對(duì)抗攻擊時(shí),可視化方法仍能夠提供準(zhǔn)確有效的解釋.為此,本文將對(duì)抗攻擊分為以下2 種情形:1)攻擊模型預(yù)測(cè)結(jié)果,測(cè)試解釋結(jié)果是否隨之改變;2)攻擊解釋結(jié)果,測(cè)試其是否會(huì)被誤導(dǎo).

3.2.1 穩(wěn)定性

可視化方法的穩(wěn)定性是指在模型預(yù)測(cè)受到對(duì)抗攻擊時(shí),可視化方法的解釋結(jié)果仍能保持穩(wěn)定而不發(fā)生顯著變化.其中,用于攻擊模型預(yù)測(cè)結(jié)果的對(duì)抗樣本xadv具有以下3 個(gè)特點(diǎn):

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

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

3)解釋方法g產(chǎn)生的解釋結(jié)果不會(huì)因?yàn)閿_動(dòng)而發(fā)生顯著變化,滿足g(xadv)≈g(x).

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

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

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

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

圖34 使用FGSM 對(duì)抗樣本測(cè)試Grad-CAM 的穩(wěn)定性[63]((a)原圖;(b)對(duì)抗圖像;(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”)

盡管這是一種測(cè)試可視化方法穩(wěn)定性的方法,但文獻(xiàn)[88]認(rèn)為,當(dāng)模型分類結(jié)果受到攻擊時(shí),解釋結(jié)果應(yīng)當(dāng)隨著分類結(jié)果的改變而改變,即解釋方法應(yīng)該嘗試對(duì)新的分類結(jié)果進(jìn)行解釋,而不應(yīng)保持原來的解釋不變,這樣才是一種忠實(shí)的解釋方法.由此可見,這種穩(wěn)定性測(cè)試方法的合理性仍存在一定疑問.根據(jù)這種思路,即可視化結(jié)果應(yīng)當(dāng)與新的誤分類結(jié)果相對(duì)應(yīng),文獻(xiàn)[88]使用可視化方法來檢測(cè)對(duì)抗樣本,從而找出其中誤導(dǎo)分類結(jié)果的特征.

3.2.2 抗欺騙性

可視化方法的抗欺騙性是指可視化方法自身受到對(duì)抗攻擊時(shí),解釋結(jié)果能夠抵抗這種欺騙性的攻擊,仍能實(shí)現(xiàn)有效的解釋.

文獻(xiàn)[89]指出,可視化方法生成的顯著圖可以被人為設(shè)計(jì)的對(duì)抗樣本操縱.通過對(duì)輸入施加視覺上難以察覺的擾動(dòng),使網(wǎng)絡(luò)的輸出近似保持不變,顯著圖卻可以被任意改變.也就是說,這種對(duì)抗樣本的攻擊對(duì)象不是模型預(yù)測(cè)結(jié)果,而是對(duì)預(yù)測(cè)結(jié)果的解釋.用于攻擊可視化方法的解釋結(jié)果的對(duì)抗樣本xadv具有以下3 個(gè)特點(diǎn)[90]:

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

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

3)解釋方法g產(chǎn)生的解釋結(jié)果g(xadv)將根據(jù)擾動(dòng)的變化而變化g(x),使之偏離原來的解釋結(jié)果,即滿足g(xadv)g(x).

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

圖35 針對(duì)可視化結(jié)果的攻擊Fig.35 Attacks on the visualization results

式中,xtarget表示用于誘導(dǎo)解釋結(jié)果的目標(biāo)圖像,λ1和λ2為2 部分的權(quán)重參數(shù).

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

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

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

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

4 可視化的應(yīng)用

4.1 理解與解釋模型

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

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

4.2 診斷與優(yōu)化網(wǎng)絡(luò)

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

4.3 其他方面

除了對(duì)CNN 本身的理解與診斷,可視化方法在其他任務(wù)上也有不斷拓展與延伸,例如CAM 和Grad-CAM 方法在弱監(jiān)督目標(biāo)定位任務(wù)上取得了非常好的效果.文獻(xiàn)[93]進(jìn)一步探索了將顯著性歸因方法產(chǎn)生的顯著圖作為先驗(yàn),應(yīng)用于弱監(jiān)督的分割任務(wù)上.在應(yīng)用領(lǐng)域方面,可視化方法能夠提升對(duì)推薦系統(tǒng)決策結(jié)果的理解[97],以及與知識(shí)圖譜的結(jié)合來實(shí)現(xiàn)可解釋的推薦算法[98].對(duì)于自動(dòng)駕駛[99-100]以及智能醫(yī)療[101]等領(lǐng)域,由于這些領(lǐng)域?qū)τ跊Q策風(fēng)險(xiǎn)的承受能力較低,可視化方法對(duì)這些領(lǐng)域應(yīng)用的現(xiàn)實(shí)落地至關(guān)重要.

5 存在的難點(diǎn)及發(fā)展趨勢(shì)

5.1 難點(diǎn)分析與趨勢(shì)展望

近年來,CNN 表征可視化相關(guān)研究越來越多,研究者們提出了各種可視化方法,極大推動(dòng)了該領(lǐng)域的進(jìn)展,但仍存在一些難點(diǎn)問題有待解決,本節(jié)對(duì)其進(jìn)行了歸納,并分析了未來可能的研究趨勢(shì).

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

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

2)對(duì)于可視化效果的評(píng)估,仍欠缺標(biāo)準(zhǔn)統(tǒng)一的評(píng)估方法.

目前很難找到適用于大多數(shù)可視化方法的評(píng)估標(biāo)準(zhǔn),原因在于許多方法的目標(biāo)并不相同,也即每種方法對(duì)“可解釋性”的理解并不相同,導(dǎo)致各種可視化方法的解釋結(jié)果差別較大.同時(shí),很多可視化方法自身同樣缺乏清晰明確的數(shù)學(xué)與邏輯機(jī)理,導(dǎo)致結(jié)果難以量化比較.如果可以從“可解釋性”的概念出發(fā),統(tǒng)一數(shù)個(gè)可解釋性的標(biāo)準(zhǔn),那么對(duì)于可視化結(jié)果的評(píng)估也就有了依據(jù).同時(shí),還可以根據(jù)可視化方法產(chǎn)生的熱力圖的特點(diǎn)進(jìn)行分類評(píng)價(jià),每類熱力圖使用與之適應(yīng)的評(píng)價(jià)標(biāo)準(zhǔn),提升其側(cè)重解釋某方面的能力.

3)對(duì)于可視化的對(duì)象,細(xì)粒度的識(shí)別模型難以可視化解釋.

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

4)對(duì)于可視化解釋的完備性,現(xiàn)有研究中的解釋結(jié)果與預(yù)測(cè)結(jié)果無法相互印證.

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

5.2 學(xué)界近年來的關(guān)注

近年來,眾多人工智能領(lǐng)域頂級(jí)會(huì)議關(guān)注人工智能和深度學(xué)習(xí)可解釋問題,其中許多涉及到表征可視化方面的前沿研究,如[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 列舉了可解釋性深度學(xué)習(xí)研究領(lǐng)域的部分綜述文獻(xiàn),對(duì)各文獻(xiàn)的內(nèi)容側(cè)重作了簡(jiǎn)要介紹,其中包含CNN 表征可視化的相關(guān)內(nèi)容.

表4 CNN 表征可視化相關(guān)的綜述文獻(xiàn)統(tǒng)計(jì)Table 4 Review literature statistics related to CNN representation visualization

5.3 開源工具

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

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

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

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

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

6 結(jié)束語

本文圍繞CNN 表征可視化研究,詳細(xì)梳理了該領(lǐng)域近年來相關(guān)的文獻(xiàn),從基礎(chǔ)概念及內(nèi)容、常見方法的分類與比較、效果的評(píng)估及應(yīng)用等方面進(jìn)行了詳細(xì)介紹.其中,對(duì)常見的可視化方法的分類和介紹是本文的重點(diǎn)內(nèi)容,該部分詳細(xì)分析了各種算法的過程,歸納了每一類方法的特點(diǎn),并對(duì)它們的效果進(jìn)行了比較.最后,對(duì)該領(lǐng)域仍存在的難點(diǎn)和未來的研究趨勢(shì)作了總結(jié)和展望.

隨著表征可視化研究的深入,人們對(duì)CNN 的特征學(xué)習(xí)和預(yù)測(cè)機(jī)制的理解也會(huì)更加深刻.同時(shí),其他類型的可解釋性方法也在不斷發(fā)展中,在它們的共同作用下,不斷推動(dòng)可解釋性深度學(xué)習(xí)的發(fā)展.期待未來實(shí)現(xiàn)可理解的、透明的和高效的深度學(xué)習(xí)方法.

猜你喜歡
擾動(dòng)梯度可視化
Bernoulli泛函上典則酉對(duì)合的擾動(dòng)
基于CiteSpace的足三里穴研究可視化分析
基于Power BI的油田注水運(yùn)行動(dòng)態(tài)分析與可視化展示
云南化工(2021年8期)2021-12-21 06:37:54
一個(gè)改進(jìn)的WYL型三項(xiàng)共軛梯度法
一種自適應(yīng)Dai-Liao共軛梯度法
基于CGAL和OpenGL的海底地形三維可視化
(h)性質(zhì)及其擾動(dòng)
“融評(píng)”:黨媒評(píng)論的可視化創(chuàng)新
一類扭積形式的梯度近Ricci孤立子
小噪聲擾動(dòng)的二維擴(kuò)散的極大似然估計(jì)
梁山县| 阿城市| 宣威市| 屏东县| 新丰县| 吕梁市| 济南市| 凌海市| 博白县| 五原县| 枝江市| 吴堡县| 乌兰察布市| 富裕县| 宿松县| 屯昌县| 稻城县| 固安县| 敦化市| 上饶县| 延寿县| 徐水县| 黔东| 永平县| 惠来县| 太湖县| 柳林县| 静乐县| 岐山县| 贵溪市| 鄂托克前旗| 中卫市| 烟台市| 芒康县| 五原县| 济宁市| 巫溪县| 武定县| 临洮县| 和政县| 沙坪坝区|