顯著性方法被廣泛應用于突出輸入中與學到的模型的預測結果相關的特征。現(xiàn)有的顯著性方法通常是以圖像數(shù)據(jù)的視覺吸引作為指導的。本文提出了一種可行的方法來評估一個給定的方法能夠/不能提供什么樣的解釋。研究發(fā)現(xiàn),僅僅依賴于視覺的評估可能會產生一些誤導性的結果。通過大量實驗,研究人員證明了一些現(xiàn)有的顯著性方法獨立于模型和數(shù)據(jù)生成過程。因此,在本文測試中表現(xiàn)較差的方法不能夠勝任那些對數(shù)據(jù)或模型敏感的任務。
機器之心SyncedIan Goodfellow小程序
隨著機器學習的復雜度和影響力不斷提升,許多人希望找到一些解釋的方法,用于闡釋學得模型的重要屬性 [1, 2]。對模型的解釋可能有助于模型滿足法規(guī)要求 [3],幫助從業(yè)人員對模型進行調試 [4],也許還能揭示模型學到的偏好或其他預期之外的影響 [5, 6]。顯著性方法(Saliency method)是一種越來越流行的工具,旨在突出輸入(通常是圖像)中的相關特征。盡管最近有一些令人振奮的重大研究進展 [7-20],但是解釋機器學習模型的重要努力面臨著方法論上的挑戰(zhàn):難以評估模型解釋的范圍和質量。當要在眾多相互競爭的方法中做出選擇時,往往缺乏原則性的指導方針,這會讓從業(yè)者感到困惑。
本論文提出了一種基于隨機化檢驗(randomization test)的可行方法來評估解釋方法的性能。作者在神經網絡圖像分類任務上分析了一些顯著性方法。實際上,本論文提出的方法論適用于任何解釋方法。而且本文提出的隨機化檢驗是很容易實現(xiàn)的,可以幫助人們評估某個解釋方法對手頭任務的適用性。
研究者在大量實驗研究中,將該方法論應用到了大量現(xiàn)有的顯著性方法、模型架構和數(shù)據(jù)集上。令人吃驚的是,一些被廣泛采用的顯著性方法是獨立于訓練數(shù)據(jù)和模型參數(shù)的。因此,這些方法對依賴模型的任務(如調試模型)或依賴數(shù)據(jù)顯示出的輸入和輸出之間關系的任務沒有太大幫助。
為了說明這一點,圖 1 將標準顯著性方法的輸出和一個邊緣檢測器的輸出進行了對比。邊緣檢測器不依賴于模型或訓練數(shù)據(jù),但它會產生與顯著圖(saliency map)在視覺上相似的結果。這表明,基于視覺效果的檢查方法在判斷某種解釋方法是否對底層的模型和數(shù)據(jù)敏感時指導意義較差。
圖 1:一些常用方法與邊緣檢測器的顯著圖對比。上圖顯示了在 ImageNet 上訓練的 Inception v3 模型 3 個不同輸入的顯著性掩碼(saliency mask)。可以看到邊緣檢測器產生的輸出與一些顯著性方法的輸出極為相似。實際上,邊緣檢測器也可以產生突出與模型類別預測相關特征的掩碼。有趣的是,研究者發(fā)現(xiàn)與邊緣檢測器最類似的顯著性方法(即 Guided Backprop 及其變體)對本研究的隨機化檢驗最不敏感。
本論文提出的方法源于統(tǒng)計隨機化檢驗,它將自然實驗和人為的隨機試驗進行了對比。研究者重點關注通用框架的兩種實例化:模型參數(shù)隨機化檢驗及數(shù)據(jù)隨機化檢驗。
模型參數(shù)隨機化檢驗將顯著性方法在訓練好的模型上的輸出與顯著性方法在一個隨機初始化的、結構相同的未訓練網絡上的輸出進行對比。如果顯著性方法依賴于模型學習到的參數(shù),我們應該期望它的輸出在這兩種情況下會有很大的差異。但是,如果輸出類似,我們可以推斷出顯著性映射對模型的屬性(本例中為模型參數(shù))是不敏感的。特別地,顯著性映射的輸出對于諸如模型調試這樣不可避免地依賴于模型的任務是沒有幫助的。
數(shù)據(jù)隨機化檢驗將應用于在帶標簽的數(shù)據(jù)集上訓練的模型的顯著性方法與應用于架構相同但是在我們隨機排列所有標簽的數(shù)據(jù)集副本上訓練的模型的顯著性方法進行了對比。如果顯著性方法依賴于數(shù)據(jù)標簽,我們也應該期望它的輸出在這兩種情況下會有很大的差異。然而,顯著性方法對重新排列的標簽的不敏感表明,該方法不依賴于實例(例如圖像)和原始數(shù)據(jù)中存在的標簽之間的關系。
從更大的范疇上說,任何解釋方法都遵循一系列不變的特性,即不改變方法的輸出的數(shù)據(jù)和模型的變換。如果我們發(fā)現(xiàn)了一種不符合當前任務需求的不變特性,我們可以拒絕該方法。因此,我們的測試可以看作是實際部署方法之前要執(zhí)行的可用性測試。
本文的貢獻:
我們提出了 2 種易于實現(xiàn)的具體檢驗方法,用于評估解釋方法的范圍和質量:模型參數(shù)隨機化檢驗和數(shù)據(jù)隨機化檢驗。這兩種檢驗方法可以廣泛應用于各種解釋方法。
我們對不同的數(shù)據(jù)集和模型架構上應用的解釋方法進行了廣泛的實驗。并發(fā)現(xiàn)一些被檢驗的方法獨立于模型參數(shù)和訓練模型所使用的數(shù)據(jù)的標簽。
因此,我們的發(fā)現(xiàn)表明,那些在我們提出的測試中表現(xiàn)不好的顯著性方法沒有能力為那些需要對任何模型和數(shù)據(jù)都適用的解釋方法的任務提供支持。
我們通過一系列對于線性模型和一個簡單的 1 層卷積求和池化(sum pooling)架構的分析來說明我們的發(fā)現(xiàn),同時也與邊緣檢測器進行了對比。
論文:Sanity Checks for Saliency Maps
論文鏈接:https://arxiv.org/pdf/1810.03292v1.pdf
摘要:顯著性方法已經成為了一種流行的工具,被用于突出輸入中被認為與學到的模型的預測結果相關的特征。目前研究人員提出的顯著性方法通常是以圖像數(shù)據(jù)的視覺吸引作為指導的。本文提出了一種可行的方法來評估一個給定的方法能夠提供/不能提供什么樣的解釋。我們發(fā)現(xiàn),僅僅依賴于視覺的評估可能會產生一些誤導性的結果。通過大量的實驗,我們證明了一些現(xiàn)有的顯著性方法獨立于模型和數(shù)據(jù)生成過程。因此,在我們的測試中表現(xiàn)較差的方法不能夠勝任那些對數(shù)據(jù)或模型敏感的任務(例如找出數(shù)據(jù)中的異常值、解釋輸入和模型學到的輸出之間的關系以及對模型進行調試)。我們通過與圖像的邊緣檢測器(一種既不需要訓練數(shù)據(jù)也不需要模型的技術)進行類比對我們發(fā)現(xiàn)進行說明。線性模型和單層卷積神經網絡場景下的理論能夠支持我們實驗中的發(fā)現(xiàn)。
研究方法和相關工作
在本文提出的方法的形式化定義中,輸入為向量 x ∈ R^d。模型描述了一個函數(shù) S : R^d → R^C,其中 C 是分類問題中的類別數(shù)。解釋方法會提供一個解釋映射 E : R^d → R^d,它將輸入映射到形狀相同的物體上。
現(xiàn)在,我們將簡要描述一下我們所研究的一些解釋方法。文章的補充材料包含了對這些方法更加深入的概述。我們的目的不是詳盡地評估所有先前的解釋方法,而是要強調我們的方法如何應用于一些我們很感興趣的案例。
對輸入 x 的梯度解釋(gradient explanation)是 E_grad(x) = ?S/?x [21, 7]。梯度量化了在每個輸入維度上的變化量會在輸入的一個小的鄰域內如何改變預測結果 S(x)。
梯度輸入。另一種形式的解釋是輸入和梯度之間的內積,記做 x·?S/?x,它可以解決「梯度飽和」問題并減少視覺擴散 [12]。
積分梯度(IG)也通過對標準化后的輸入求和來處理梯度飽和問題。對于輸入 x 的 IG 可以表示為,其中 x^ˉ 是一個「基線輸入」,表示原始輸入 x 中缺失的特征。
導向反向傳播(GBP)[8] 建立在解釋方法「DeConvNet」[9] 的基礎上,并且和負梯度向設置為 0 、通過 ReLU 單元進行反向傳播的梯度解釋相一致。
由 Selvaraju 等人 [18] 提出的導向 GradCAM 解釋對應于 DNN 最后的卷積單元的特征映射組成的分類得分(logit)的梯度。對于像素級力度的 GradCAM,可以通過元素積與導向方向傳播結合在一起
SmoothGrad(SG,平滑梯度)[15] 試圖通過對輸入的帶噪聲的副本的解釋進行平均,以減少顯著性映射的噪聲、緩解視覺擴散現(xiàn)象 [13,12]。對于給定的解釋映射 E,SmoothGrad 被定義為 ,其中,噪聲向量的元素 為從正態(tài)分布中提取的獨立同分布的變量。
模型參數(shù)的隨機性檢驗
圖 2:在 Inception v3(ImageNet)上的級聯(lián)隨機性。此圖顯示了 Junco 鳥的原始解釋結果(第一列)以及每種解釋類型的標簽。從左到右的過程顯示了網絡權值(以及其他可訓練的變量)全部的隨機性,直到包含「塊」。我們展示了隨機性的 17 個塊。坐標(Gradient,mixed_7b)顯示的是從 Logits 開始直到 mixed_7b 的頂層已經被重新初始化的網絡的梯度解釋。最后一列對應于一個權值完全重新初始化的網絡。更多示例請參見附錄。
圖 3:級聯(lián)隨機性。對于 ImageNet 上的 Inception v3 模型、 Fashion MNIST 數(shù)據(jù)集上的卷積神經網絡、MNIST 數(shù)據(jù)集上的多層感知機的從頂層開始的權值連續(xù)重初始化過程。在所有的圖中,y 坐標是原始解釋和由直到該點所代表的層/塊的隨機性所推導出的隨機解釋之間的秩相關性,而 x 坐標則與 DNN 從輸出層開始的層/塊相對應。黑色的虛線代表網絡的連續(xù)隨機化由此開始,它處于模型的頂層。上面一排是帶絕對值的 Spearman 秩相關性,下面一排是不帶絕對值的 Spearman 秩相關性。說明:對于不帶絕對值的 ImageNet 上的 Inception v3 模型,積分梯度、梯度輸入和梯度重合。對于 MNIST 數(shù)據(jù)集上的多層感知機模型,積分梯度和梯度輸入重合。
數(shù)據(jù)的隨機性檢驗
圖 5:對真實模型和用隨機標簽訓練的模型的解釋的對比。左上角:將 用于卷積神經網絡的 MNIST 測試集中數(shù)字 0 的掩膜的絕對值可視化結果。右上角:用各種顏色顯示的用于卷積神經網絡的 MNIST 測試集中數(shù)字 0 的顯著性掩膜。
圖 21:對 Corn 進行獨立隨機性測試
圖 23:對在 MNIST 數(shù)據(jù)集上訓練的 CNN 分別進行獨立、連續(xù)的重初始化工作。
圖 27:應用在一維卷積求和模型上的顯著性方法。