歡迎來到模型可解釋性(Model Explainability)的世界!

過去,許多進階預測模型都被視為「黑盒子」——你輸入數據,得到預測結果,但沒人真正知道模型是「如何」做出決定的。身為精算師,若只用「因為電腦這樣說」來回應,絕對是無法讓人接受的!在本章中,我們將學習如何窺探黑盒子內部。我們將探索各種工具,幫助我們解釋模型為何會預測出某個數值,這適用於整個模型,也適用於單一個案。

無論你是要向監管機構解釋費率調整的原因,還是要告訴客戶為什麼他們的保費發生了變化,這些概念都會是你最好的幫手。讓我們開始吧!

1. 全域與區域可解釋性 (Global vs. Local Interpretability)

在我們研究具體工具之前,需要先理解「解釋」模型的兩個層次。別擔心,這些術語聽起來雖然高深,但概念其實相當簡單!

全域可解釋性(「宏觀」視角)

全域可解釋性 (Global interpretability) 是指理解模型在整個數據集上的運作方式。它回答的問題包括:「總體而言,哪些變數對預測結果最重要?」「數據中所有人的年齡增加時,預測值會如何變化?」

區域可解釋性(「個案」視角)

區域可解釋性 (Local interpretability) 則聚焦於單一且特定的預測。它回答的問題是:「為什麼模型特別針對 John Doe 預測出高風險?」即使「年齡」在全球範圍內很重要,但對 John Doe 而言,可能是因為「近期事故紀錄」才導致他的分數偏高。

小比喻:想像製作蛋糕的食譜。全域可解釋性就像是知道糖讓蛋糕變甜,麵粉提供了結構。而區域可解釋性則是解釋為什麼某一個特定的蛋糕做出來是鹹的(也許是因為你那一批不小心把鹽當成了糖!)。

總結:全域 = 整個模型。區域 = 單一特定預測。


2. 特徵重要性 (Feature Importance)

特徵重要性 (Feature Importance)(或稱變數重要性)是解釋模型最常見的方法之一。它根據每個輸入變數(特徵)對模型預測能力的貢獻程度,為其提供一個評分。

在樹狀模型(如隨機森林 Random Forests 或 XGBoost)中,重要性通常是通過計算每個變數在所有樹中減少多少「雜質」(如 Gini impurity 或均方誤差 Mean Squared Error)來衡量的。

常見陷阱:僅僅因為變數具有高度重要性,並不意味著它是造成結果的原因。這只代表模型在進行預測時高度依賴它。此外,如果兩個變數高度相關,模型可能會分散兩者的重要性,導致兩者看起來都比實際上的重要性低!


3. 部分依賴圖 (Partial Dependence Plots, PDP)

部分依賴圖 (PDP) 展示了一到兩個特徵對預測結果的邊際效應。簡單來說:如果我們改變變數 X 的值,同時保持其他所有條件不變(平均而言),預測結果會如何變化?

運作方式(逐步說明):

1. 選擇你想要研究的變數(例如:車齡)。
2. 對於數據集中的每一行,保持所有其他變數不變,但將車齡改為「1 年」。
3. 記錄整個數據集的平均預測值。
4. 重複上述步驟,將車齡改為「2 年」、「3 年」,以此類推。
5. 將這些平均值繪製成圖表。

主要限制:PDP 假設你正在研究的特徵與其他特徵之間沒有高度相關性。如果兩者相關,PDP 創建出的「平均」情境在現實世界中可能根本無法發生。

總結:PDP 展示了特徵與預測之間的平均關係。


4. 個體條件期望圖 (Individual Conditional Expectation, ICE Plots)

如果 PDP 代表「平均」,那麼 ICE 圖就是「個別組成」。PDP 只顯示一條線(平均值),而 ICE 圖則為數據集中的每一個觀測值繪製一條獨立的線。

為什麼使用 ICE? 有時,「平均值」會掩蓋真相。例如,某種藥物對男性有效但對女性有害。PDP 可能會顯示一條水平線(平均影響為零),但 ICE 圖會顯示有些線向上、有些向下,從而揭示出交互作用 (interaction)。

