趙小陽 李仲年 王文玉 許新征,2
1 (中國礦業大學計算機學院 江蘇徐州 221116)
2 (中國礦業大學教育部礦山數字化工程研究中心 江蘇徐州 221116)(xuxinzh@163.com)
近年來,對于卷積神經網絡(CNN)系列黑盒模型,研究者們提出了越來越多的可解釋方法,其中一個主流研究方向是可視化CNN隱藏層中的特征表示.然而,神經網絡的特征可視化與神經網絡的語義解釋之間仍存在巨大差距.對于一個對象實例的判斷,人類通常是將該實例分解為對象部分,并與存儲在腦中的概念進行匹配,作為識別各對象部分的證據,用這些腦海中已識別的概念解釋推理過程,做出最終決定.仿照人腦識別物體機制,確定對象部分并構造概念以實現可解釋的智能機器模型是一個有潛在研究價值的新興方向.本文中提到的“概念”在圖像識別任務中的本質是“視覺概念”,即具有語義信息且對模型預測起重要作用的像素集.同一視覺概念在不同圖像中的表現形式相似,不同視覺概念具有不同的語義信息.例如,斑馬的條紋、汽車的輪胎以及鳥類的羽毛等都可以作為其類別的一個基礎視覺概念.本文將視覺概念統一簡稱為概念.
基于概念解釋模型,一個重要問題就是如何量化定義概念.用概念激活向量進行測試(testing with concept activation vectors,TCAV)[1]是最早提出使用概念激活向量(concept activation vectors, CAV)量化定義概念的方法,CAV不再分析網絡單個節點的特征,而是嘗試學習它們的線性組合來表示預定義的概念.ACE[2]基于TCAV,通過聚類圖像塊自動發現定義新概念.ICE[3]通過對特征圖進行非負的矩陣分解修改ACE框架,為不同實例提供一致的CAV權重,提供概念保真度測量措施.上述3種基于概念的解釋方法也稱概念向量方法,都針對預訓練模型進行事后分析,且都依賴于概念的潛在空間中存在一個易于分類的分類器的假設.然而,網絡的潛在空間并無此特性,即概念向量方法其實是基于一個獨立于模型的額外的分類器.理想情況下,一個可解釋的CNN不應該求助于額外的分類器,而是具有可解釋的分類器,即可解釋CNN的潛在分類空間如何分類概念(解糾纏)對于用戶來說應該是透明的或可理解的.
現如今構造CNN透明潛在分類空間的代表性方法有概念白化(concept whitening, CW)[4]、TesNet[5]和Deformable ProtoPNet[6]等.CW模塊通過在網絡訓練過程中強制約束潛在空間的軸與預定義的類別概念對齊,約束不同的類別概念軸方向彼此正交,從而使潛在空間中的類別概念解糾纏.TesNet引入正交損失以鼓勵類內的不同概念之間彼此正交,在Grassmann流形上構造透明潛在空間.Deformable ProtoPNet受TesNet啟發,在原型零件之間引入正交損失,鼓勵類內的所有原型零件彼此之間正交.CW模塊使潛在空間中的所有濾波器的輸出完全去相關,TesNet和Deformable ProtoPNet使同一類別內的概念彼此正交,這些約束要求太過絕對.在實踐中有很多概念之間是高度相關或者有相對穩定的空間關系,如“飛機”概念和“天空”概念,“車身”與“車輪”的位置關系等.類比人腦識別物體機制,除了對物體本身各部位的識別外,通常還會參照物體所處環境以及參照物等信息.
因此,在保留類別相關概念依賴關系的前提下實現類別的分離,本文引入圖卷積神經網絡模塊構造自適應解糾纏的透明潛在空間,設計了一種可解釋的CNN分類器.采用無監督方式自動獲取類別的基礎概念信息,經可解釋CNN分類器,自主完成不同類別及不相關概念之間的解糾纏.本文的主要貢獻有2點:
1)引入圖卷積神經網絡模塊,設計了類內概念圖編碼器(within-class concepts graphs encoder, CGE)自動獲取類別基礎概念,以圖結構形式編碼類內概念信息及概念之間的空間信息,學習類內基礎概念之間的潛在交互.
2)在CGE編碼器之后,設計了一個自適應解糾纏的可解釋CNN分類器(adaptive disentangled interpretable CNN classifier, ADIC),通過設置三段閾值將潛在空間中的基礎概念分為類內相關概念、類內不相關概念和不同類別概念3種類型,保留相關概念的依賴關系,在不相關概念之間添加強制性正交約束,從而實現類別概念自適應解糾纏.
目前提高神經網絡可解釋性的研究主要分為對現有模型的事后可解釋性分析(post-hoc explainability analysis)和直接構建固有事前可解釋模型(ad-hoc interpretable modeling)2個方向.
事后可解釋方法通常是借助模型額外的輔助信息對訓練好的神經網絡模型節點激活總體趨勢的統計,是為了詳述黑盒模型內部功能或決策原因而采取的一些行動.根據解釋方法的解釋目標是模型整體邏輯還是單個輸入樣本,可以將事后可解釋方法分為全局解釋和局部解釋[7].
全局解釋旨在解釋模型內部的整體邏輯和工作機制[8-9],主要方法包括激活最大化、代理模型和概念激活向量方法等.激活最大化的思路是合成最大程度激活模型整體或感興趣神經元輸出的輸入模式,即表示類別特征的抽象圖像.激活最大化方法只能用于連續性數據,例如DeepDream算法[10].代理模型指的是構造一個可解釋的更簡單的模型模擬原始網絡模型決策,包括網絡壓縮[11-12]、知識蒸餾[13-15]和直接提取[16-18].概念激活向量方法的主要思路是基于“視覺概念”,將一組具有相似特征的圖像塊或圖像稱之為一個“視覺概念”,例如一組包含條紋的圖像塊或圖像即代表“條紋”概念.谷歌研究團隊提出的TCAV[1]使用視覺概念進行全局解釋,利用方向導數量化模型預測結果對沿著CAV方向變化的特定視覺概念的敏感度全局定量評估每個視覺概念對模型預測結果的影響度.TCAV需要預先定義感興趣的概念,通過手動收集可以表示特定概念的示例集訓練線性分類器,以習得CAV.針對TCAV需要手動收集視覺概念的問題,Amirata等人[2]提出了一種自動視覺概念提取方法ACE,通過圖像塊聚類定義新概念以自動提取視覺概念,然后利用TCAV對提取的視覺概念進行評估.Zhang等人[3]提出了基于可逆概念的ICE框架,采用非負矩陣分解可以為不同實例的相同特征提供一致的CAV權重,并提出一致的保真度測量措施.局部解釋通常表現為可視化解釋,即以顯著圖或熱力圖的形式突出顯示輸入圖像中對預測結果起重要作用的像素區域[19-20].除此之外,Liu等人[21]還提出了稀疏對比編碼(sparse contrastive coding, SCC), 通過模型每一層的隱藏狀態得到詞向量的特征重要性,自適應地將輸入分為前景和背景的任務相關性, 采用監督對比學習損失提高模型可解釋性和性能.局部解釋方法可以大致分為基于擾動的前向傳播顯著性方法[22-25]、基于反向傳播的顯著性方法[26-29]和基于類激活映射的顯著性方法[30-33]這3種類型.
事前可解釋方法是從頭設計可以自解釋的固有可解釋神經網絡,自解釋模型在應用的同時為用戶提供模型輸出的決策原因,無需添加額外的信息.事前可解釋方法可以避免事后解釋方法不忠實于原始模型的偏見,因為事后可解釋分析中原始模型預測期間不使用事后解釋,預測和解釋是2個獨立的過程.事前可解釋方法可以進一步分為模型翻新和可解釋表示[34].
模型翻新是指設計模型可解釋組件或新的網絡結構編碼特定的語義概念,實現模型內置可解釋性.例如,Chen等人[35-36]設計基于案例推理的神經網絡結構來剖析圖像,通過類別典型特征解釋模型推理.Wang等人[5]提出可解釋的深度模型TesNet,構造類別子空間分離的透明潛在空間,并約束類內概念彼此正交.Jon等人[6]提出Deformable ProtoPNet,提供空間靈活的可變形原型,可以捕捉到目標對象的姿勢變化和環境,相比ProtoPNet[35]具有更加豐富的解釋.Peng等人[37]提出了類別可解釋的神經聚類(interpretable neural clustering, TELL)網絡,其將k均值目標重新表述為神經層,實現了算法透明化.可解釋表示通常是采用正則化技術在神經網絡訓練過程中學習更具可解釋性的語義表示,從模型的可分解性、單調性和稀疏性等方面設計正則化項,實現模型內部表征解糾纏.例如,Zhang等人[38]設計了一種將每個濾波器響應約束到高層卷積層中特定對象部分的正則化損失,獲取解糾纏表示.Lage等人[39]提出新穎的human-inthe-loop正則化項,通過用戶評估已完成訓練的多個網絡模型的響應時間來衡量對模型的理解程度,選擇用戶響應時間最短的模型.Chen等人[4]提出一種概念白化模塊,直接約束潛在空間,強制潛在空間的軸與預定義概念對齊,不同概念之間彼此正交.
基于模型翻新技術的TesNet和Deformable ProtoPNet以及基于可解釋表示技術的概念白化模塊,均以視覺概念為中間形式實現模型可解釋圖像識別.概念白化模塊、TesNet和Deformable ProtoPNet強制約束類內基礎概念彼此正交甚至基礎概念塊間彼此正交,約束過于絕對,忽略了基礎概念之間可能存在高依賴度的潛在交互.另外,概念白化模塊使用預定義概念,概念集和模型訓練集相互獨立.本文針對上述問題,設計了一種自適應解糾纏的可解釋分類器,通過引入圖結構學習類內基礎概念特征及其之間的依賴關系,對具有不同依賴度的基礎概念進行不同程度的正則化約束,在保留高依賴度基礎概念之間潛在交互信息的同時,實現類內不相關概念及不同類別概念的解糾纏,即實現透明化潛在分類空間.
基于概念的可逆解釋(invertible concept-based explanations,ICE )框架是一個為預訓練的CNN模型提供局部和全局概念級解釋的框架,它采用非負矩陣分解提出非負概念激活向量(non-negative concept activation vectors, NCAV),為特征提供一致的權重和一致的保真度測量.
ICE框架主要由CNN模型分割、特征圖降維器以及CAV權重評估這3部分組成,框架如圖1所示.首先選定預訓練CNN的目標層l,將其分解為概念提取器E和分類器C,概念提取也就是高維特征提取.n個輸入圖像I經特征提取得到尺寸為n×h×w×c(h和w為Al的大小,c為通道數)的特征圖Al,El(I)=Al,對特征圖Al采用矩陣分解進行降維,先將特征圖Al展平為非負矩陣V∈R(n×h×w)×c.接著將V分為特征分數S∈R(n×h×w)×c′和有意義的NCAVP∈Rc′×c,V=SP+U;最小化殘差U,minS,P‖V-SP‖Fs.t.S≥0,P≥0.最后,建立分類器C的線性近似,評估每個CAV的重要性.

