朋友们,Just KNIME it 还有在跟进吗? 本季已经到 13 期啦。
本期探讨的主题是机器学习的可解释性问题,快随指北君一起看看吧。
挑战
挑战13:揭示犯罪率之迷
难度:中等
情境描述:作为一名在房地产公司任职的数据科学家,你听闻了一个流言,即“每个住宅的平均房间数”(RM) 可能与“人均犯罪率”(CRIM) 存在关联,而这种关联可能因城市/镇的不同而有所差异。因此,你决定研究一下你所生活和工作的城市——波士顿,是否存在这样的现象。为了调查这个问题,你打算利用机器学习的回归模型以及你最近研究的主题:XAI。在波士顿,RM 和 CRIM 之间的联系是如何呈现的呢?提示:你可以尝试使用 SHAP 循环来计算每个独立特征的 SHAP 值。第二个提示:你可以考虑使用依赖图来验证 RM 和 CRIM 如何在视觉上呈现出它们的关系。
这个挑战是一个有趣的话题。为了解答这个问题,我们有两种可能的方法。第一种是分析数据集中与人均犯罪率(CRIM)有关的变量。另一种则是直接探究流言与犯罪率之间的关系。在这个特定的问题中,我们选择了第二种方法:直接探究流言。
工作流
数据集
本数据集为波士顿房地产数据,记录了波士顿郊区及城镇的相关信息。数据源自1970年的波士顿标准大都市统计区(SMSA),其中包含如下属性信息(摘自UCI Machine Learning Repository):
-
CRIM:各城镇的人均犯罪率 -
ZN:超过25,000平方英尺住宅用地的比例 -
INDUS:每个城镇非零售商业面积的比例 -
CHAS:查尔斯河虚拟变量(若区域边界为河流则为1,否则为0) -
NOX:一氧化氮浓度(千万分之一) -
RM:每间住宅的平均房间数 -
AGE:1940年之前建造的自住单位比例 -
DIS:至五个波士顿就业中心的加权距离 -
RAD:对放射状高速公路的可达性指数 -
TAX:每10,000美元全值财产的税率 -
PTRATIO:各城镇的师生比例 -
B:1000(Bk-0.63)^2,其中Bk是按城镇划分的黑人比例 -
LSTAT:较低社会地位人口的百分比 -
MEDV:自住房屋的中值价值(单位为1000美元)
数据集速览
由于该数据集已广为人知,很多人已经进行了相关研究。因此,我们不再重复相同的步骤。反之,我们将审查Kaggle现有笔记本中的预处理和探索性数据分析(EDA)部分。我们将主要关注EDA,因为我们的目标与笔记本作者不同。我们发现数据没有丢失,这是个好消息。此外,数据分布看起来很好(来源:https://www.kaggle.com/code/marcinrutecki/regression-models-evaluation-metrics#4.2-Boston-House-Prices)。
机器学习的可解释性
机器学习的可解释性是非常重要的,因为它可以帮助我们理解机器学习模型如何进行预测或决策。这一点极其重要,原因如下:
-
信任:如果我们不理解模型如何进行预测,我们可能无法全然信任它。如果我们不信任它,我们可能也不会去使用它。 -
偏见:机器学习模型可能存在偏见,如果我们不了解它们如何做出决策,我们可能无法检测或解决这种偏见。 -
问责制:在某些情况下,我们可能需要向其他人解释决策是如何做出的。如果我们无法做到这一点,我们可能无法让模型或创建模型的人承担责任。 -
改进:理解模型如何进行预测可以帮助我们改进模型,使其更加准确或高效。
简而言之,机器学习的可解释性至关重要,因为它可以帮助我们建立对机器学习模型的信任,检测和解决偏见,实现问责制,并改善模型本身。
SHAP值
SHAP值是机器学习中一种用于解释每个特征对模型最终预测贡献的方法。SHAP值,即“SHapley Additive exPlanations”,基于合作博弈论中的Shapley值概念。本质上,SHAP值通过比较具有和不具有特定特征的模型输出来计算每个特征对预测的影响。这样可以更细致地了解模型如何进行预测,并有助于确定哪些特征对于结果最为重要。SHAP值是解释复杂机器学习模型的流行工具,可用于特征选择、模型比较和识别模型偏差等任务。
我们的工作流
我们使用“Partitioning”节点将数据划分为开发集和测试集。为了简化流程,我们选择使用“随机森林 Random Forest”算法,而非更先进的机器学习算法。在运行“SHAP Loop Start”节点之前,我们首先使用“SHAP Summarizer”节点。由于数据量相对较小,我们选择将数据分为二十组。数据划分完成后,我们开始计算SHAP值。幸运的是,本次挑战的作者为我们提供了一个名为“Dependence Plot”的节点,它可以让我们轻松分析特征的SHAP值以及RM和CRIM之间的关系。
分析
工作流程相当直观。让我们专注于可视化部分。
左上角的图展示了RM(横轴)与CRIM(纵轴)的关系,其中颜色的深浅代表了RM的SHAP值。颜色越亮,对结果的影响越明显。可以看出,较小的RM值对犯罪率的影响更为显著,然而这些RM值对应的犯罪率并不高。
右上角的图显示了MEDV(横轴)与CRIM(纵轴)的关系,MEDV指的是“自住房屋的中值价值(1000美元)”。与前一个图相似,颜色深浅代表了MEDV的SHAP值。可以看出,较小的MEDV值对应的犯罪率较高,因此,仅依赖RM并不能准确预测犯罪率。
左下角的图,横轴为RM,纵轴为RM的SHAP值,颜色则代表犯罪率。图中显示,较小的RM值对应较小的犯罪率有显著影响。虽然与左上角的图类似,但观察角度不同。
右下角的图则无需过多解释,只需注意其纵轴与左下图的纵轴比例不同。
综合来看,尽管RM与犯罪率存在关联,但与MEDV值相比,其相关性较弱。
其他想法
-
原始数据的分析可能是确定犯罪率影响因素的更有效途径。 -
为了保证模型的公正,可能需要排除与特定种族,如黑人,相关的特征。 -
Partial Dependence/ICE 分析应被考虑纳入。
对应本篇文章,指北君制作的工作流在这里: https://hub.knime.com/havef/spaces/Public/latest/Just_KNIME_It/S2/C13~b-GtqjIULcBZUGjH
本文由 mdnice 多平台发布