中文

GPUTreeShap:树集成 SHAP 分数的大规模并行精确计算

机器学习 2022-02-04 v3 分布式、并行与集群计算

摘要

SHAP(SHapley Additive exPlanation)值基于 Shapley 值提供了对机器学习模型预测的游戏论解释。虽然一般而言 SHAP 值的精确计算在计算上难以处理,但对于决策树模型存在一种称为 TreeShap 的递归多项式时间算法。然而,尽管具有多项式时间复杂度,当应用于大型决策树集成时,TreeShap 可能成为实际机器学习流程中的显著瓶颈。遗憾的是,复杂的 TreeShap 算法难以映射到 GPU 等硬件加速器上。在这项工作中,我们提出 GPUTreeShap,一种重新表述的、适用于图形处理单元上大规模并行计算的 TreeShap 算法。我们的方法首先对每棵决策树进行预处理,从原始递归算法中分离出可变大小的子问题,然后求解一个装箱问题,最后将子问题映射到单指令多线程(SIMT)任务以利用专用硬件指令进行并行执行。使用单块 NVIDIA Tesla V100-32 GPU,相比在两块 20 核 Xeon E5-2698 v4 2.2 GHz CPU 上执行的最先进多核 CPU 实现,我们对 SHAP 值实现了高达 19 倍的加速,对 SHAP 交互值实现了高达 340 倍的加速。我们还使用八块 V100 GPU 进行了多 GPU 计算实验,展示了每秒 120 万行的吞吐量——估计等效的基于 CPU 的性能将需要 6850 个 CPU 核心。

关键词

引用

@article{arxiv.2010.13972,
  title  = {GPUTreeShap: Massively Parallel Exact Calculation of SHAP Scores for Tree Ensembles},
  author = {Rory Mitchell and Eibe Frank and Geoffrey Holmes},
  journal= {arXiv preprint arXiv:2010.13972},
  year   = {2022}
}