Fig.1 ICE framework圖1 ICE框架
對于分類器C的特征重要性的評估,ICE采用TCAV[1]中求方向導數的方法.給定目標層l中已學習的NCAVPl,對于給定的特征圖Al,針對k類的權重計算如式(1)所示.
ICE克服了自動概念提取算法ACE通過聚類特征圖獲取的概念權重不一致的缺點,自動獲取高概念分數的類別視覺概念,但其依然需要依賴獨立于原始模型的額外的分類器.針對此局限性,本文摒棄ICE的權值評估部分,不使用額外的分類器,設計可自解釋的神經網絡模型.
圖卷積神經網絡(graph convolution neural network,GCN)是CNN針對非歐幾里德數據(也稱之為圖數據)衍生出的網絡.拓撲自適應圖卷積網絡(topology adaptive graph convolutional network, TAGCN)是Du等人[40]提出的針對有向圖任務進行處理的GCN模型,其通過設計一組固定大小(大小為1~k)的可學習濾波器執行圖上卷積,而不是對圖上卷積取近似.
給定有向圖G 上的信息及其關系表示為G=(V,E,ˉ),V 為頂點集,E 為邊集,為圖的加權鄰接矩陣,表示頂點n到頂點m的有向邊權值.第f個多項式第c個特征圖卷積濾波器表示為為濾波器多項式系數,1Nl表示數值全為1的Nl維向量.輸出特征圖為來自不同大小濾波器的卷積結果的加權和,是從頂點j到頂點i的所有長度為k的路徑,如式(2)所示.
其中,bf為可學習的偏差,Kl∈{1,2,3,…}即圖濾波器的尺寸,表示從頂點j到頂點i的所有長度為k的路徑權重之和,表示應用于頂點值的激活函數.
CW模塊是Chen等人[4]在2020年提出的一種直接約束潛在空間,強制潛在空間的軸與預定義的概念對齊是使潛在空間白化(去相關和歸一化)的模塊.CW模塊作為插入模塊可以替代CNN中的普通批歸一化步驟,即BN層.
CW模塊由白化(whitening)變換和正交(orthogonal)變換2部分組成.白化變換主要是對數據進行去相關和標準化,如式(3)所示.令Zd×n為n個樣本的潛在表示矩陣,其中每一列zi∈Rd包含第i個樣本的潛在特征.對于k個感興趣的概念c1,c2,…,ck,預先定義k個輔助數據集Xc1,Xc2,…,Xck,Xcj中的樣本為概念cj最具代表性的樣本.
其中,Ψ為白化變換,μ是樣本均值,Wd×d是白化矩陣,Σd×d是協方差矩陣.白化矩陣W不唯一,通過 零相位分量分析(zero-phase analysis,ZCA)和Cholesky分解等多種方式計算獲得.
在對潛在空間進行白化變換后,還需在潛在空間中旋轉樣本,以使來自概念Cj的數據在第j個軸上高度激活.具體地,需要找到一個正交矩陣Qd×d,其列qj就是第j個軸,即正交變換,優化目標如式(4)所示:
其中,Zcj是Xcj潛在表示的d×nj的矩陣.此正交性約束優化問題通過Stiefel流形上基于梯度的方法[41]解決.
仿照人腦識別機制,用概念解釋模型,首先需要的是量化定義概念.為了使解釋忠于原始模型,不借助額外的分類器對概念進行重要性度量.本文使用ICE提取類別概念,但不評估概念分數,而是對類別內概念進行重新聚類編碼,獲取類別基礎概念.接著,以有向無環帶權圖表示原始圖像,基礎概念為頂點,概念中心點間的連接為有向邊,概念間的依賴度為有向邊的權值.使用TAGCN學習類內基礎概念的潛在交互,設計基于GCN的類內概念圖編碼器CGE.CGE用不同的概念成分或不同的概念交互解釋類別差異.CGE的流程如圖2所示.

