如何解决单个数据点的 SHAP,而不是整个数据集的平均预测
我正在尝试使用 SHAP 解释基于 LightGBM 的回归模型。我正在使用 shap.TreeExplainer().shap_values(X) 方法来获取 SHAP 值,其中 X 是整个训练数据集。这些 SHAP 值让我可以将单个预测与整个数据集的平均预测进行比较。
在 Christopher Molnar 的在线书籍的第 5.9.4 节中,他提到: “您可以将预测与整个数据集的平均预测进行比较,而不是将其与子集甚至单个数据点进行比较。”
我有几个关于此的问题:
- 如果我不传递整个训练数据集,而是传递 20 个观测值的子集,那么返回的 SHAP 值将与这 20 个观测值的平均值相关,我的解释是否正确?这将相当于 Christopher Molnar 在他的书中提到的“子集”
- 假设问题 1 的答案是肯定的,如果不是生成相对于 20 个观测值的平均值的 SHAP 值,而是生成相对于一个特定观测值的 SHAP 值,该怎么办。 Christopher Molnar 似乎暗示这是可能的。如果可能,我该怎么做?
提前感谢您的指导!
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。