07 進階

SHAP:解釋每一個預測

feature_importances_ 只說得出『整體哪些特徵重要』,說不出方向、也無法解釋單筆預測。SHAP 補上這塊,是模型解釋的黃金標準。

SHAP:解釋每一個預測 範例輸出

這堂課的完整程式碼在 Jupyter notebook 裡。點下面按鈕在 Colab 開啟,就能直接執行、修改、實驗——你的修改不會動到原檔。

內建的 feature_importances_ 只告訴你「整體哪些特徵重要」,但說不出方向,也無法解釋單一一筆預測為什麼是這個結果。SHAP 補上這塊——它是目前模型解釋的黃金標準。

這堂課你會學到

  • 內建特徵重要性的侷限
  • shap.TreeExplainer 算出 SHAP values
  • beeswarm 摘要圖(全域)與單筆解釋(局部)

比長條圖多了「方向」

預覽圖就是 SHAP 的 beeswarm 摘要圖:每個點是「一筆樣本的一個特徵」,橫軸是它把預測往哪推、推多少,顏色是特徵值的高低。

比起長條圖,它多了關鍵的方向資訊——例如「某特徵值越大(紅)越把預測推向某一類」這種洞察,內建 importance 完全給不了。

SHAP 還能把單一一筆預測拆解成「從基準值出發,每個特徵各推了多少」。這在要對個案交代理由時(為什麼這位病人被判為高風險)極有價值——模型不再是黑盒。

👉 在 Colab 裡挑一筆模型預測錯的樣本,用單筆 SHAP 看它被哪些特徵帶偏。

#shap #interpretability #xgboost #explainability

🔗 相關課程

留言 0

留言載入中…