Fig.2 CGE flow chart圖2 CGE流程圖
首先,采用無監督的K均值聚類算法,對基于ICE生成的概念樣本按類別進行重新聚類編碼,獲取類別基礎概念為每一類的基礎概念數,Cn為類別數.不進行基礎概念的影響度評估,如圖2上圖所示.接著,構造類內概念圖(within-class concepts graphs, WCG),將原始輸入圖像表示為有向無環帶權圖的形式,如圖2左下圖所示.以基礎概念為頂點bj∈V;概念bj中心點到概念bi中心點的連接表示為有向邊為加權鄰接矩陣,表示頂點j到頂點i的有向邊權值.最后,添加TAGCN模塊,以WCG集為輸入.基于TAGCN學習類內概念間的潛在交互,即基礎概念之間的依賴度,如圖2右下圖所示.參照式(2),因為WCG集僅關心一階路徑的鄰居頂點,故圖濾波器的尺寸僅取1.因此,對于一個WCG,其第l層GCN層的第f個輸出特征圖的表示為:
其中,i表示第i個頂點,為濾波器多項式系數.向量xlf∈RNl指第f個特征(f=b1,b2,…,bm,基礎概念bi)的所有頂點上的第l層的輸入數據.Nl為第l層的頂點數.N(i)為頂點i的一階相鄰頂點集.揭示頂點i和j之間的依賴關系,為可訓練的標量可以取任意實數值或復數值.表示對于類c,概念bi和bj之間的依賴關系.用計算頂點i與領域頂點j的權重之和.
本文在CGE中采用2層GCN結構,即TAGCN模塊含有2層隱含層.依照TAGCN,每個GCN層包含16個圖卷積濾波器,以提取圖數據特征并捕獲頂點間的聚合權值.在隱藏層之后添加一個ReLU激活,以進行非線性激活操作,使GCN層輸入特征圖的所有分量都為非負的.在ReLU激活之后添加dropout操作防止過擬合.在第2個GCN的dropout之后,使用Softmax函數獲取頂點(概念)的邏輯回歸值和概念間的相互依賴關系.
給定一小批量輸入圖像集{x1,x2,…,xt}∈X,{y1,y2,…,yt}∈Y為它們的標簽.X經過CNN特征提取子網絡進行特征提取,隨后經過ICE模塊獲取類別概念樣本,實現類別預分離.再經過CGE對類別概念樣本進行重新聚類編碼,保留各基礎概念簇的預分離類別信息.本文實驗中在每個預分離的類別內隨機選擇4個基礎概念構造一個WCG,將輸入圖像集X經過CGE編碼器,轉變為WCG集{G1,G2,…,Gt}∈G.
按照預分離的類別信息,逐類別輸入GCN模塊.使用TAGCN學習頂點間的聚合權值,對于每一小批量的WCG集 {G1,G2,…,Gt}∈G,進行式(5)的圖卷積操作之后再使用一個非線性操作單元,如式(6)所示.
為了更好地獲取基礎概念之間的依賴關系,參照Christopher等人[42]捕捉概念間關系的思想,將WCG的頂點特征和邊特征進行連接(concatenate)訓練.基于式(5)的頂點特征,頂點特征和邊特征的連接表示如式(7)所示.
由CGE自動獲取類別基礎概念,并學習初步預分離類別內基礎概念之間的依賴關系.設置概念間的依賴度閾值,將潛在空間中的類別基礎概念劃分為相關概念和不相關概念.保留相關概念的依賴關系,通過在不同類別概念和類內不相關概念之間添加不同的解糾纏約束,設計了具有自適應解糾纏潛在空間的可解釋分類器ADIC,使不相關概念彼此正交、不同類別彼此分離,即實現潛在分類空間透明化.圖3展示了基于ADIC的CNN框架.

