LIME:算法讲解
目錄
一、簡介
?1. 主要用途
2. 樣例分析
二、基礎理論
1. 對解釋器算法的要求
2. 算法原理
3. 算法實現
4. 算法流程
三、 優缺點分析
優點
缺點
一、簡介
????????LIME算法是Marco Tulio Ribeiro2016年發表的論文《“Why Should I Trust You?” Explaining the Predictions of Any Classi?er》中介紹的局部可解釋性模型算法。該算法可以用在文本類與圖像類的模型中,以分析模型提取到的特征是否符合直觀理解。
?1. 主要用途
? ? ? ? 在實際建模過程中,我們不僅需要使客戶能夠信服,同時也需要使自己信服。如果僅僅以數字,描述一個系統的性能,則顯得略有偏頗,比如神經網絡普遍可以達到高性能的效果,但可解釋性低,因此如果能夠從模型本身的底層邏輯出發,以它的視角觀察事物,分析事物,解釋事物,便可以明確模型的性能為什么好,為什么不好。這種時候,就可以利用本文要介紹的LIME算法,全稱Local Interpretable Model-agnostic Explanations,可以理解為模型的解釋器。
2. 樣例分析
??
? ? ? ? ?一瓶葡萄酒的品質將對售賣價格產生直接影響,通過分析其化學成分,即可明確某一瓶葡萄酒的品質。通過LIME,從葡萄酒的可解釋特征中分析得出,當alchol>11.4時將對其品質產生正向影響,真正做到搞清楚模型為什么認為好還是不好。
? ? ? ?根據一封郵件的文本內容,判斷發信者是與“基督教“有關還是與”無神論教“有關,分類器本身達到了90%的準確率。但是利用LIME解釋器,發現”無神論教“的重要特征,是”Posting“(郵件標頭的一部分),這個詞與無神論本身并沒有太多的聯系。這意味著盡管模型準確率很高,但所學習到的特征是錯誤的。
二、基礎理論
1. 對解釋器算法的要求
可解釋性
????????解釋器的模型與特征都必須是可解釋的,像決策樹、線性模型因其嚴格的數學推導都是很適合拿來解釋的模型;而可解釋的模型必須搭配可解釋的特征,才是真正的可解釋性,讓不了解機器學習的人也能通過解釋器理解模型。
局部保真度
? ? ? ? 在實際情況中,解釋器不需要在全局上達到復雜模型的效果,但至少在局部上效果要很接近,而此處的局部代表我們想觀察的那個樣本的周圍。
泛化性強
????????這里所指的是與復雜模型無關,換句話說無論多復雜的模型,像是SVM或神經網絡,該解釋器都可以工作,都能進行可解釋性分析。
2. 算法原理
????????對于一個分類器(復雜模型),想用一個可解釋的模型(簡單模型如線性規劃),搭配可解釋的特征在全局上進行分析是極其困難的,相反,如果我們能在某一局部的決策邊緣上驗證其可解釋性,即可說明該分類器的優越性能。
????????具體來說,我們從加粗的紅色十字樣本(待解釋樣本)周圍采樣,所謂采樣就是對原始樣本的特征做一些擾動,將采樣出的樣本用分類模型分類并得到結果(紅十字和藍色點),同時根據采樣樣本與加粗紅十字的距離賦予權重(權重以標志的大小表示)。虛線表示通過這些采樣樣本學到的局部可解釋模型,在這個例子中就是一個簡單的線性分類器。在此基礎上,我們就可以依據這個局部的可解釋模型對這個分類結果進行解釋了。
3. 算法實現
(1)目標函數
????????解釋模型定義為模型g∈G,我們進一步使用作為實例z與x之間的接近度,以定義x周圍的局部性。定義一個目標函數ξ,這里的L函數作為一個度量,描述如何通過在局部定義中,g如何逼近f(復雜模型),在當Ω(g)(解釋模型復雜度)足夠低可以被人類理解時,我們最小化L函數得到目標函數的最優解。LIME產生的解釋如下:
?(2)引入自適應相似度后的目標函數
? ? ? ? 考慮到離待解釋樣本距離不同的擾動樣本附加權重理應不同,引入自適應相似度,即optim-LIME的目標函數如下:
?(3)最終函數
?
????????其中f(z)是擾動樣本在d維空間(原始特征)上的預測值,g(z’)則是在d’維空間(可解釋特征)上的預測值,然后以相似度作為權重,因此上述的目標函數便可以通過線性回歸的方式進行優化。
4. 算法流程
宏觀來看:
? ? ? ? 首先,在待解釋的模型中取一個待解釋樣本,之后隨機生成擾動樣本,并以與待解釋樣本的距離作為標準附加權重,再將得到的結果作為輸入投入待解釋模型中,同時選擇在局部考察的待訓練可解釋模型(如決策樹、邏輯回歸等等),最終即可訓練出在可解釋特征維度上的可解釋性模型。?
微觀來看:
? ? ? ? ?選取待解釋樣本X,并轉換為可解釋特征維度上的樣本X’。
? ? ? ? 通過隨機擾動,得到其余在可解釋特征維度上的樣本Z’。
? ? ? ? ?將Z’恢復至原始維度,計算f(z)與相似度。
? ? ? ? ?利用自適應相似度對各個樣本點進行加權。
?????????以X’作為特征,f(z)作為標準訓練局部可解釋模型(如圖虛線)。
三、 優缺點分析
優點
? ? ? ? 1. 具有很強的通用性,性能優越
????????LIME能夠兼容任何一種機器學習算法,具有廣泛的適用性。LIME除了能夠對圖像的分類結果進行解釋外,還可以應用到自然語言處理的相關任務中,如主題分類、詞性標注等。
? ? ? ? 2. 針對性強,可塑性好
? ? ? ? LIME可以選取代表性樣本進行訓練,降低了工作量和難度,也能夠依照客戶靈活的需求進行特殊場景的分析,如調節某一特征的權重,分析其變化對最終結果的影響程度。
缺點
? ? ? ? ?1. 局部性不可代表全局性
? ? ? ? LIME從局部出發訓練可解釋性模型,當全局決策范圍具有極其復雜的非線性時,局部線性區域范圍小,僅能對極少的樣本進行可解釋分析。
? ? ? ? 2. 時間成本高
? ? ? ? 對每一個待測樣本進行可解釋分析時,需重新訓練對應的可解釋模型,訓練時間長。
總結
- 上一篇: PLM与ERP的区别
- 下一篇: javascript适合移动端的响应式瀑