← Notes
机器学习2026年6月12日1 分钟阅读

SHAP 值解释机器学习模型原理与实践

SHAP可解释AILightGBM

什么是 SHAP

SHAP(SHapley Additive exPlanations)是一种基于博弈论的模型解释方法,用于量化每个特征对预测结果的贡献度。

核心概念

  • SHAP 值:某特征将预测值从基线(平均预测值)推高或拉低的幅度
  • 基线值:所有样本预测值的平均
  • 正值:该特征使预测值升高(增加巨大儿风险)
  • 负值:该特征使预测值降低

Python 实现

import shap
import lightgbm as lgb

# 训练模型
model = lgb.LGBMClassifier(**best_params)
model.fit(X_train, y_train)

# 计算 SHAP 值
explainer = shap.TreeExplainer(model)
shap_values = explainer.shap_values(X_test)

# 绘制 summary plot
shap.summary_plot(shap_values[1], X_test, feature_names=feature_names)

在巨大儿预测中的应用

SHAP 分析显示,对巨大儿预测贡献最大的特征依次为:

  1. 胎儿腹围(AC)
  2. 孕前 BMI
  3. 孕 28 周血糖
  4. 孕期体重增长
  5. 股骨长(FL)

参考资料

  • SHAP 官方文档
  • Lundberg, S. M., & Lee, S. I. (2017). A unified approach to interpreting model predictions.