Fig.3 ADIC-based CNN framework圖3 基于ADIC的CNN框架
圖3所示的基于ADIC的CNN框架具體操作流程為:
1)設置類內基礎概念的依賴度閾值.假定一小批量輸入圖像集{x1,x2,…,xt}∈X,輸入CGE構造對應的WCG集{G1,G2,…,Gt}∈G,經GCN模塊后將WCG集的鄰接矩陣連接成一個稀疏的塊對角矩陣,批量處理圖像集.塊對角矩陣的每一塊對應一個WCG的鄰接矩陣.對稀疏矩陣按圖級輸出進行池化,以池化矩陣形式表示;再通過GCN模塊最后的Softmax函數獲取基礎概念(頂點特征)以及基礎概念間依賴度(邊特征)的邏輯回歸值(logits),取值范圍為[-∞,+∞].根據經驗設置logits閾值,將輸入圖像集的所有基礎概念分為3種情況:
其中,nodei表示頂點i的logit,edgeij和edgeji分別表示頂點i到頂點j的有向邊logit和頂點j到頂點i的有向邊logit.對于每個預分離類別的WCG集中的所有基礎概念,若情況是式8(a)將被視為同類別的相關概念;若情況是式8(b)將被視為同類別的不相關概念;否則將被視為不同類別的概念,即式8(c).
2)實現式8(c)不同類別的基礎概念正交分離.不同類別,即圖3中的Class 1、Class 2和ClassC參照CW模塊通過在Stiefel上進行曲線搜索,強制約束潛在空間中預定義概念彼此正交的思想.Stiefel流形是一種特殊的黎曼流形,由正交矩陣組成,D為單位矩陣.本文同樣通過在潛在空間中尋找一個正交矩陣使不同類別的基礎概念沿Q的不同列方向高度激活,采用在Stiefel流形上計算梯度的方法優化正交約束,進而促使不同類別的基礎概念相互正交分離.
對于一批屬于情況式8(c)的基礎概念集{B1,B2,…,Bt}∈B(c),不同類別基礎概念正交約束損失Lorth,其具體數學表達式如式(9)所示.
其中,qk為正交矩陣Q的第k列.Bk表示感興趣的k類的基礎概念集,bkj為k類的基礎概念樣本.Φ(·)表示特征提取器,參數為θ.得到概念樣本的潛在特征zk∈Rm.Z∈Rm×nk表示nk個基礎概念樣本的潛在表示矩陣,zk為Z的列元素.類比CW模塊,Ψ(·)為白化變換,具體表達形式如式(3)所示.
對于Stiefel流形上的參數矩陣優化,通常采用Cayley變換交替更新.本文采用Cayley變換[41]更新正交矩陣Q,具體數學表達式為:
其中,α為學習率,G為網絡分類損失函數的梯度.
3)實現式8(b)同類別的不相關概念正交歸一化分離.對于ClassC的不相關概念,即圖3中的和.對于一批屬于情況式8(b)的基礎概念樣本集以矩陣形式表示為B(b)∈Rt×d,為每一行為同一類別的一個不相關的基礎概念,d為基礎概念特征向量的維度.本文采用正交歸一化損失,使類內不相關的概念之間彼此推開.
同類別不相關基礎概念正交歸一化損失Lorth_norm,其具體數學表達式如式(11)所示.
其中,Cb為存在符合情況式8(b)基礎概念的類別數.Dt∈Rt×t為單位矩陣.‖·‖F為弗羅貝尼烏斯范數(Frobenius norm),即對矩陣內元素求平方和再開方.則表示求矩陣內元素的平方和.通過最小化Lorth_norm,實現不相關概念之間的分離.
4)實現基于基礎概念的分類.在不同類別及不相關概念解糾纏分離之后,優化分類器的總體識別損失,以確保ADIC的分類準確性.本文以基礎概念為單位,采用標準交叉熵損失實現最終分類.給定訓練集,ADIC識別損失Lre,其具體數學表達式如式(12)所示.
其中,Cn為總類別數.yic表示輸入樣本xi的one-hot編碼標簽的第c個元素.g(·)表示分類器,參數為ω,最后一層滿足歸一化條件為經CGE編碼器編碼后預分離的第c類的基礎概念集.
綜上,ADIC嵌入相關基礎CNN架構進行端到端訓練時,聯合優化目標可表示為式(13)的形式.
其中,λ1和λ2為網絡訓練過程中平衡各項的超參數.
訓練完成后,實現分類空間的解糾纏,得到不同類別基礎概念分離,以及同類別不相關概念分離的透明分類潛在空間.測試時,將測試圖像中的潛在圖像塊與解糾纏之后的各類別基礎概念依據相似度進行匹配,得到屬于各類別的概念相似度分數;再判斷潛在圖像塊之間的交互關系(WCG集的鄰接矩陣,即邊特征)和潛在空間中的基礎概念之間的依賴關系是否相符,得到概念間關系的相似度分數;最后,將概念相似度分數和概念間關系的相似度分數的加權和作為最終的相似性度量,以此判斷測試圖像所屬類別.
為了驗證本文提出的自適應解糾纏分類器ADIC的有效性和可解釋性,本文以VGG-16、ResNet-18和ResNet-50模型為基礎CNN架構,搭載ADIC分類器,在Mini-ImageNet和Places365數據集上進行實驗.分析搭載ADIC分類器的模型的性能表現,針對Mini-ImageNet特定測試實例實現可解釋圖像識別.
Mini-ImageNet數據集為ImageNet的部分節選,共有100個類,每類600張RGB圖像,常用于模型設計或者小樣本學習研究,滿足本文驗證可解釋分類器的需求.Places365數據集是一種遵循人類視覺認知原則的場景分類數據集,常用于對象識別、事物預測,以及理論推理等高級視覺理解任務.Places365數據集共包含365個獨特場景類別,每類5 000~30 000張RGB圖像.
本文實驗環境具體為:CPU為Intel Xeon Gold 6148,實際內存63 GB,GPU為NVIDIA Tesla V100,顯存16 GB.所有實驗均采用PyTorch深度學習框架,使用CUDA 10.1.所有模型都從頭開始訓練,均采用動量為0.9的隨機梯度下降算法對網絡模型進行優化,權值衰減率設為0.000 1,輸入批尺寸設為64,epoch設為100,初始學習率設為0.05.
本節驗證ADIC分類器的解糾纏能力,將ADIC分別嵌入VGG-16、ResNet-18以及ResNet-50 這3種經典CNN模型中.在Mini-ImageNet數據集上訓練6個模型:VGG16、ResNet18和ResNet50,以及添加了ADIC的ADIC-VGG16、ADIC-ResNet18和ADIC-ResNet50.由于本文主要采用正則化技術實現模型內部基礎概念解糾纏,屬于事前可解釋表示方法.因此,與同樣采用可解釋表示技術的CW模塊進行對比,在Places365數據集上訓練6個模型:ResNet18和ResNet50,添加了CW模塊的CW-ResNet18和CW-ResNet50,以及添加了ADIC的ADIC-ResNet18和ADIC-ResNet50.結果分別如表1和表2所示,通過2組對比實驗,驗證ADIC分類器的解糾纏能力,即分類能力.