記憶小撇步:ICE 看作「Individual(個體)」。它打破了平均值的冰層(Ice),讓你看到每個人身上實際發生的事情。


5. SHAP 值 (Shapley Additive Explanations)

SHAP 是目前預測分析中模型可解釋性的「黃金標準」。它基於賽局理論 (Game Theory)

想像一組玩家(特徵)正在進行一場遊戲以贏得獎品(預測結果)。SHAP 計算每個玩家對最終獎品的貢獻度。其數學基礎確保了總體預測結果能公平地分配給各個特徵。

SHAP 方程式(簡化版):

\( g(z') = \phi_0 + \sum_{i=1}^{M} \phi_i z'_i \)

其中:
- \( \phi_0 \) 是基值 (base value)(所有觀測值的平均預測)。
- \( \phi_i \) 是特徵 \( i \) 的 SHAP 值
- 所有 SHAP 值的總和加上基值,即等於實際預測值。

為什麼 SHAP 很棒:

1. 全域與區域兼顧:你可以使用 SHAP 來解釋個人(區域),也可以對其進行平均以了解整個模型(全域)。
2. 公平性:它考慮了特徵可能相互作用的事實。
3. 方向性:與單純的重要性不同,SHAP 會告訴你該特徵是將預測值往「上」推還是往「下」推。

快速回顧:如果一位保險申請人的分數是 80(平均值為 50),SHAP 可能會告訴你:「過往事故」+20 分,「年輕」+15 分,「安全車輛配置」-5 分。(50 + 20 + 15 - 5 = 80)。


6. LIME (Local Interpretable Model-agnostic Explanations)

LIME 是另一種用於區域可解釋性的工具。「Model-agnostic(模型無關)」意味著它可以應用於任何模型——無論是隨機森林、神經網路,甚至是你自己沒編寫過的模型!

LIME 的運作方式(「代理」方法):

1. 選擇一個你想要解釋的單一觀測值。
2. 在該觀測值周圍輕微「擾動」數據(創造許多相似但略有不同的數據點)。
3. 查看複雜的黑盒子模型如何對這些新點做出預測。
4. 在這些局部的「擾動」數據上建立一個非常簡單且可解釋的模型(例如簡單的線性回歸或小型決策樹)。
5. 使用那個簡單模型來解釋複雜模型。

比喻:想像一個巨大、蜿蜒的山脈(複雜模型)。如果你想解釋某個特定地點的坡度,你不需要整個山脈的地圖,你只需要一塊平坦的小夾板(簡單的 LIME 模型)來顯示你腳下地面的角度即可。


7. 關鍵區別與適用時機

別讓種類繁多的工具搞得眼花撩亂!以下是一份快速指南:

在以下情況使用特徵重要性 (Feature Importance)

當你需要一個快速、高層次的排名,以了解哪些變數對模型的準確性最重要時。

在以下情況使用 PDP/ICE

當你想觀察關係的形態時(例如:它是直線嗎?在某個年齡之後趨於平緩嗎?)。

在以下情況使用 SHAP

當你需要一個理論嚴謹、精確的解釋,來說明每個變數對特定個人預測值的具體貢獻時。

在以下情況使用 LIME

當你擁有一個極其複雜的模型(例如用於圖像或文本的深度學習),且 SHAP 計算時間過長,或者你需要一個簡單的「區域性」代理模型時。


考試總結檢查清單

- 全域 vs. 區域:記住全域是整體總體;區域是單一個案。
- PDP:展示平均效應。小心變數間的相關性!
- ICE:展示個體線條;對於發現平均值 (PDP) 所隱藏的交互作用非常有用。
- SHAP:使用賽局理論將預測值「分配」給各個特徵。其加總等於最終預測。
- LIME:在特定點周圍擬合一個簡單的區域模型以進行解釋。

如果起初覺得這些概念很複雜,別擔心!重點在於記住目標:我們正在將「電腦這樣說」轉變為「電腦這樣說,是因為特徵 A 將結果往上推,而特徵 B 將結果往下推」。你一定沒問題的!