準確性與可解釋性是不能同時達到的嗎?來自IEEE研究員Cuntai Guan這樣認為:“許多機器決策仍然沒有得到很好的理解”。大多數論文甚至提出在準確性和可解釋性之間進行嚴格區分。
神經網絡是準確的,但無法解釋;在計算機視覺中,決策樹是可解釋的,但不準確。可解釋性AI(XAI)試圖彌合這一分歧,但正如下面所解釋的那樣,“XAI在不直接解釋模型的情況下證明了決策的合理性”。
這意味著金融和醫學等應用領域的從業者被迫陷入兩難境地:選擇一個無法解釋的、準確的模型,還是一個不準確的、可解釋的模型。
什么是“可解釋的”?
定義計算機視覺的可解釋性是一項挑戰:解釋像圖像這樣的高維輸入的分類意味著什么?正如下面討論的,兩種流行的定義都涉及到顯著圖和決策樹,但是這兩種定義都有缺點。
可解釋性AI不能解釋什么
顯著圖:
許多XAI方法產生的熱圖被稱為顯著圖,突出顯示影響預測的重要輸入像素。然而,顯著圖映射只關注輸入,而忽略了解釋模型如何決策。
拍攝原始圖像
使用一種稱為Grad-CAM的方法的顯著圖
和另一種使用引導反向傳播方法的圖像
顯著圖不能解釋什么
為了說明為什么顯著圖不能完全解釋模型如何預測,這里有一個例子:下列顯著圖是相同的,但是預測結果不同。
為什么?盡管兩個顯著圖都突出顯示了正確的對象,但有一個預測結果是不正確的。回答這個問題可以幫助改進模型,但是如下所示,顯著圖不能解釋模型的決策過程。
模型預測結果為有耳朵的鳥
模型預測結果為有角的鳥
這些是使用Caltech-UCSDBirds-200-2011(或簡稱CUB 2011)在ResNet18模型上運用Grad-CAM方法得到的結果。雖然顯著圖看起來非常相似,但是模型的預測結果不同。因此,顯著圖并不能解釋模型是如何達到最終預測的。
決策樹
另一種方法是用可解釋的模型代替神經網絡。深度學習之前,決策樹是準確性和可解釋性的黃金標準。下面演示決策樹的可解釋性,它通過將每個預測分解為一系列決策來工作。
與僅僅預測“大漢堡”或“華夫餅”不同,上面的決策樹將輸出一系列導致最終預測的決策。然后可以分別對這些中間決策進行驗證或質疑。因此,經典的機器學習將這種模型稱為“可解釋的”。
但是,就準確性而言,決策樹在圖像分類數據集2上落后于神經網絡達40%。神經網絡和決策樹混合算法也表現不佳,甚至在數據集CIFAR10上無法匹配神經網絡,該數據集有如下所示的32x32微小圖像。
該示例展現了32x32有多小。這是來自CIFAR10數據集的一個樣本。
這種精度差距損害了可解釋性:需要高精度、可解釋的模型來解釋高精度的神經網絡。
進入神經支持的決策樹
通過建立既可解釋又準確的模型來改良這種錯誤的二分法。關鍵是將神經網絡與決策樹相結合,在使用神經網絡進行低級決策時保留高級的可解釋性。
如下所示,將這些模型稱為神經支持的決策樹(NBDTs),并證明它們能夠在保持決策樹可解釋性的同時,與神經網絡的準確性相匹配。
在此圖中,每個節點都包含一個神經網絡。該圖僅突出顯示了一個這樣的節點和內部的神經網絡。在神經支持的決策樹中,通過決策樹進行預測,以保留高級解釋性。
但是,決策樹中的每個節點都是做出低級決策的神經網絡。上面的神經網絡做出的“低級”決定是“有香腸”或“沒有香腸”。
NBDT與決策樹一樣可解釋。
與當今的神經網絡不同,NBDT可以輸出中間決策來進行預測。例如,給定圖像,神經網絡可以輸出Dog。但是,NBDT可以同時輸出Dog和Animal,Chordate,Carnivore(下圖)。
在此圖中,每個節點都包含一個神經網絡。該圖僅突出顯示了一個這樣的節點和內部的神經網絡。在神經支持的決策樹中,通過決策樹進行預測,以保留高級解釋性。
但是,決策樹中的每個節點都是做出低級決策的神經網絡。上面的神經網絡做出的“低級”決定是“有香腸”或“沒有香腸”。上面的照片是根據Pexels許可從pexels.com獲取的。
NBDT實現了神經網絡的準確性。
與其他任何基于決策樹的方法不同,NBDT在3個圖像分類數據集上都匹配神經網絡精度(差異小于1%)。NBDT還能在ImageNet上實現神經網絡2%范圍內波動的準確性,ImageNet是擁有120萬張224x224圖像的最大圖像分類數據集之一。
此外,NBDT為可解釋的模型設置了新的最新精度。NBDT的ImageNet準確度達到75.30%,比基于決策樹的最佳競爭方法高出整整14%。為了準確地說明這種準確性的提高:對于不可解釋的神經網絡,類似的14%的增益花費了3年的研究時間。
神經支持的決策樹可以解釋什么,如何解釋
個人預測的理由
最有見地的理由是根據該模型從未見過的對象。例如,考慮一個NBDT(如下),并在斑馬上進行推斷。盡管此模型從未見過斑馬,但下面顯示的中間決策是正確的——斑馬既是動物又是蹄類動物。單個預測的正確性的能力對于沒見過的物體至關重要。
NBDT甚至可以為沒見過的物體做出準確的中間決策。在此,該模型在CIFAR10上進行了訓練,并且之前從未見過斑馬。盡管如此,NBDT仍正確地將斑馬識別為動物和蹄類動物。上面的照片是根據Pexels許可從pexels.com獲取的。
模型行為的理由
此外,發現可以使用NBDT后,可解釋性的準確性得到了提高。這與簡介中的二分法背道而馳:NBDT不僅具有準確性和可解釋性,還使準確性和可解釋性成為同一目標。
ResNet10層次結構
WideResNet層次結構
在前者中,“貓”,“青蛙”和“飛機”位于同一子樹下。相比之下,WideResNet層次結構在每一側干凈地分割了Animals和Vehicles。上面的圖片來自CIFAR10數據集。
例如,較低精度的ResNet?層次結構將青蛙,貓和飛機分組在一起的意義較小。這是“不太明智的”,因為很難找到所有三類共有的明顯視覺特征。
相比之下,準確性更高的WideResNet層次結構更有意義,將Animal與Vehicle完全分開——因此,準確性越高,NBDT的解釋就越容易。
圖源:unsplash
了解決策規則
使用低維表格數據時,決策樹中的決策規則很容易解釋,例如,如果盤子中有面包,那么選擇右側節點,如下所示。但是,決策規則對于像高維圖像這樣的輸入而言并不那么直接。
此示例演示了如何使用低維表格數據輕松解釋決策規則。右側是幾個項目的表格數據示例。左側是根據此數據訓練的決策樹。
此時,決策規則(藍色)是“是否有面包?”所有帶有面包(橙色)的項目都發給最上面的節點,而所有沒有面包(綠色)的項目都發給最下面的節點。該模型的決策規則不僅基于對象類型,而且還基于上下文、形狀和顏色。
為了定量地解釋決策規則,使用了稱為WordNet7的現有層次;通過這種層次結構,可以找到類之間最具體的共享含義。例如,給定類別Cat和Dog,WordNet將提供哺乳動物。如下圖所示,定量地驗證了這些WordNet假設。
左子樹(紅色箭頭)的WordNet假設是Vehicle。右邊(藍色箭頭)的WordNet假設是Animal。為了定性地驗證這些含義,針對沒見過的物體類別對NBDT進行了測試:
查找訓練期間未見過的圖像。
根據假設,確定每個圖像屬于哪個節點。例如,大象是動物,所以*可以找到正確的子樹。
現在,可以通過檢查將多少圖像傳遞給正確的節點來評估假設。例如,檢查將多少張大象圖像發送到“Animal”子樹。
這些分類的正確性顯示在右側,沒見過的動物(藍色)和沒見過的Vehicle(紅色)都顯示較高的準確性。
請注意,在具有10個類別(即CIFAR10)的小型數據集中,可以找到所有節點的WordNet假設。但是,在具有1000個類別的大型數據集(即ImageNet)中,只能找到節點子集的WordNet假設。
一分鐘內嘗試NBDT
現在有興趣嘗試NBDT嗎?無需安裝任何軟件,就可以在線查看更多示例輸出,甚至可以嘗試Web示例。或者,使用命令行實用程序來運行推理(使用pip installnbdt安裝)。下面對貓的圖片進行推斷。
?
nbdthttps://images.pexels.com/photos/126407/pexels-photo-126407.jpeg?auto=compress&cs=tinysrgb&dpr=2&w=32?#?this?can?also?be?a?path?to?local?image?
這將輸出類別預測和所有中間決策。
?
Prediction:?cat?//?Decisions:?animal?(99.47%),?chordate(99.20%),?carnivore?(99.42%),?cat?(99.86%)?
也可以只用幾行Python代碼加載預訓練的NBDT。使用以下內容開始,支持幾種神經網絡和數據集。
?
from?nbdt.model?import?HardNBDTfrom?nbdt.models?importwrn28_10_cifar10model?=?wrn28_10_cifar10()model?=?HardNBDT(?pretrained=True,?dataset='CIFAR10',?arch='wrn28_10_cifar10',?modelmodel=model)?
作為參考,請參見上面運行的命令行工具的腳本。僅約20行就能進行轉換輸入和運行推理。
運作原理
神經支持決策樹的訓練和推理過程可以分為四個步驟。
訓練NBDT分為兩個階段:首先,構建決策樹的層次結構。其次,訓練帶有特殊損失項的神經網絡。要進行推理,請將樣本輸入神經網絡主干。最后,將最后一個完全連接的層作為決策規則序列運行。
構建決策樹的層次結構。此層次結構確定了NBDT必須在哪些類之間進行決策。將此層次結構稱為歸納層次結構。
此層次結構產生一個特定的損失函數,稱為樹監督損失5。使用此新損失函數訓練原始神經網絡,無需任何修改。
通過使樣本輸入神經網絡主干來開始推理。主干是最終完全連接層之前的所有神經網絡層。
通過將最終的全連接層作為決策規則序列,稱為嵌入式決策規則來完成推理。這些決策形成最終的預測。
可解釋性AI不能完全解釋神經網絡如何實現預測:現有方法可以解釋圖像對模型預測的影響,但不能解釋決策過程。決策樹解決了這個問題,但其準確性還存在個挑戰。
因此,將神經網絡和決策樹結合在一起。與采用相同混合設計的前代產品不同,神經支持決策樹(NBDT)同時解決了以下問題:
神經網絡無法提供理由;
決策樹無法達到較高的準確性。
這為醫學和金融等應用提供了一種新的準確、可解釋的NBDT。
評論
查看更多