Table 1 Comparison Results on Mini-ImageNet Dataset表1 在Mini-ImageNet數據集上的對比結果%

Table 2 Comparison Results on Places365 Dataset表2 在Places365數據集上的對比結果%
從表1可以看出,添加ADIC分類器可以提高原始模型的分類精度.相較于原始CNN模型,在 Top-1正確率上,精度提高了大約3個百分點;在Top-5 正確率上,精度提高了大約1.5個百分點.不同的網絡結構結果具有一定差異.
從表2的結果可以看出,添加了CW模塊的可解釋CNN模型,即CW-ResNet18和CW-ResNet50,它們的精度與原始模型保持1%的差異.而添加本文設計的ADIC的CNN模型,ADIC-ResNet18和ADICResNet50,精度均高于原始模型和CW可解釋模型.因此,得出ADIC分類器可以有效實現類別分離,提高模型性能.
另外,為了驗證ADIC添加到網絡不同深度層可能產生的差異,表3和表4分別展現在ResNet18和ResNet50的不同位置添加ADIC時模型性能的變化.其中,該數值表示ADIC添加到該數值的構建塊之后,如2即ADIC添加到第2個構建塊之后.

Table 3 Results of the ADIC Located in Different Depth Layers of ResNet18表3 ADIC位于ResNet18不同深度層的結果%

