董胤蓬 蘇 航 朱 軍
深度神經(jīng)網(wǎng)絡(luò)(Deep neural networks,DNNs)[1]由于在語(yǔ)音識(shí)別、圖像分類、自然語(yǔ)言處理等諸多領(lǐng)域取得了很好的效果,近年來(lái)獲得了人們的廣泛關(guān)注.但是由于缺乏對(duì)其內(nèi)部工作機(jī)理的理解與分析[2],深度神經(jīng)網(wǎng)絡(luò)通常被看作“黑盒”模型,導(dǎo)致用戶只能觀察模型的預(yù)測(cè)結(jié)果,而不能了解模型產(chǎn)生決策的原因.深度神經(jīng)網(wǎng)絡(luò)的不可解釋性也會(huì)極大地限制其發(fā)展與應(yīng)用.例如,在諸如醫(yī)療、自動(dòng)駕駛等許多實(shí)際的應(yīng)用場(chǎng)景中,僅僅向用戶提供最終的預(yù)測(cè)結(jié)果而不解釋其原因并不能夠滿足用戶的需求.用戶需要獲取模型產(chǎn)生決策的原因來(lái)理解、認(rèn)可、信任一個(gè)模型,并在模型出錯(cuò)時(shí)修復(fù)模型的問(wèn)題.因此,研究提升模型可解釋性的學(xué)習(xí)算法、使用戶可以理解信任模型、并與模型進(jìn)行交互變得至關(guān)重要.
近些年來(lái),有很多的方法嘗試去解決深度神經(jīng)網(wǎng)絡(luò)的可解釋性問(wèn)題.例如,一個(gè)模型對(duì)于圖像的分類結(jié)果可以歸因于圖像的關(guān)鍵性區(qū)域[3]或者其他類似圖像[4].同時(shí),一系列的工作研究如何可視化深度神經(jīng)網(wǎng)絡(luò)內(nèi)部神經(jīng)元學(xué)習(xí)到的特征[5?8].但是這些方法存在以下幾個(gè)問(wèn)題:1)它們通常是在模型訓(xùn)練結(jié)束后進(jìn)行解釋,并不能在訓(xùn)練的過(guò)程中約束其學(xué)習(xí)到一個(gè)可解釋的模型;2)它們僅僅關(guān)注模型對(duì)于正常樣本的預(yù)測(cè)進(jìn)行解釋與分析,而忽視了模型在現(xiàn)實(shí)場(chǎng)景中可能遇到的對(duì)抗樣本(Adversarial examples)[9?14];3)它們并沒(méi)有解釋模型發(fā)生錯(cuò)誤的原因,也不能讓用戶針對(duì)性地修復(fù)模型的問(wèn)題.
本文針對(duì)圖像分類任務(wù),利用對(duì)抗樣本檢驗(yàn)深度神經(jīng)網(wǎng)絡(luò)的內(nèi)部特征表示.對(duì)抗樣本是指攻擊者通過(guò)向真實(shí)樣本(Real examples)中添加微小的、人眼不可察覺(jué)的擾動(dòng),導(dǎo)致模型發(fā)生預(yù)測(cè)錯(cuò)誤的樣本.真實(shí)樣本和對(duì)抗樣本可以從正反兩方面研究深度神經(jīng)網(wǎng)絡(luò)的行為,既可以通過(guò)真實(shí)樣本分析模型產(chǎn)生正確預(yù)測(cè)的原因,同時(shí)也可以通過(guò)對(duì)抗樣本分析模型發(fā)生錯(cuò)誤的原因,以深入探究深度神經(jīng)網(wǎng)絡(luò)的運(yùn)行機(jī)制.雖然利用模型預(yù)測(cè)錯(cuò)誤的真實(shí)樣本分析其產(chǎn)生錯(cuò)誤的原因也是一種可行的方法,但是真實(shí)樣本中發(fā)生的錯(cuò)誤往往是比較小的錯(cuò)誤,相比于對(duì)抗樣本的預(yù)測(cè)錯(cuò)誤可以忽略不計(jì).例如,模型可能會(huì)將一個(gè)真實(shí)的公交車圖片錯(cuò)分為客車,這種錯(cuò)誤可以被接受;然而如果模型將一個(gè)對(duì)抗的公交車圖片錯(cuò)分為飛機(jī),則不能夠被我們所接受.通過(guò)將對(duì)抗樣本與真實(shí)樣本輸入到深度神經(jīng)網(wǎng)絡(luò)中并檢驗(yàn)其特征表示,我們發(fā)現(xiàn)深度神經(jīng)網(wǎng)絡(luò)內(nèi)部學(xué)習(xí)到的特征表示與人類所理解的語(yǔ)義概念之間存在著極大的不一致性.如圖1 所示,神經(jīng)元學(xué)習(xí)到的特征通常用對(duì)其產(chǎn)生強(qiáng)響應(yīng)的樣本所表示[8].當(dāng)只使用真實(shí)樣本時(shí),神經(jīng)元會(huì)檢測(cè)某種語(yǔ)義概念.但是會(huì)存在其他的樣本 (例如藍(lán)色圓圈標(biāo)記的對(duì)抗樣本) 也對(duì)神經(jīng)元產(chǎn)生很強(qiáng)的響應(yīng),盡管這些樣本的語(yǔ)義概念十分不一致.這使得神經(jīng)元學(xué)習(xí)得到的特征難以解釋.
圖1 語(yǔ)義概念與神經(jīng)元學(xué)習(xí)到的特征存在不一致性的示意圖Fig.1 Demonstration of the inconsistency between a semantic concept and the learned features of a neuron
基于以上的分析,本文進(jìn)一步提出了加入特征表示一致性損失的對(duì)抗訓(xùn)練方式(Adversarial training with a consistent loss),其目標(biāo)是在模型的訓(xùn)練過(guò)程中學(xué)習(xí)到人類可解釋的特征表示.通過(guò)加入對(duì)抗樣本與真實(shí)樣本特征表示的距離作為一致性損失函數(shù)訓(xùn)練深度神經(jīng)網(wǎng)絡(luò),可以使網(wǎng)絡(luò)在特征層面上消除掉對(duì)抗噪聲的干擾,使其對(duì)于對(duì)抗樣本的特征表示與真實(shí)樣本的特征表示盡量接近.如圖1所示,對(duì)于深度神經(jīng)網(wǎng)絡(luò)內(nèi)部的某個(gè)神經(jīng)元,如果該神經(jīng)元檢測(cè)到的特征與人類所理解的語(yǔ)義概念不一致時(shí),意味著會(huì)存在藍(lán)色圓圈標(biāo)記的對(duì)抗樣本對(duì)其產(chǎn)生很強(qiáng)的響應(yīng).然而這些對(duì)抗樣本所對(duì)應(yīng)的真實(shí)樣本并不會(huì)對(duì)其產(chǎn)生很強(qiáng)的響應(yīng),這就導(dǎo)致了一致性損失很大.通過(guò)加入特征表示一致性的損失函數(shù),可以使得該神經(jīng)元學(xué)習(xí)到的特征與人類所理解的某個(gè)語(yǔ)義概念相關(guān)聯(lián)(如虛線所示).這個(gè)過(guò)程最終會(huì)使得深度神經(jīng)網(wǎng)絡(luò)內(nèi)部的神經(jīng)元學(xué)習(xí)到可以抵抗對(duì)抗噪聲干擾的特征,從而在某個(gè)語(yǔ)義概念出現(xiàn)時(shí)產(chǎn)生響應(yīng)、不出現(xiàn)時(shí)不產(chǎn)生響應(yīng).因此該方法可以提升深度神經(jīng)網(wǎng)絡(luò)的可解釋性.實(shí)驗(yàn)結(jié)果表明在一些可解釋性度量標(biāo)準(zhǔn)下,該訓(xùn)練方式可以使深度神經(jīng)網(wǎng)絡(luò)內(nèi)部的特征表示與人類所理解的語(yǔ)義概念更加一致,得到可解釋性更好的深度神經(jīng)網(wǎng)絡(luò).
本文的主要貢獻(xiàn)有:1)提出利用對(duì)抗樣本分析深度神經(jīng)網(wǎng)絡(luò)的可解釋性,并發(fā)現(xiàn)神經(jīng)元學(xué)習(xí)到的特征表示與人類所理解的語(yǔ)義概念之間存在不一致性;2)提出了加入特征表示一致性損失的對(duì)抗訓(xùn)練方式,可以極大地促進(jìn)深度神經(jīng)網(wǎng)絡(luò)的可解釋性.
本節(jié)將介紹深度神經(jīng)網(wǎng)絡(luò)的可解釋性、對(duì)抗樣本與對(duì)抗訓(xùn)練的相關(guān)工作.
近年來(lái)有很多工作研究深度神經(jīng)網(wǎng)絡(luò)的可解釋性.深度神經(jīng)網(wǎng)絡(luò)內(nèi)部的神經(jīng)元可以被解釋為物體或者物體組成部分的檢測(cè)器.例如,神經(jīng)元響應(yīng)最大化(Activation maximization)[8]通過(guò)找到對(duì)某個(gè)神經(jīng)元產(chǎn)生響應(yīng)最強(qiáng)的一組圖片代表其學(xué)習(xí)的特征.包含反卷積神經(jīng)網(wǎng)絡(luò)在內(nèi)的一些基于梯度的算法[5?6]通過(guò)將模型的響應(yīng)反向傳播到輸入空間中,并通過(guò)對(duì)其顯著區(qū)域可視化解釋模型的預(yù)測(cè).Bau 等[15]提出通過(guò)比較神經(jīng)元學(xué)習(xí)到的特征與語(yǔ)義概念之間一致性以度量深度神經(jīng)網(wǎng)絡(luò)的可解釋性.此外,模型的預(yù)測(cè)還可以通過(guò)影響力函數(shù)(Influence function)[4]或者解釋圖模型(Explanatory graph)[16]等方式產(chǎn)生解釋.此外,還有許多方法在模型的訓(xùn)練過(guò)程中提升其可解釋性.例如,從文本中提取出的語(yǔ)義主題可以通過(guò)可解釋性損失(Interpretive loss)[17]的方式加入到模型的訓(xùn)練中.上下文相關(guān)可解釋網(wǎng)絡(luò)(Contexture explanation networks)[18]在預(yù)測(cè)的同時(shí)學(xué)習(xí)產(chǎn)生相應(yīng)的解釋.膠囊網(wǎng)絡(luò)(Capsule networks)[19]將一組神經(jīng)元作為一個(gè)膠囊用于表示某個(gè)語(yǔ)義概念.
盡管現(xiàn)有很多方法展示出深度神經(jīng)網(wǎng)絡(luò)內(nèi)部的神經(jīng)元學(xué)習(xí)到的特征可以與人類所理解的語(yǔ)義概念相關(guān)聯(lián),這些工作僅僅是利用真實(shí)數(shù)據(jù)進(jìn)行分析.本文通過(guò)對(duì)抗樣本分析深度神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)的特征表示,發(fā)現(xiàn)了與之前的一些結(jié)論不一致的現(xiàn)象.
攻擊者向真實(shí)樣本中添加微小的、人眼不可察覺(jué)的擾動(dòng),可以構(gòu)造出使得模型發(fā)生預(yù)測(cè)錯(cuò)誤的對(duì)抗樣本[9?14].基于模型預(yù)測(cè)錯(cuò)誤的不同表現(xiàn)形式,對(duì)抗樣本可以分為兩類.第1 類稱為無(wú)目標(biāo)的對(duì)抗樣本,它們可以讓模型將其錯(cuò)誤地預(yù)測(cè)為真實(shí)類別以外的任意類別.第2 類稱為有目標(biāo)的對(duì)抗樣本,它們會(huì)被模型錯(cuò)分為攻擊者所指定的目標(biāo)類別,以達(dá)到攻擊者的特定目的.給定一個(gè)真實(shí)樣本x,其真實(shí)類別為y.同時(shí)給定一個(gè)基于深度神經(jīng)網(wǎng)絡(luò)的分類器fθ(·),其中θ代表分類器的參數(shù).一個(gè)對(duì)抗樣本x?通常會(huì)在真實(shí)樣本x的鄰域內(nèi)進(jìn)行尋找,使得x?看起來(lái)與x沒(méi)有任何差別,但是會(huì)被模型錯(cuò)分.通常情況下,一個(gè)無(wú)目標(biāo)的對(duì)抗樣本通過(guò)最大化網(wǎng)絡(luò)的損失函數(shù)L(fθ(x?),y) 產(chǎn)生,可以使得fθ(x?),其中L是分類網(wǎng)絡(luò)通常使用的交叉信息熵?fù)p失函數(shù)(Cross-entropy loss).而有目標(biāo)的對(duì)抗樣本通過(guò)最小化網(wǎng)絡(luò)的損失函數(shù)L(fθ(x?),y?) 產(chǎn)生,使網(wǎng)絡(luò)將其錯(cuò)分為目標(biāo)類別y?,即fθ(x?)=y?.
有很多的攻擊方法可以解決上述的優(yōu)化問(wèn)題,以產(chǎn)生對(duì)抗樣本.其中快速梯度符號(hào)法(Fast gradient sign method,FGSM)[10]通過(guò)一步梯度迭代產(chǎn)生對(duì)抗樣本.對(duì)于無(wú)目標(biāo)對(duì)抗攻擊,FGSM 可以表示為
其中,?是擾動(dòng)的噪聲規(guī)模.FGSM 首先計(jì)算損失函數(shù)對(duì)于輸入的梯度,然后取梯度的符號(hào)將其歸一化,并乘以擾動(dòng)規(guī)模?,可以使得對(duì)抗樣本與真實(shí)樣本的距離滿足∥x??x∥∞≤?.基于FGSM,基礎(chǔ)迭代法(Basic iterative method,BIM)[11]通過(guò)多步梯度迭代,可以產(chǎn)生攻擊效果更好的對(duì)抗樣本.基于優(yōu)化的方法[12]直接求解
其中,第1 項(xiàng)減小對(duì)抗樣本與真實(shí)樣本的?2距離,第2 項(xiàng)最大化網(wǎng)絡(luò)的損失函數(shù),λ是一個(gè)超參數(shù).上述的幾種攻擊方法可以簡(jiǎn)單地?cái)U(kuò)展到有目標(biāo)攻擊上,通過(guò)將式(1)和式(2)中的損失函數(shù)L(fθ(x?),y)替換成?L(fθ(x?),y?) 即可.
由于對(duì)抗樣本對(duì)于深度神經(jīng)網(wǎng)絡(luò)所帶來(lái)的安全隱患,有很多的防御方法期望抵抗對(duì)抗樣本的干擾,得到更加魯棒的模型.在這些防御方法中,對(duì)抗訓(xùn)練(Adversarial training)[10,20?23]是一類典型且有效的算法.對(duì)抗訓(xùn)練通過(guò)將對(duì)抗樣本加入到訓(xùn)練過(guò)程中更新模型參數(shù),使其可以抵抗對(duì)抗樣本的影響.具體地,對(duì)抗訓(xùn)練可以被定義為一個(gè)最小最大化問(wèn)題
其中,D是數(shù)據(jù)分布,S(x)是所允許的對(duì)抗樣本區(qū)域.上式中的內(nèi)層最大化問(wèn)題通常通過(guò)攻擊算法產(chǎn)生的對(duì)抗樣本近似,而外層最小化問(wèn)題將對(duì)抗樣本作為訓(xùn)練數(shù)據(jù)得到更加魯棒的模型.
本文說(shuō)明了對(duì)抗樣本以及對(duì)抗訓(xùn)練對(duì)于深度神經(jīng)網(wǎng)絡(luò)可解釋性分析的作用.我們通過(guò)對(duì)抗樣本分析深度神經(jīng)網(wǎng)絡(luò)的特征表示,并利用加入特征表示一致性損失的對(duì)抗訓(xùn)練方式提升網(wǎng)絡(luò)的可解釋性.
先前的工作認(rèn)為深度神經(jīng)網(wǎng)絡(luò)可以學(xué)習(xí)到對(duì)于圖像內(nèi)容的解耦的特征表示[6,8],即其中的神經(jīng)元會(huì)檢測(cè)人類所理解的語(yǔ)義概念,從而使整體的特征表示可以解釋.然而,在本節(jié)中展示了可以檢測(cè)語(yǔ)義概念(例如物體或者物理組成部分)的神經(jīng)元可以很輕易地被對(duì)抗樣本所欺騙,展現(xiàn)出神經(jīng)元學(xué)習(xí)到的特征和語(yǔ)義概念之間的不一致性.
為了檢驗(yàn)深度神經(jīng)網(wǎng)絡(luò)面對(duì)對(duì)抗樣本時(shí)的特征表示,我們首先利用基于優(yōu)化的對(duì)抗攻擊算法產(chǎn)生有目標(biāo)的對(duì)抗樣本.需要注意的是本節(jié)所展示的實(shí)驗(yàn)結(jié)果并不僅僅局限于所采用的攻擊算法.與式(2)類似,通過(guò)求解以下的優(yōu)化問(wèn)題可以產(chǎn)生一個(gè)有目標(biāo)的對(duì)抗樣本x?
給定對(duì)抗樣本x?和與之對(duì)應(yīng)的真實(shí)樣本x,我們將它們輸入到深度神經(jīng)網(wǎng)絡(luò)中,并通過(guò)神經(jīng)元響應(yīng)最大化算法(Activation maximization)[8]檢驗(yàn)其特征表示.該方法對(duì)于每個(gè)神經(jīng)元,找到對(duì)其產(chǎn)生響應(yīng)最強(qiáng)的一組圖片代表該神經(jīng)元學(xué)習(xí)到的特征,可以對(duì)其學(xué)習(xí)的特征進(jìn)行可視化.
圖2 中展示了VGG-16[24]網(wǎng)絡(luò)中某些神經(jīng)元學(xué)習(xí)到的特征的可視化結(jié)果.對(duì)于每個(gè)神經(jīng)元,我們選取了對(duì)其產(chǎn)生響應(yīng)最強(qiáng)的8 幅真實(shí)圖片和8 幅對(duì)抗圖片代表其學(xué)習(xí)到的特征.對(duì)于這些選取的圖片,我們利用差異圖(Discrepancy map)[8]觀測(cè)其中顯著的區(qū)域,可以更好地發(fā)現(xiàn)神經(jīng)元檢測(cè)的特征的語(yǔ)義概念.從圖中可以看出,對(duì)每個(gè)神經(jīng)元產(chǎn)生響應(yīng)較強(qiáng)的真實(shí)圖片中具有明確的語(yǔ)義概念.比如圖2 (d)中展示了對(duì)第147 個(gè)神經(jīng)元產(chǎn)生響應(yīng)最強(qiáng)的8 幅真實(shí)圖片都是鳥(niǎo)的圖片,而高亮區(qū)域顯示出鳥(niǎo)頭的特征,所以此神經(jīng)元可以被解釋為鳥(niǎo)頭的檢測(cè)器,這個(gè)結(jié)果也與之前的研究結(jié)論一致.這樣的現(xiàn)象對(duì)其他的神經(jīng)元和模型同樣成立,可以看出真實(shí)圖片中的語(yǔ)義概念具有很好的一致性,其共同的語(yǔ)義概念可以解釋神經(jīng)元學(xué)習(xí)到的特征.然而僅僅對(duì)真實(shí)圖片進(jìn)行分析并不能完全了解神經(jīng)元真正的行為,通過(guò)下面的分析將會(huì)發(fā)現(xiàn),神經(jīng)元并不具備檢測(cè)輸入圖像中語(yǔ)義信息的能力.
從另一個(gè)方面進(jìn)行分析,可以發(fā)現(xiàn)對(duì)神經(jīng)元產(chǎn)生響應(yīng)較強(qiáng)的對(duì)抗圖片中的語(yǔ)義信息和真實(shí)圖片中的語(yǔ)義信息沒(méi)有任何關(guān)聯(lián).在圖2 中所展示的任何一個(gè)神經(jīng)元,對(duì)其產(chǎn)生響應(yīng)較強(qiáng)的對(duì)抗圖片中沒(méi)有共同的特征,也與通過(guò)真實(shí)圖片發(fā)現(xiàn)的神經(jīng)元的語(yǔ)義沒(méi)有任何關(guān)系.比如圖2 (d) 中的對(duì)抗圖片均沒(méi)有出現(xiàn)鳥(niǎo),其中也沒(méi)有任何相似的特征.而包含鳥(niǎo)的對(duì)抗圖片反而沒(méi)有對(duì)此神經(jīng)元產(chǎn)生很強(qiáng)的響應(yīng).這與通過(guò)真實(shí)圖片得到的結(jié)論嚴(yán)重不符,即該神經(jīng)元對(duì)于對(duì)抗樣本并沒(méi)有檢測(cè)其學(xué)習(xí)到的特征.
為了探究產(chǎn)生此現(xiàn)象的原因,我們通過(guò)進(jìn)一步分析神經(jīng)元的行為,發(fā)現(xiàn)了以下的現(xiàn)象:在圖2 中由方框框起來(lái)的對(duì)抗圖片會(huì)被模型誤分為與對(duì)應(yīng)的真實(shí)圖片中語(yǔ)義特征類似的類別.比如在圖2 (d)中,此神經(jīng)元檢測(cè)真實(shí)圖片中鳥(niǎo)的概念,而方框中的對(duì)抗圖片同樣被VGG-16 模型誤分為不同類別的鳥(niǎo).因此,我們認(rèn)為神經(jīng)元并不具備檢測(cè)圖像中高層次語(yǔ)義信息(物體或者物體組成部分)的能力,而是會(huì)對(duì)模型預(yù)測(cè)為特定類別的圖片產(chǎn)生較強(qiáng)的響應(yīng),無(wú)論圖片中是否會(huì)出現(xiàn)與此類別相關(guān)的物體.后續(xù)的定量實(shí)驗(yàn)也會(huì)進(jìn)一步證明此結(jié)論.本文中的顯著區(qū)域可視化并不局限于所采用的響應(yīng)最大化和差異圖方法,其他類似方法也可以使用[25?26].
圖2 VGG-16 網(wǎng)絡(luò)中神經(jīng)元(來(lái)自conv5_3 層)特征可視化Fig.2 The visualization results of the neuron (from the conv5_3 layer) features in VGG-16
基于以上的分析,我們?cè)诒竟?jié)提出了加入特征表示一致性損失的對(duì)抗訓(xùn)練方式(Adversarial training with a consistent loss),可以在訓(xùn)練深度神經(jīng)網(wǎng)絡(luò)的過(guò)程中提升其學(xué)習(xí)的特征表示與人類所理解的語(yǔ)義概念之間的一致性.與之前的一些利用高層語(yǔ)義概念顯式地提升模型可解釋性的工作[17]不同,本節(jié)所提出的方法可以通過(guò)對(duì)抗訓(xùn)練的方式隱式地提升模型可解釋性.對(duì)抗訓(xùn)練通過(guò)指導(dǎo)深度神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)到對(duì)于對(duì)抗樣本和真實(shí)樣本更加接近的特征表示,去除掉噪聲對(duì)于其特征表示的干擾,從而使其內(nèi)部的神經(jīng)元在相關(guān)的語(yǔ)義概念出現(xiàn)時(shí)產(chǎn)生響應(yīng),而在語(yǔ)義概念不出現(xiàn)時(shí)不產(chǎn)生響應(yīng).這樣才能更好地解釋每個(gè)神經(jīng)元學(xué)習(xí)到的特征.
為了達(dá)到上述的目標(biāo),我們引入特征表示一致性損失函數(shù),并將其加入到對(duì)抗訓(xùn)練的過(guò)程中.具體地,所提出的方法通過(guò)優(yōu)化以下的目標(biāo)函數(shù)訓(xùn)練深度神經(jīng)網(wǎng)絡(luò)的參數(shù)θ
其中,第1 項(xiàng)為分類損失函數(shù),與式(3)類似地定義為
第2 項(xiàng)為特征一致性損失,定義為
其中,φθ(x) 返回網(wǎng)絡(luò)對(duì)于輸入x的特征表示向量,d為距離的度量函數(shù),用于計(jì)算對(duì)抗樣本與真實(shí)樣本特征表示之間的距離.我們選取平方歐幾里得距離(Squared Euclidean distance)作為d.
為了求解訓(xùn)練目標(biāo)函數(shù)(5),需要首先求解內(nèi)層的最大化問(wèn)題找到對(duì)抗樣本,進(jìn)而求解外層的最小化問(wèn)題以訓(xùn)練網(wǎng)絡(luò)參數(shù).需要注意的是式(5)中包含兩個(gè)目標(biāo)函數(shù)Lcls(θ,x)與Lcon(θ,x),是兩個(gè)不同的最大化問(wèn)題.故而需要求解兩個(gè)內(nèi)層最大化問(wèn)題.為了簡(jiǎn)化訓(xùn)練方式,我們僅僅求解Lcls(θ,x) 找到一個(gè)對(duì)抗樣本x?,然后利用x?作為L(zhǎng)con(θ,x) 的一個(gè)近似解,而不再具體求解Lcon(θ,x) .為了最大化Lcls(θ,x),有很多對(duì)抗攻擊算法都可以使用.在本文中我們選取FGSM方法產(chǎn)生對(duì)抗樣本.具體地,針對(duì)式(6)中的最大化問(wèn)題,我們首先采用式(1)中的方法產(chǎn)生對(duì)抗樣本xFGSM.除了在對(duì)抗樣本xFGSM處優(yōu)化網(wǎng)絡(luò)交叉信息熵?fù)p失函數(shù)外,我們還優(yōu)化在真實(shí)樣本x處的損失函數(shù),故而Lcls(θ,x) 具體表示為
其中,α為一個(gè)超參數(shù),選取為0.5.Lcon(θ,x) 也通過(guò)產(chǎn)生的對(duì)抗樣本xFGSM定義特征層面的損失函數(shù)為
最后將式(8) 和式(9) 中定義的Lcls(θ,x) 和Lcon(θ,x)代入式(5)中訓(xùn)練網(wǎng)絡(luò)的參數(shù)θ.訓(xùn)練算法選用通常訓(xùn)練深度神經(jīng)網(wǎng)絡(luò)的隨機(jī)梯度下降法(Stochastic gradient descent,SGD).
本文所提出的加入特征表示一致性損失的對(duì)抗訓(xùn)練方式與基于高層特征指導(dǎo)的去噪器防御對(duì)抗樣本的方法[27]有一定的相似性.兩個(gè)方法都用到了深度神經(jīng)網(wǎng)絡(luò)特征表示一致性的損失函數(shù)作為訓(xùn)練目標(biāo).但是這兩個(gè)方法在目標(biāo)、訓(xùn)練方式、以及最終結(jié)果上存在很大的區(qū)別:1)我們的方法目標(biāo)是提升深度神經(jīng)網(wǎng)絡(luò)的可解釋性,高層特征指導(dǎo)的去噪器目標(biāo)是去除對(duì)抗樣本中的噪聲,提升模型魯棒性;2)我們利用對(duì)抗訓(xùn)練的方式訓(xùn)練模型,而高層特征指導(dǎo)的去噪器通過(guò)分類器的特征表示作為損失函數(shù)訓(xùn)練去噪器,而不更新分類器的參數(shù);3)在實(shí)驗(yàn)結(jié)果中,我們的方法可以提升深度神經(jīng)網(wǎng)絡(luò)的可解釋性,而高層特征指導(dǎo)的去噪器由于不更新模型的參數(shù),所以模型的可解釋性沒(méi)有任何改變.
本文在ImageNet[28]數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn).通過(guò)對(duì)抗樣本分析三個(gè)不同的深度神經(jīng)網(wǎng)絡(luò)的可解釋性,并利用提出的加入特征一致性損失的對(duì)抗訓(xùn)練方式提升這三個(gè)模型的可解釋性.實(shí)驗(yàn)結(jié)果證明了通過(guò)該方法訓(xùn)練得到的深度神經(jīng)網(wǎng)絡(luò)的特征與人類所理解的語(yǔ)義概念之間的一致性更好.
本文選取AlexNet[29]、VGG-16[24]和ResNet-18[30]三個(gè)經(jīng)典的網(wǎng)絡(luò)結(jié)構(gòu)研究其可解釋性.對(duì)于正常訓(xùn)練的模型,我們采用預(yù)訓(xùn)練好的AlexNet 和VGG-16 模型,并重新訓(xùn)練了一個(gè)ResNet-18 模型.ResNet-18 通過(guò)隨機(jī)梯度下降進(jìn)行優(yōu)化,其中超參數(shù)設(shè)置為:動(dòng)量為0.9,權(quán)重衰減項(xiàng)為 5×10?5,批大小為100,初始學(xué)習(xí)率為0.05,每當(dāng)模型損失函數(shù)在一段時(shí)間內(nèi)停止下降時(shí)將學(xué)習(xí)率減小10 倍.該模型總共訓(xùn)練了30 萬(wàn)輪.ResNet-18 網(wǎng)絡(luò)中加入了批歸一化操作(Batch normalization)[31].由于對(duì)抗訓(xùn)練的計(jì)算成本過(guò)高,我們通過(guò)微調(diào)的方式在這些訓(xùn)練好的正常模型上進(jìn)行對(duì)抗訓(xùn)練.在對(duì)抗訓(xùn)練的過(guò)程中需要利用FGSM 算法生成對(duì)抗樣本,我們將擾動(dòng)的規(guī)模設(shè)置為? ∈[4,16] .我們將對(duì)抗訓(xùn)練得到的三個(gè)同樣結(jié)構(gòu)的模型表示為AlexNet-Adv、VGG-16-Adv 和ResNet-18-Adv.
在測(cè)試階段,我們選取兩個(gè)數(shù)據(jù)集用于測(cè)試.其中第1 個(gè)數(shù)據(jù)集是ImageNet 驗(yàn)證集,包含5 萬(wàn)幅圖片.為了使用對(duì)抗樣本驗(yàn)證這些模型的可解釋性,我們利用Adam 優(yōu)化器求解式(4),其中Adam的步長(zhǎng)設(shè)置為5,總共優(yōu)化10~ 20 輪.對(duì)于數(shù)據(jù)集中的每一幅真實(shí)圖片,為了產(chǎn)生有目標(biāo)的對(duì)抗樣本,我們將目標(biāo)類別設(shè)置為模型對(duì)真實(shí)圖片預(yù)測(cè)概率最小的類別,可以使得真實(shí)類別與目標(biāo)類別的差異更加明顯.需要注意的是對(duì)于每一個(gè)模型,我們都針對(duì)該模型產(chǎn)生對(duì)抗樣本.第2 個(gè)測(cè)試數(shù)據(jù)集是Broden[15]數(shù)據(jù)集,提供了對(duì)于圖片中語(yǔ)義概念的細(xì)粒度標(biāo)注,包括顏色、紋理、材質(zhì)、場(chǎng)景、物體部分和物體等.該數(shù)據(jù)集用于定量地衡量深度神經(jīng)網(wǎng)絡(luò)的可解釋性.對(duì)于該數(shù)據(jù)集,我們?nèi)匀徊捎们笆龅膶?duì)抗樣本生成方式.給定這兩個(gè)數(shù)據(jù)集中的真實(shí)圖片和對(duì)其產(chǎn)生的對(duì)抗圖片,我們繼而定性以及定量地研究正常訓(xùn)練的模型和用我們所提出的算法訓(xùn)練的模型的可解釋性的優(yōu)劣.
本文采用兩個(gè)指標(biāo)衡量深度神經(jīng)網(wǎng)絡(luò)中神經(jīng)元學(xué)習(xí)的特征與語(yǔ)義概念之間的一致性.第1 個(gè)指標(biāo)是Bau 等[15]在2017 年提出的利用Broden 數(shù)據(jù)集計(jì)算的指標(biāo).該指標(biāo)計(jì)算神經(jīng)元學(xué)習(xí)到的特征與數(shù)據(jù)集標(biāo)注的語(yǔ)義概念之間的一致性以解釋神經(jīng)元的特征,并通過(guò)與不同層次語(yǔ)義概念相關(guān)聯(lián)的神經(jīng)元的數(shù)量或比例度量深度神經(jīng)網(wǎng)絡(luò)的可解釋性.具體來(lái)說(shuō),對(duì)于模型中的每一個(gè)神經(jīng)元,首先通過(guò)整個(gè)數(shù)據(jù)集得到該神經(jīng)元產(chǎn)生的響應(yīng)的分布,然后通過(guò)這些響應(yīng)值的上0.5%分位數(shù)確定一個(gè)閾值.該閾值用于掩膜每幅圖片對(duì)其產(chǎn)生的響應(yīng)值.然后將該神經(jīng)元特征的掩膜擴(kuò)展到圖片大小,得到一個(gè)分割掩膜.最后,該分割掩膜與數(shù)據(jù)集中包含的語(yǔ)義概念真實(shí)的分割掩膜計(jì)算交并比大小.如果交并比很大,就說(shuō)明該神經(jīng)元產(chǎn)生響應(yīng)的區(qū)域與圖像中包含某種語(yǔ)義概念的區(qū)域重合度很高,可以認(rèn)為該神經(jīng)元檢測(cè)此種語(yǔ)義概念.雖然這個(gè)指標(biāo)可以得到每個(gè)神經(jīng)元檢測(cè)的語(yǔ)義概念,但是它需要包含各種語(yǔ)義概念分割結(jié)果的數(shù)據(jù)集,而對(duì)于ImageNet 這種僅僅包含圖片分類標(biāo)簽的數(shù)據(jù)集并不適用.因此我們提出了第2 個(gè)指標(biāo)用于衡量深度神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)的特征與語(yǔ)義概念的一致性.
基于一些直觀的觀察,一般情況下低層次的語(yǔ)義信息(例如顏色、紋理)會(huì)在許多不同類別的圖片中出現(xiàn),而高層次的語(yǔ)義信息(例如物體或者物理組成部分) 僅僅會(huì)在一些特定類別的圖片中出現(xiàn).因此我們認(rèn)為,如果一個(gè)神經(jīng)元對(duì)某些特定類別的圖片產(chǎn)生較強(qiáng)的響應(yīng),那么它更有可能檢測(cè)高層次的語(yǔ)義信息;反之如果該神經(jīng)元對(duì)多種類別的圖片都產(chǎn)生很強(qiáng)的響應(yīng),那么它更有可能檢測(cè)低層次的語(yǔ)義信息.基于此觀察,我們通過(guò)計(jì)算對(duì)每個(gè)神經(jīng)元產(chǎn)生響應(yīng)較強(qiáng)的圖片中的語(yǔ)義信息的多樣性衡量該神經(jīng)元檢測(cè)語(yǔ)義信息的層次和一致性.
具體地,對(duì)于一個(gè)神經(jīng)元ni,我們首先利用整個(gè)數(shù)據(jù)集計(jì)算其產(chǎn)生的響應(yīng),然后用前1%的圖片代表其學(xué)習(xí)的特征.我們令pi代表這些圖片的類別分布,即代表這些圖片中真實(shí)類別為j的圖片的比例,以指示該神經(jīng)元傾向于檢測(cè)的類別.為了計(jì)算這些圖片類別分別的多樣性,一個(gè)簡(jiǎn)單的方式是用pi的熵作為衡量指標(biāo),但是該指標(biāo)忽視了類別之間的層次相關(guān)性.例如,相比于對(duì)貓和狗圖片都產(chǎn)生響應(yīng)的神經(jīng)元(其可能檢測(cè)動(dòng)物皮毛),一個(gè)對(duì)不同類別的狗的圖片產(chǎn)生響應(yīng)的神經(jīng)元(其可能檢測(cè)狗臉)更有可能檢測(cè)更高層次的語(yǔ)義概念.
為了解決上述問(wèn)題,我們通過(guò)WordNet[22]將各個(gè)類別之間的語(yǔ)義相關(guān)性進(jìn)行度量.如圖3 所示,我們利用WordNet 樹(shù)結(jié)構(gòu)中不同類別的距離作為語(yǔ)義相關(guān)性的度量,具體計(jì)算方式為
圖3 基于WordNet[32]衡量特征的層次與一致性示意Fig.3 Illustration for quantifying the level and consistency of features based on WordNet[32]
其中,wl,wm是第l和第m個(gè)類別的單詞,d(wl,wm)為它們?cè)赪ordNet 樹(shù)結(jié)構(gòu)中的距離.σ為一個(gè)超參數(shù),設(shè)置為1.基于每?jī)蓚€(gè)類別的語(yǔ)義相關(guān)性cl,m,我們將其組合成類別相關(guān)性矩陣C=[cl,m] .從而,將神經(jīng)元ni檢測(cè)特征的層次和一致性定量地表示為
LC值更高則代表神經(jīng)元檢測(cè)一個(gè)更高層次的語(yǔ)義概念或更關(guān)注于某些特定類別的圖片.
除了真實(shí)圖片外,我們也關(guān)注對(duì)每個(gè)神經(jīng)元產(chǎn)生響應(yīng)最強(qiáng)的前1%的對(duì)抗圖片.對(duì)于每個(gè)神經(jīng)元,用p代表對(duì)其產(chǎn)生響應(yīng)最強(qiáng)的前1%真實(shí)圖片的類別分布,同時(shí)用q代表對(duì)其產(chǎn)生響應(yīng)最強(qiáng)的前1%對(duì)抗圖片的真實(shí)類別分布,并用代表對(duì)其產(chǎn)生響應(yīng)最強(qiáng)的前1% 對(duì)抗圖片的目標(biāo)類別分布.與式(11)中的定義類似,我們計(jì)算真實(shí)圖片語(yǔ)義概念與對(duì)抗圖片語(yǔ)義概念的相關(guān)性為
其中,CS1衡量真實(shí)圖片和對(duì)抗圖片中內(nèi)容的相似度;CS2測(cè)量真實(shí)圖片類別和對(duì)抗圖片目標(biāo)類別的相似度.
在極端情況下,CS1=1 意味著對(duì)抗圖片的真實(shí)類別與真實(shí)圖片的類別完全一致,說(shuō)明神經(jīng)元對(duì)于對(duì)抗圖片與真實(shí)圖片均檢測(cè)一致的語(yǔ)義概念,則其可解釋性更好.另一方面,CS2=1 意味著對(duì)抗圖片的目標(biāo)類別與真實(shí)圖片的類別完全一致,而且內(nèi)容完全不相關(guān),說(shuō)明該神經(jīng)元可解釋性很差.值得注意的是CS1和CS2不可能同時(shí)很高,這是因?yàn)閝和由于攻擊的存在差異明顯.
1) 可視化結(jié)果.我們首先采用響應(yīng)最大化的方式觀測(cè)深度神經(jīng)網(wǎng)絡(luò)內(nèi)部神經(jīng)元學(xué)習(xí)到的特征.對(duì)于每個(gè)神經(jīng)元,在ImageNet 驗(yàn)證集中找到對(duì)其產(chǎn)生響應(yīng)最強(qiáng)的8 幅真實(shí)圖片和8 幅對(duì)抗圖片代表其學(xué)習(xí)到的特征.對(duì)于三個(gè)正常模型AlexNet,VGG-16 和ResNet-18 的可視化結(jié)果如圖4、圖2和圖5所示.正如在第2 節(jié)中所討論的,這些神經(jīng)元并不會(huì)對(duì)對(duì)抗樣本中相關(guān)的語(yǔ)義概念產(chǎn)生響應(yīng),而僅對(duì)于模型錯(cuò)分為相關(guān)類別的圖像產(chǎn)生響應(yīng),無(wú)論這些圖片中的語(yǔ)義概念是否相關(guān)聯(lián).類似地,我們展示對(duì)三個(gè)通過(guò)我們所提出的對(duì)抗訓(xùn)練方式得到的模型AlexNet-Adv、VGG-16-Adv 和 ResNet-18-Adv的可視化結(jié)果,如圖6~ 8 所示.通過(guò)對(duì)抗訓(xùn)練,我們發(fā)現(xiàn)對(duì)抗圖片和真實(shí)圖片中的語(yǔ)義概念十分接近,表明這些網(wǎng)絡(luò)中的神經(jīng)元更傾向于對(duì)語(yǔ)義概念產(chǎn)生響應(yīng).這就說(shuō)明了通過(guò)我們所提出的對(duì)抗訓(xùn)練方式,模型內(nèi)部特征的可解釋性更強(qiáng),更容易被人類所理解.后續(xù)的定量實(shí)驗(yàn)也進(jìn)一步驗(yàn)證了此結(jié)論.
圖4 AlexNet 網(wǎng)絡(luò)中神經(jīng)元(來(lái)自conv5 層)特征可視化Fig.4 The visualization results of the neuron (from the conv5 layer) features in AlexNet
圖5 ResNet-18 網(wǎng)絡(luò)中神經(jīng)元(來(lái)自conv5b 層)特征可視化Fig.5 The visualization results of the neuron (from the conv5b layer) features in ResNet-18
圖6 AlexNet-Adv 網(wǎng)絡(luò)中神經(jīng)元(來(lái)自conv5 層)特征可視化Fig.6 The visualization results of the neuron (from the conv5 layer) features in AlexNet-Adv
2) 定量結(jié)果.對(duì)于Broden 數(shù)據(jù)集,我們計(jì)算每個(gè)模型中和各類語(yǔ)義概念相關(guān)的神經(jīng)元的比例,代表模型可解釋性的好壞.如果某個(gè)神經(jīng)元產(chǎn)生響應(yīng)的掩碼與一個(gè)語(yǔ)義概念的分割掩碼的交并比大于0.4,就認(rèn)為它是一個(gè)可解釋的神經(jīng)元.對(duì)于每個(gè)模型也同時(shí)計(jì)算該模型對(duì)于對(duì)抗圖片的可解釋神經(jīng)元的比例.表1 中展示了實(shí)驗(yàn)結(jié)果,共有 6 類不同的語(yǔ)義概念,分別為:顏色 (C)、紋理 (T)、材質(zhì) (M)、場(chǎng)景 (S)、物體組成部分 (P) 和物體 (O) .
圖7 VGG-16-Adv 網(wǎng)絡(luò)中神經(jīng)元(來(lái)自conv5_3 層)特征可視化Fig.7 The visualization results of the neuron (from the conv5_3 layer) features in VGG-16-Adv
圖8 ResNet-18-Adv 網(wǎng)絡(luò)中神經(jīng)元(來(lái)自conv5b 層)特征可視化Fig.8 The visualization results of the neuron (from the conv5b layer) features in ResNet-18-Adv
從表1 的實(shí)驗(yàn)結(jié)果中可以看到,對(duì)于正常訓(xùn)練的模型,和高層次語(yǔ)義概念相關(guān)聯(lián)的神經(jīng)元在面向?qū)箻颖緯r(shí)會(huì)大幅度下降.這證實(shí)了這些神經(jīng)元學(xué)習(xí)到的特征與語(yǔ)義概念之間存在不一致性.另一方面,通過(guò)對(duì)抗訓(xùn)練得到的模型即使在對(duì)抗樣本存在時(shí)其中的神經(jīng)元也會(huì)和語(yǔ)義概念有很好的關(guān)聯(lián).這些結(jié)果也證明了利用本文提出的對(duì)抗訓(xùn)練方式可以提升深度神經(jīng)網(wǎng)絡(luò)特征表示與語(yǔ)義概念的一致性.
在表1 中,我們還對(duì)比了不加入特征一致性損失的對(duì)抗訓(xùn)練方式[20]得到的模型,該模型是在Inception V3[33]結(jié)構(gòu)上訓(xùn)練得到,表示為Adv-Inc-v3.為了展示該方法對(duì)于模型可解釋性的提升,我們進(jìn)一步選取正常訓(xùn)練的Inception V3 模型進(jìn)行比較,表示為Inc-v3.從表1 可以看到,采用不加入一致性損失的對(duì)抗訓(xùn)練方式得到的模型相比于正常訓(xùn)練的模型也能得到更好的可解釋性,這與之前的研究發(fā)現(xiàn)[34]相符,其原因是魯棒的模型會(huì)更加依賴可解釋的特征進(jìn)行分類.然而,不加入特征表示一致性損失的對(duì)抗訓(xùn)練對(duì)于可解釋性的提升不如加入一致性損失的對(duì)抗訓(xùn)練明顯,這也說(shuō)明了我們所提出方法的有效性.圖9 中也進(jìn)一步對(duì)Adv-Inc-v3 模型內(nèi)部的神經(jīng)元學(xué)習(xí)到的特征進(jìn)行了可視化.可以看到某些神經(jīng)元展示出了比較好的可解釋性,對(duì)其產(chǎn)生響應(yīng)較強(qiáng)的真實(shí)圖片與對(duì)抗圖片具有類似的語(yǔ)義概念,可以解釋該神經(jīng)元學(xué)習(xí)到的特征.但是也存在某些神經(jīng)元,如圖9(c) 所示,對(duì)其產(chǎn)生響應(yīng)最強(qiáng)的8 幅對(duì)抗圖片中包含了不屬于該語(yǔ)義概念的圖片.
圖9 Adv-Inc-v3 網(wǎng)絡(luò)中神經(jīng)元(來(lái)自最后一層)特征可視化Fig.9 The visualization results of the neuron (from the last layer) features in Adv-Inc-v3
表1 各個(gè)模型面對(duì)真實(shí)圖片和對(duì)抗圖片時(shí)其中與語(yǔ)義概念關(guān)聯(lián)的神經(jīng)元的比例(%)Table 1 The ratio (%) of neurons that align with semantic concepts for each model when showing real and adversarial images respectively
此外,我們還進(jìn)一步對(duì)比了[15]中所發(fā)現(xiàn)的可解釋性更好的模型VGG-16-Place.相對(duì)于在ImageNet 數(shù)據(jù)集上訓(xùn)練的模型,該模型是在Place 數(shù)據(jù)集上訓(xùn)練得到,具有更好的可解釋性.從表1 可以看到,雖然對(duì)于真實(shí)圖片VGG-16-Place 模型可解釋性更好,但是當(dāng)對(duì)抗樣本存在時(shí)其可解釋性也會(huì)大幅下降.說(shuō)明了該網(wǎng)絡(luò)中神經(jīng)元學(xué)習(xí)到的特征與語(yǔ)義概念之間也存在不一致性.也進(jìn)一步說(shuō)明了利用加入特征表示一致性損失的對(duì)抗訓(xùn)練方式提升模型可解釋性的必要.
對(duì)于ImageNet 驗(yàn)證集,圖 10 中展示了CS1和CS2隨LC變化的曲線,對(duì)于一個(gè)給定的LC值,計(jì)算在該LC值附近的所有神經(jīng)元的CS1和CS2的平均值,其中神經(jīng)元來(lái)自于所有卷積層.對(duì)于正常訓(xùn)練的模型,CS1隨著LC的增加而降低,這意味著面向真實(shí)圖片檢測(cè)高層次語(yǔ)義特征的神經(jīng)元對(duì)于對(duì)抗圖片并沒(méi)有檢測(cè)相似的語(yǔ)義概念.而CS2隨著LC的增加而增加,說(shuō)明了這些神經(jīng)元只是對(duì)模型預(yù)測(cè)為某些類別的圖片產(chǎn)生較強(qiáng)的響應(yīng),而不考慮圖片中是否真正存在該類別的語(yǔ)義概念.另一方面對(duì)于對(duì)抗訓(xùn)練的模型,CS1保持在很高的值,說(shuō)明模型中的神經(jīng)元對(duì)真實(shí)圖片和對(duì)抗圖片中的類似語(yǔ)義產(chǎn)生較強(qiáng)響應(yīng),證明了該方法可以提升模型中神經(jīng)元學(xué)習(xí)的特征表示與語(yǔ)義概念的一致性,提升了模型的可解釋性.
圖10 CS1 和CS2 隨LC 的變化曲線Fig.10 The curves of CS1 and CS2 along with LC
3) 模型性能.表2 中展示了在本文中所采用的模型在ImageNet 驗(yàn)證集及對(duì)其采用FGSM 方法產(chǎn)生的對(duì)抗樣本的分類準(zhǔn)確率結(jié)果.可以看到經(jīng)過(guò)對(duì)抗訓(xùn)練,模型的準(zhǔn)確率會(huì)下降1%~ 5%左右,但是也可以提升模型對(duì)于攻擊的魯棒性.我們認(rèn)為對(duì)抗訓(xùn)練方式可以在模型準(zhǔn)確率和模型可解釋性以及魯棒性之間做出平衡.
表2 各個(gè)模型在ImageNet 驗(yàn)證集及對(duì)于FGSM 攻擊的準(zhǔn)確率(%) (擾動(dòng)規(guī)模為 ?=4)Table 2 Accuracy (%) on the ImageNet validation set and adversarial examples generated by FGSM with ?=4
本文利用對(duì)抗樣本從模型錯(cuò)誤的角度檢驗(yàn)深度神經(jīng)網(wǎng)絡(luò)的的特征表示,并發(fā)現(xiàn)其中神經(jīng)元學(xué)習(xí)到的特征與人類所理解語(yǔ)義概念存在不一致性.為了解決此問(wèn)題以提升深度神經(jīng)網(wǎng)絡(luò)的可解釋性,本文提出了加入特征表示一致性的對(duì)抗訓(xùn)練方式.實(shí)驗(yàn)結(jié)果證實(shí)了該訓(xùn)練方法可以有效地提升神經(jīng)元學(xué)習(xí)的特征與語(yǔ)義概念之間的一致性,得到可解釋性更好的深度神經(jīng)網(wǎng)絡(luò).