---
title: "SHAP 值（SHAP Values）"
slug: shap-values
language: zh-TW
source: https://aiterms.tw/terms/shap-values
updated_at: 2026-06-22
tags: [AI倫理與治理, 模型評估, 機器學習]
ipas_term: false
---

# SHAP 值（SHAP Values）

基於Shapley值的機器學習模型解釋方法，公平分配每個特徵對預測結果的貢獻。

## 完整說明

SHAP(SHapley Additive exPlanations)值是應用遊戲論中的Shapley值概念到機器學習特徵貢獻度分配。每個特徵的SHAP值表示該特徵對模型預測的邊際貢獻，滿足幾個理想的公理：本地準確度、遺漏特徵、一致性。

## 常見問題

### 為什麼SHAP值比簡單的特徵重要性更好？

特徵重要性(如Gini、置換重要性)是全局聚合指標，無法解釋單個預測。例如若兩個相關特徵中一個被選為重要，另一個會被視為不重要，但實際上兩者對預測貢獻相當。SHAP值針對每個樣本計算，能細粒度地分解預測。例如同一個模型，對樣本A特徵X的SHAP值可能是+0.2，對樣本B可能是-0.1，反映了特徵在不同上下文的不同作用。此外，SHAP滿足Shapley公理，理論上更加堅實，避免了特徵重要性的某些任意性。

### 計算SHAP值的計算成本如何降低？

完整計算SHAP值複雜度為O(2^N)，對於特徵數多的模型不可行。降低成本的方法：(1)選擇適當的演算法：TreeSHAP對樹模型高效(O(LD))，不要對樹模型用KernelSHAP；(2)特徵採樣：不計算所有2^N個子集，而是採樣其中一部分；(3)近似算法：KernelSHAP通過加權迴歸近似，精度損失但速度快；(4)特徵分組：如果某些特徵高度相關，可以分組後計算，減少特徵數；(5)並行計算：SHAP計算天然可並行，可利用GPU加速。

### SHAP值能用於特徵選擇嗎？

可以，但要謹慎。若特徵的平均|SHAP值|接近0，表示該特徵平均而言對預測貢獻小，可以考慮刪除。但這不是充分條件，因為(1)特徵可能只在特定情況下重要，平均掩蓋了這種重要性；(2)特徵可能與其他特徵共線，刪除一個後其他特徵會補償，導致模型精度不變；(3)特徵可能無法刪除(如受法規約束的變數)。更穩健的方法是結合多個角度：SHAP貢獻、特徵重要性、與輸出的相關性、領域知識，綜合決定是否刪除特徵。

---

來源：https://aiterms.tw/terms/shap-values
快查頁：https://aiterms.tw/terms/shap-values
最後更新：2026/06/22
深度解說：https://aiterms.tw/learning/what-is-shap-values