一、模型可解釋性
近年來,機器學習(深度學習)取得了一系列驕人戰績,但是其模型的深度和復雜度遠遠超出了人類理解的范疇,或者稱之為黑盒(機器是否同樣不能理解?),當一個機器學習模型泛化性能很好時,我們可以通過交叉驗證驗證其准確性,並將其應用在生產環境中,但是很難去解釋這個模型為什么會做出此種預測,是基於什么樣的考慮?作為機器學習從業者很容易想清楚為什么有些模型存在性別歧視、種族歧視和民族仇恨言論(訓練樣本的問題),但是很多場景下我們需要向模型使用方作出解釋,讓其清楚模型為什么要做出此種預測,如模型替代醫生判斷病情,給出病人合理的解釋至關重要,在商業場景中,模型為公司做出決策,需要給出令管理層信服的解釋。另外,給出解釋也可以幫助我們進一步改善模型,優化特征,提高泛化性。
本文就LIME( Local Interpretable Model-Agnostic Explanations, LIME)方法如何解釋黑盒模型作出簡要的介紹和公式推導,介紹其優缺點,文末附上自己的一些簡單思考
二、 LIME
LIME的主要思想是利用可解釋性模型(如線性模型,決策樹)局部近似目標黑盒模型的預測,此方法不深入模型內部,通過對輸入進行輕微的擾動,探測黑盒模型的輸出發生何種變化,根據這種變化在興趣點(原始輸入)訓練一個可解釋性模型。值得注意的是,可解釋性模型是黑盒模型的局部近似,而不是全局近似,這也是其名字的由來。
LIME的數學表示如下:
對於實例\(x\)的解釋模型\(g\),我們通過最小化損失函數來比較模型\(g\)和原模型\(f\)的近似性,其中,\(\Omega (g)\)代表了解釋模型\(g\)的模型復雜度,\(G\)表示所有可能的解釋模型(例如我們想用線性模型解釋,則\(G\)表示所有的線性模型),\(\pi_{x}\) 定義了\(x\)的鄰域。我們通過最小化\(L\)使得模型\(f\)變得可解釋。其中,模型\(g\),鄰域范圍大小,模型復雜度均需要定義。
下面對於結構化數據類型,簡要說明LIME的工作流程。
對於結構化數據,首先確定可解釋性模型,興趣點x,鄰域的范圍。LIME首先在全局進行采樣,然后對於所有采樣點,選出興趣點x的鄰域,然后利用興趣點的鄰域范圍擬合可解釋性模型。如下圖\(^1\)
其中,背景灰色為負例,背景藍色為正例,黃色為興趣點,小粒度黑色點為采樣點,大粒度黑點為鄰域范圍,右下圖為LIME的結果。
LIME的優點我們很容易就可以看到,原理簡單,適用范圍廣,可解釋任何黑箱模型。但是在實際應用中,存在幾個問題:
- 需要確定鄰域范圍;鄰域范圍不同,得到的局部可解釋性模型可能會有很大的差別,如下圖
對於x=1.6,不同的鄰域范圍(0.1,0.75,2)對應的可解釋性模型是完全不同的,甚至相悖。
-
采樣是全樣本集采樣,采樣是利用高斯分布進行采樣,忽略了特征之間的關系,這可能導致一些不大可能出現的樣本點來解釋模型。
-
解釋模型的復雜度需要提前定義。
-
解釋的不穩定性。利用相同參數相同方法進行的重復解釋,得到的結果可能完全不同.\(^5\)
三、總結
模型可解釋性作為目前機器學習領域研究的熱門,LIME的成果是很有啟發性的,通過對黑盒模型某局部點的無限次探測,擬合出一個局部可解釋性的簡單模型。但是其缺點同樣明顯,這些缺點也導致了LIME方法難以大規模應用。
后續將介紹基於Shapley值的SHAP方法(現在在研讀,就是有點看不懂。看懂了再寫)
參考鏈接:
- https://christophm.github.io/interpretable-ml-book/lime.html
- https://blog.csdn.net/a358463121/article/details/52313585
- https://cloud.tencent.com/developer/article/1096716
- 論文地址:https://arxiv.org/pdf/1602.04938v1.pdf
- Alvarez-Melis, David, and Tommi S. Jaakkola. “On the robustness of interpretability methods.” arXiv preprint arXiv:1806.08049 (2018).)
本文由飛劍客原創,如需轉載,請聯系私信聯系知乎:@AndyChanCD