<XAI系列-I> Explainable Boosting Machine(EBM)

Lucia
7 min readJun 20, 2022

--

XAI — Explainable AI 是近幾年來,在機器學習領域中最熱門的話題之一。

有關XAI的基礎介紹,可以參閱下方連結,Sherry在文中將XAI的概念講述的很清楚透徹:XAI| 模型可解釋性的重要

在這幾週Meeting的讀書會中,與Lab同學一起讀一本書 “Interpretable Machine Learning with Python” ,談及可解釋模型的概念及使用。

由 Microsoft 所開發的 InterpretML的框架中,Explainable Boosting Machine (EBM)為Glass Box Model,為介於傳統統計模型White Box Model 與較複雜的Black Box Model之間的演算法,由資料科學家開發的一種同時兼具準確率及可解釋性的方法。

本篇文章將就下方三個要點來對於EBM的三個角度進行介紹:

  1. 演算法理論
  2. 可解釋性
  3. 預測表現評估

一、演算法理論

EBM 是一種廣義相加模型Generalized Additive Model,因此在提及EBM演算法前,需介紹一下廣義相加模型Generalized Additive Model (GAMs)

<廣義相加模型>

廣義相加模型(GAM)為廣義線性模型(GLM)的一種,使用平滑函式對個別特徵進行處理後,將其與截距項相加後,透過連接函式(Link Function)的轉換為對應的預測結果。

下方式子中,g 為其Link function,fi為平滑函式。

GAMs method

傳統廣義相加模型因為其可化為數學公式計算,因此被認為是White-Box Model的一種。

然而,EBM 則為 Glass-Box Model,其原因為EBM的演算法中將Gradient Boosting 的方法及集成學習的Bagging概念納入演算法中,使得模型預測的成效更好。在同時保有可解釋性和預測能力的情況下,EBM被認為是一種Glass-Box Model。

<Explainable Boosting Machine>

EBM分別對於每個特徵來建構小的決策樹,並且先使用前一個特徵的決策樹進行更新後再來訓練下一個特徵的的決策樹。

EBM 的作者Rich Caurana提及,由於在此方法中的Learning Rate很小,因此訓練過程中特徵的順序性對於訓練過程的影響不大。

透過多次的迭代更新後,將各特徵每次迭代的決策樹進行Bagging的集成,得到該特徵訓練後的決策樹模型。

Algorithm Sketch | By Rich Caurana

再者,使用Boosting對每個特徵的決策樹訓練的過程中,演算法會自動找出個特徵中之間的交互作用。

因此,從原本GAMs的數學公式,我們可以將EBM推廣成以下式子:

Formula of EBM method

二、可解釋性

  1. Global Interpretation

從以上演算法和公式介紹中,可以看出EBM是由一個較為複雜的非線性公式組合而成。

因此,EBM並不具有全域整體解釋力(Global Holistic Interpretation),也就是我們無法對於模型如何做出預測提供簡單直觀的解釋。

對於全域模組化的解釋力(Global Modular Interpretation),由於EBM的對於各特徵的處理是分別套入函式並進行疊加計算,我們無法解釋各個特徵在EBM中扮演什麼角色,所以EBM不具有全域模組化的解釋力。

不過在Microsoft InterpretML的API中,可以透過`explain_global()`的function將全局的模型無關的變數重要性透過不同Loss計算方式算出來。

EBM’s global interpretation dashboard | From Interpretable Machine Learning with Python Fig 3–19

2. Local Interpretation

由於EBM可以透過數學公式計算而得,因此EBM在局部可解釋性上具有優勢。透過將單一觀測資料放入`explain_local()`中,我們則可得到其局部資料的變數重要性。

EBM’s local interpretation dashboard | From Interpretable Machine Learning with Python Fig 3–20

三、預測表現評估

承接模型局部解釋力的部分,透過ROC AUC(在分類問題上)及`explain_perf()`,可以將EBM的預測結果在各資料點上的特徵表現會畫出來。

從下圖可看到,預測結果為0.32但實際標籤為1的資料點,在DEP_DELAY上有最高的值,在截距項與LATE_AIRCRAFT_DELAY上對於公式有較大的負面影響。

透過此方法,我們可以更多了解哪些變數可能需要進行處理後再放入模型或是需要如何解釋那些變數。

One of EBM’s performance dashboards | From Interpretable Machine Learning with Python Fig 3–21

小結:

  1. Explainable Boosting Machine兼具解釋力及預測能力,在演算法上納入集成學習的方法。

2. InterpretML所開發的框架,能全域及局部性的解釋模型無關的特徵重要性及衡量各個變數對預測結果所佔的重要性。

Question:

Q:為何 EBM訓練各特徵決策樹的過程中Learning Rate很小,會使得訓練過程中特徵的順序性對於訓練過程的影響不大?

A: “If the learning rate is very small, then so little is learned each time you add a tree for a feature, that most of the variance is still unexplained and as you move to subsequent features they also get an opportunity to learn something that is useful for reducing variance. The lower the learning rate the less important the order in which you visit the features is. If the learning rate is very low, it’s almost as if you’re doing parallel updates for all the feature simultaneously.” — Rich Caurana

小妹不才,在此對Meeting要分享的內容先做初步的整理,有任何內容上的問題或錯誤,希望各路大神經過不吝賜教!謝謝!

--

--

Lucia

在LLM時代餬口飯吃,技能越點越歪的工程師