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