07 進階
SHAP:解釋每一個預測
feature_importances_ 只說得出『整體哪些特徵重要』,說不出方向、也無法解釋單筆預測。SHAP 補上這塊,是模型解釋的黃金標準。
這堂課的完整程式碼在 Jupyter notebook 裡。點下面按鈕在 Colab 開啟,就能直接執行、修改、實驗——你的修改不會動到原檔。
內建的 feature_importances_ 只告訴你「整體哪些特徵重要」,但說不出方向,也無法解釋單一一筆預測為什麼是這個結果。SHAP 補上這塊——它是目前模型解釋的黃金標準。
這堂課你會學到
- 內建特徵重要性的侷限
- 用
shap.TreeExplainer算出 SHAP values - 讀 beeswarm 摘要圖(全域)與單筆解釋(局部)
比長條圖多了「方向」
預覽圖就是 SHAP 的 beeswarm 摘要圖:每個點是「一筆樣本的一個特徵」,橫軸是它把預測往哪推、推多少,顏色是特徵值的高低。
比起長條圖,它多了關鍵的方向資訊——例如「某特徵值越大(紅)越把預測推向某一類」這種洞察,內建 importance 完全給不了。
SHAP 還能把單一一筆預測拆解成「從基準值出發,每個特徵各推了多少」。這在要對個案交代理由時(為什麼這位病人被判為高風險)極有價值——模型不再是黑盒。
👉 在 Colab 裡挑一筆模型預測錯的樣本,用單筆 SHAP 看它被哪些特徵帶偏。
#shap
#interpretability
#xgboost
#explainability
留言 0
留言載入中…