Table 4 Results of the ADIC Located in Different Depth Layers of ResNet50表4 ADIC位于ResNet50不同深度層的結果%
由表3和表4可以看到,將ADIC添加到ResNet更深層的性能表現優于將其添加到ResNet更淺層,精度隨添加的深度增加而提升.因為層次越深,ADIC獲取到的特征越豐富.因此,為了獲得更好的模型表現,添加ADIC的最佳位置應選擇在全連接層之前的最后一個卷積層后.
本節以添加了ADIC的ADIC-ResNet18為主干網絡,針對Mini-ImageNet數據集中的相同物種以及具有相似特征的不同物種的特定測試圖像,通過可視化測試圖像中與對比類別相關的潛在部位(類別基礎概念)以及部位之間的位置交互(基礎概念之間的依賴關系),實現可解釋的圖像識別.對于相同物種,以Mini-ImageNet數據集中的Japanese_spaniel(n02085782)、Blenheim_spaniel (n02086646)以及Shih-Tzu (n02086240)這3類狗類樣本為例.圖4~6分別展示了這3類樣本中的一張測試圖像的可解釋識別過程,分別可視化與指定類別相關度前4的潛在圖像塊(頂點根據潛在圖像塊相關度排名指定顏色)以及相關度前6的位置關系(有向邊顏色取決于頂點間依賴值大小).

