在使用SHAP值解释基于树的模型时,我遇到了一个问题。
(https://github.com/slundberg/shapsd)
首先,我输入了大约30个特征,我有两个特征,它们之间有很高的正相关。
在此之后,我对XGBoost模型(Python)进行了训练,并查看了SHAP值与SHAP值之间的负相关关系。
请大家向我解释一下,为什么两个特性之间的输出SHAP值不具有与输入相关性相同的相关性?我能相信SHAP的输出吗?
投入的相关性: 0.91788
SHAP值之间的相关性:-0.661088
两个特征是
1)省和
2)省内家庭数。
模型性能
列车AUC: 0.73
测试AUC: 0.71
散点图
发布于 2019-11-26 15:09:35
发布于 2020-02-24 16:37:23
请注意,尽管Shapley值被设计为考虑相关性,SHAP只是它的近似。阅读https://papers.nips.cc/paper/7062-a-unified-approach-to-interpreting-model-predictions.pdf,特别是4.1的第一句话,您可以注意到SHAP假定特性独立。如果近似值以很高的相关性崩溃,我就不会感到惊讶了。
https://datascience.stackexchange.com/questions/63762
复制相似问题