《可解釋AI》 什麼是SHAP

JimmyWu
6 min readMar 23, 2019

--

本篇文章是源自於閱讀《A Unified Approach to Interpreting Model Predictions》時的重點整理,以較為個人的語言描述論文內的內容,若有理解錯誤還請不吝指正。第一段是蒐集一些需要可解釋性的場景,再接下來的幾個小節則是選論文中的某幾個章節做節錄。這個方法簡單來說就是使用簡單的可解釋模型 g ,局部的解釋任意的複雜模型 f。

為何要讓模型有可解釋性

對於簡單模型來說,最好的解釋就是模型本身。例如在線性模型中可以透過參數 w 的正負、大小來說明某個變數 X 對於Y;然而當模型開始變得複雜的時候(像是Neaural Network , Xgboost 等方法),我們會變得難以解釋Input跟Output之間的對應關係。

#題外話:其實有很多領域的研究是採取實證分析。而實證分析是什麼呢?通常我們可能會注意到生活中一些有趣的現象,譬如某甲發現好像在除除權息的期間買股票特別容易賺錢;譬如某乙覺得標題中包含絕命的電影總是會特別賣座;又譬如在當兵的時候,同梯的人發現雞腿為什麼總是出現在左邊的配膳台。這些現象是否真的存在?還是只是你的感覺而已?實證分析就是用來探討這個現象是否存在以及為什麼存在的方法。在觀察到問題後我們通常會形成一套理論,並根據這個理論尋找 X , Y並透過模型的手段建立X,Y之間的關聯性,並嘗試間接的證明自己的論點。回到我們原本的問題上,其實我們不仿也把這個世界想成是一個Function ,而我們的複雜模型負責模仿世界運作的方式,而這篇論文中(或者其他篇可解釋AI的論文)提出的方法,就像是對於複雜模型的一種實證分析,讓我們可以了解到複雜模型做決策的方式。

Additive Feature Attribution Methods

本篇論文提出的SHAP Value是一種 Additive Feature Attribution Method 。什麼是 Additive Feature Attribution Method呢?從字面上來解釋的話就是這類的方法是假設各個特徵的重要性是有可加性的,我們從(1)就可以看到這個特性

只要先前在開頭提到的g符合上述形式的都包括在探討的範圍中。式子中每個phi_i代表第i個Featrue的影響程度 、Zi為0或者1代表某一個特徵是否出現在模型之中。

現有的Additive Feature Attribution method 包含以下幾種:
- LIME :透過Penalize Regression的方式決定改選擇g的參數
- DeepLIFT
- Layer-Wise Relevance Propagation:
- Classic Shapley Value Estimation:透過賽局理論的方式決定g的參數,大意上是透過將每個特徵子集合中拿掉某個特徵之後的影響做平均,並將這個平均的影響當作\phi_i。值得一提的是,這個方法在演算上十分耗時因此通常會通過sampling或approximation(把變數的影響積掉)的方式來取得估計答案

Simple Properties Uniquely Determine Additive Feature Attributions

這個章節說明了,在限定幾個特定的性質之下,前面講到的(1)是有唯一解的,什麼意思呢?我們慢慢來看
首先先介紹三個性質,Local Accuracy、Missingness、Consistency

Local Accuracy
這個式子代表所有feature的影響加總要跟f在x的取一樣

Missingness:
這個式子代表若沒有使用到第i個feature,則該feature的影響程度對於總體的影響就是0(是否符合真實情況其實有待商榷)。

Consistency:
這個式子代表,如果拿到f’模型拿到第i個feature的差值較f大的話,則第i個feature對f’的影響程度較f大。

本文透過(8)證明符合以上三個性質的g有唯一解,且其解的形式即為Shapley Value。

Model-Agnostic Approximations

Kernal SHAP

在LIME的方式中,我們要決定L,\pi,Regularization,但是透過Theorem 1我們可以知道符合前一章三個性質的g,只有唯一一個(詳見Theorem 1)。

因此Penalize的方式、選取權重的方式都會影響到g讓Local Accuracy , Consistence的性質消失。因此如果按照Theorem 2的方式選取可以讓問題的答案回到Theorem 1的答案

透過這樣的設定之下,我們可以觀察到Loss被設定成Weighted Least Square Loss,因此在這個問題之下我們還可以進一步將問題轉化成Weighted Linear Regression的形式以避免Shaply Value的繁重計算。

透過SHAP VALUE的方式,我們可以將模型預測的結果轉換成是平均值及各個特徵影響程度的總和,因此也讓複雜的模型得以局部的被解釋。這篇論文不僅提供了想法,也透過理論提供了計算上優化的方法,讓此構想得以實行,是一篇很厲害的論文。

--

--