Fig.4 Interpretable image recognition of the Japanese_spaniel class test image圖4 Japanese_spaniel類測試圖像可解釋圖像識別

Fig.5 Interpretable image recognition of the Blenheim_spaniel class test image圖5 Blenheim_spaniel類測試圖像可解釋圖像識別

Fig.6 Interpretable image recognition of the Shih-Tzu class test image圖6 Shih-Tzu類測試圖像可解釋圖像識別
從圖4可以看到,對于一張真實類別為Japanese_spaniel的測試圖像,其潛在圖像塊與Blenheim_spaniel類和Shih-Tzu類的相關度均高于其對于Japanese_spaniel類的相關度值,且其判斷真實類別的前4個圖像塊中包含天空和衣服這種和所判斷的真實類別明顯無關的圖像塊.但模型依然可以判斷天空與狗之間,以及人類與狗之間的潛在交互關系(位置關系)與ADIC已學到的相關概念之間的依賴關系相符(有向邊大多趨向于正向作用),而與學習到的針對Blenheim_spaniel和Shih-Tzu這2個類別內的相關概念的依賴關系不相符(有向邊大多趨向于反向作用),因此模型最終可以正確預測該測試圖像屬于Japanese_spaniel類.
由圖4~6的可視化結果可以得出,對于一張圖像的識別,模型不僅關注感興趣類別的基礎概念(潛在圖像塊),還關注基礎概念之間的潛在交互(位置關系).需要指出的是,由于Mini-ImageNet數據集中部分類別的訓練圖像包含較復雜場景,或者目標對象占整體圖像區域的比例較小(例如圖4中Japanese_spaniel在整張測試圖像中的占比較小),可能會導致模型最終學習到的類別基礎概念并不全部來自于目標對象本身.盡管如此,ADIC依舊可以準確學習到基礎概念之間的位置關系,最終通過概念相似度和概念間的相對位置關系對圖像所屬類別進行最終決策.
對于具有相似特征的不同物種,以Mini-ImageNet數據集中的Malamute (n02110063)和Timber_wolf(n02114367) 以及Tabby (n02123045)和Snow_leopard(n02128757)這4張測試圖像為例,4類2組樣本的可解釋圖像識別可視化對比結果如圖7和圖8所示.

Fig.7 Interpretable image recognition of the Malamute class and the Timber_wolf class test images圖7 Malamute類和Timber_wolf類測試圖像可解釋圖像識別

Fig.8 Interpretable image recognition of the Tabby class and the Snow_leopard class test images圖8 Tabby類和Snow_leopard類測試圖像可解釋圖像識別
從圖7~8中可以看到,具有相似特征的不同物種對象,例如Malamute和Timber_wolf皮毛的顏色及分布接近,Tabby和Snow_leopard具有相似的貓科動物特征(花紋、胡須等).與相同物種的不同類別對象識別類似,模型匹配感興趣類別的基礎概念和基礎概念之間的潛在交互,并做出最終預測.對于正確預測,模型能正確聚焦到測試圖像中類別對象的關鍵部位(類別內相關概念),而對于其它錯誤類別,模型檢測到的大多是背景信息或者其它類別信息(不相關概念).上述可視化圖都是模型正確預測后的可視化結果,圖9展示了模型對于一張Snow_leopard類測試圖像錯誤預測的可視化結果.

Fig.9 Visualization result of model error identification圖9 模型錯誤識別的可視化結果
在圖9中,模型將真實類別為Snow_leopard的測試對象錯誤識別為Tabby,可以看出模型提取到的該測試圖像中的潛在圖像塊與Tabby類基礎概念相關度高于Snow_leopard,并且潛在圖像塊之間一半以上的位置關系(正向作用)符合已學習的Tabby類相關概念間的依賴關系,因此模型做出了錯誤的判斷.
綜上,本節通過可視化模型決策依據(類別基礎概念及概念間依賴關系),實現模型推理透明化,驗證了模型的自解釋性,即ADIC的自解釋性.綜合3.2節在Mini-ImageNet數據集上圖像分類的實驗結果,驗證了添加ADIC分類器能進一步提高原始CNN模型精度,且保證了模型的自解釋能力.
本文引入圖結構設計潛在空間自適應解糾纏的可解釋CNN分類器,在保留具有高依賴度的相關概念潛在交互的前提下,實現不相關概念的自動化分離.首先,利用K均值聚類算法自動獲取初步預分離的各類別的基礎概念.接著,引入圖卷積模塊設計類內概念圖編碼器,用有向無環帶權圖形式編碼潛在分類空間中的特征圖,獲取類內基礎概念的頂點特征及基礎概念間的依賴關系.然后,提出了自適應解糾纏的可解釋分類器ADIC,設置三段閾值將所有基礎概念樣本劃分為同類別相關概念、同類別不相關概念以及不同類別概念3部分,通過添加在Stiefel流形上的正交矩陣優化和正交歸一化損失,依次實現不同類別基礎概念分離和類內不相關概念分離.最后,將ADIC分別嵌入VGG16、ResNet18和ResNet50這3種經典CNN架構,在Mini-ImageNet數據集和Places365數據集上進行圖像分類實驗和可解釋圖像識別實驗,實驗驗證了ADIC的適用性和可解釋性,且具有較好的解糾纏能力.
作者貢獻聲明:趙小陽提出主要研究思路,完成實驗并撰寫論文;李仲年提出指導意見,參與論文修訂;王文玉協助完成部分實驗,參與論文修訂;許新征指導論文寫作,修改和審核論文.