社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  机器学习算法

可解释机器学习最新综述:应用于实时场景中的机遇与挑战

大数据文摘 • 1 年前 • 350 次点击  

大数据文摘转载自将门创投

作者:Guanchu Wang

论文链接:

https://arxiv.org/abs/2302.03225
代码链接:
https://github.com/ynchuang/awesome-efficient-xai

什么是可解释机器学习?


深度模型(神经网络)的推理过程是黑盒化的、不可解释的。机器学习发展至今仍然无法完全打开这个黑盒子。可解释机器学习的研究内容就是为深度模型的推理结果提供人类可以理解的解释(原因)。这在有道德约束下的应用场景中是极其重要的。例如,某银行利用深度学习算法来预测用户的信用度以决定是否贷款给用户。对于信用度预测值较低的用户,银行有责任提供合理的解释来说明认定该用户信用度低的原因。

模型解释可分为两种:模型层面的解释和样本层面的解释,如图1所示。模型层面的解释是展示出模型判断的逻辑,如图1(a)所示;样本层面的解释是展示出每个样本的不同特征对于模型预测的贡献度,如图1(b)所示。由于复杂模型对于不同样本的推理过程是多样性的,所以宏观的模型层面解释很难适用于所有样本。目前主流的研究工作更关注样本层面的解释。

因此,本文所讨论的解释算法都是样本层面的解释,不涉及模型层面的解释。

图1 (a)模型层面的解释和(b)样本层面的解释。

实时系统需要怎样的模型解释算法?

虽然解释算法能够客观地反映深度模型的推理依据,但是为每个样本生成解释的过程有相当高的计算复杂度。以目前主流的解释算法为例:Shapley解释如式(1)所示,其中 U 是全部特征组成的集合。计算规模随着特征数量的增多而指数级增长;积分梯度是一种有效的图像解释算法,如式(2)所示。它需要沿着积分路径多次采样模型的梯度值来近似估计积分值。

然而,在实时场景中,如在线推荐系统,医疗系统的实时监测以及自动驾驶的实时目标检测等,我们需要算法可以快速高效地生成解释。这就需要对现有解释算法进行加速,以满足实时系统的需求。本文汇总了目前主流的(算法层面)加速模型解释算法(不涉及系统层面),分析了已有工作的局限性,并提出了未来研究的技术难点。

图 2 模型解释加速算法的分类。

非批量解释的加速方法


非批量解释的加速是指直接加速解释量的估计,即直接加速式(1)以及式(2)或者其他解释量的估计。该类方法可以分为以下几种技术路线:优化特征选取、优化采样过程、基于近似算法加速等。下面详细描述每一种技术路线的代表工作。

优化特征选取: 这类方法通过去掉在Shapley解释的估计过程中影响较小的特征来减少计算复杂度。比较有代表性的工作是 SHEAR [1]。SHEAR 选取每个特征与待估计特征的相互作用强度来选取少量的伴随特征,这样。其他有代表性的工作是 L-Shapley 和 C-Shapley [2]。该工作在图结构的解释中提出两种概念:Local Shapley 和 Connected Shapley,分别指的是每个节点在其所在子图中的贡献以及边缘贡献。L-Shapley 和 C-Shapley 可以通过对邻居节点的枚举快速估计。进一步,该工作指出 L-Shapley 和 C-Shapley 在某些条件下是 Shapley 解释的无偏估计。因此可通过估计 L-Shapley 和 C-Shapley 来近似加速 Shapley 解释。

优化采样过程: 这类方法通过优化采样分布来加速Shapley解释估计的收敛速度。比较有代表性的工作是 APS [3] 和 OSC [4]。APS 的全称是 Antithetical Permutation Sampling。该工作提出一种对称采样策略(Antithetical Sampling)来减小 Permutation Sampling 对于Shapley解释的估计方差,从而加速估计值收敛与Shapley解释;同理,OSC 是 Orthogonal Spherical Codes 的缩写。该方法提出了在希尔伯特空间选取相互正交的特征排序。这种特征排序可以应用到估计Shapley解释中来提高估计值收敛于真值的速度。

基于近似算法加速: 这类方法通过将不可解释的深度模型近似为可解释的模型进而实现快速得到解释。具有代表性的工作是 Tree-SHAP [5] 和 Fast-IG [6]。Tree-SHAP 是针对树模型的解释算法,其时间复杂度是 O(TLD2),其中T、L和D分别是树的数量、平均叶子数和平均深度。实际应用中,可以用树模型来逼近神经网络这类黑盒模型的输出,进而用树模型的解释来代表神经网络的解释;Fast-IG 是一种加速积分梯度的算法。该工作发现具有非负齐次性的模型的积分梯度解释可以通过模型的一次前馈传播估计得到。但是神经网络模型不具有非负齐次的性质,因此该工作提出了将神经网络模型进行适当的近似从而满足非负齐次性,进而实现加速模型解释。基于近似算法的加速由于对原模型进行了一定近似,所以会影响模型的性能(准确率、召回率、F1得分等)。

批量解释的方法


批量解释方法是针对实时场景的解释方法。从本文前几段的内容可知,非批量解释方法对每一个样本的解释都是分别进行的,即对每个样本都分别执行一次解释过程,如图3(a)所示。这无疑是浪费时间的。为了实现高速估计模型解释,一些工作开创性地提出了批量解释方法,如图3(b)所示。

总的来说,批量解释方法假设模型解释的结果服从某种分布,这种分布可以通过一个全局解释器来学习。学习过程在训练集上进行,训练好的解释器可以在实际场景中批量生成解释。批量解释方法是模型解释加速的质的飞跃。

批量模型解释的技术路线有:基于预测模型、基于生成模型和基于强化学习等。下面详细叙述每一条技术路线的代表工作。

图3 (a)非批量解释方法和(b)批量解释方法。

基于预测模型: 这类方法通过监督或者半监督的方式来学习全局解释器。代表作有 L2X [7]、FastSHAP [8] 以及 CORTX [9]。L2X 训练全局解释器对数据特征进行遮掩,训练目标是遮掩的特征不影响原模型的推理过程。这样未被遮掩的特征就是重要特征。L2X 只能将特征大致分为重要的和不重要的。FastSHAP 训练全局解释器生成Shapley解释,训练目标是Shapley解释的必要条件:任何一个特征子集的Shapley解释之和表征了原模型基于该特征子集的预测值。FastSHAP 可以快速生成较为精确的解释,但是需要利用原模型进行监督训练。CORTX 开创性地提出通过对比学习的方式来预训练解释器,而后通过少量的解释标注来 Fine-tune 解释器,从而实现轻量级的解释器训练以及实际场景中的高精度解释。

基于生成模型: 这类方法通过训练生成模型来快速提供因果解释。代表作有 MCS [10] 和 DiVE [11]。MCS 通过训练一个条件对抗生成网络来生成反事实样本。反事实样本可以推翻原模型的预测结果,这样从原样本到反事实样本变化量就是模型预测值的因果解释。DiVE 通过一个变分自编码器来学习特征空间的非耦合隐空间(特征在原空间中是相互耦合的),进而在隐空间中生成反事实样本,在通过变分自编码器把反事实样本映射至原空间进而估计解释值。

基于强化学习: 这类方法通过强化学习来优化反事实样本的生成过程。代表作有 RELAX [12] 和 FASTAR [13]。这类将原样本变换为反事实样本的过程抽象为马尔科夫过程决策过程,即原样本在每个时刻都发生一点变化,经过多个时刻的演化最终变为反事实样本。RELAX 和 FASTAR 用强化学习的方式学习一个演化策略。原样本经过演化策略生成的一系列变化量成为反事实样本,累计变化量就是原模型的因果解释值。

现有工作的局限性及未来研究的难点


解释性能和速度的此消彼长: 目前大部分的模型解释方法都存在解释性能和速度的此消彼长,例如 KernelSHAP [14]、LIME [15]、IG [16] 等。

对原模型采样更多的预测值可以提高解释的精度,但是会降低解释生成的速度。此外,批量解释方法需要在训练集上学习全局解释器。训练过程的时间及空间消耗和训练精度之间也存在类似的平衡关系。已有工作为可解释机器学习提供了基准,未来解释算法需要能达到性能和速度二者更优的平衡。

解释方法的部署: 在已有工作中,解释及加速方法的设计、实现及验证都是基于 CPU 和 GPU结构的硬件。但是在实际应用场景中有很多其他种类及结构的硬件。已有算法无法从系统层面上达到最优的性能(内存消耗及运行速度)。部署模型解释方法以适应不用种类及结构的硬件系统将会推动可解释机器学习走向实际应用。

全局解释器的隐私保障: 在目前批量解释算法中,由于全局解释器学到了训练数据的分布,因此这会有信息泄露的风险。所谓信息泄露指的是第三方可以从训练好的全局解释器中恢复出训练数据的分布。因此防止解释器泄露训练数据的分布也是推动可解释机器学习走向实际应用需要克服的困难之一。

加速方法的选择: 本文所介绍的以及更多的模型解释算法都存在此消彼长的关系,即不存在某一种算法在所有的应用场景中都是最优的。然而决策者需要在实际应用中从众多的解释方法中选取最符合需求的一种或者几种解释方法。这无疑是困难的。一个解决方案是用算法来实现解释方法的选取,这使得决策者在不用了解所有解释方法的情况下仍然可以得到一种符合需求的解释方法。

结束语


本文首先阐明了可解释机器学习部署到实际场景中的速度需求,进而系统地介绍了目前主流的加速模型解释算法;最后分析了已有工作的局限性,并提出了未来研究的技术难点。

如果读者想要了解更多内容,欢迎阅读综述原文:

http://128.84.21.203/abs/2302.03225

综述论文所涉及的所有技术论文已被汇总于:
https://github.com/ynchuang/awesome-efficient-xai

参考文献

[1] Chuang Y N, Wang G, Yang F, et al. “Efficient XAI Techniques: A Taxonomic Survey.” arXiv preprint arXiv:2302.03225, 2023.

[2] J. Chen, L. Song, M. J. Wainwright, and M. I. Jordan, “L-shapley and c-shapley: Efficient model interpretation for structured data,” arXiv preprint arXiv:1808.02610, 2018.

[3] Rubinstein R Y, Kroese D P. “Simulation and the Monte Carlo method.” John Wiley & Sons, 2016.

[4] R. Mitchell, J. Cooper, E. Frank, and G. Holmes, “Sampling permutations for shapley value estimation,” 2022.

[5] S. M. Lundberg, G. Erion, H. Chen, A. DeGrave, J. M. Prutkin, B. Nair, R. Katz, J. Himmelfarb, N. Bansal, and S.-I. Lee, “From local explanations to global understanding with explainable ai for trees,” Nature machine intelligence, vol. 2, no. 1, pp. 56–67, 2020.

[6] Hesse R, Schaub-Meyer S, Roth S. “Fast axiomatic attribution for neural networks.” Advances in Neural Information Processing Systems, 2021.

[7] Chen J, Song L, Wainwright M, et al. “Learning to explain: An information-theoretic perspective on model interpretation”, International Conference on Machine Learning. PMLR, 2018.

[8] N. Jethani, M. Sudarshan, I. C. Covert, S.-I. Lee, and R. Ranganath, “Fastshap: Real-time shapley value estimation,” in International Conference on Learning Representations, 2021

[9] Yu-Neng Chuang, Guanchu Wang, Fan Yang, Quan Zhou, Pushkar Tripathi, Xuanting Cai, Xia Hu, “CoRTX: Contrastive Framework for Real-time Explanation,” in International Conference on Learning Representations, 2022.

[10] Yang F, Alva S S, Chen J, et al. “Model-based counterfactual synthesizer for interpretation,” Proceedings of the 27th ACM SIGKDD conference on knowledge discovery & data mining. 2021.

[11] Rodriguez, Pau, et al. “Beyond trivial counterfactual explanations with diverse valuable explanations.” Proceedings of the IEEE/CVF International Conference on Computer Vision. 2021.

[12] Chen, Ziheng, et al. “ReLAX: Reinforcement Learning Agent Explainer for Arbitrary Predictive Models.” Proceedings of the 31st ACM International Conference on Information & Knowledge Management. 2022.

[13] Verma, Sahil, Keegan Hines, and John P. Dickerson. “Amortized generation of sequential algorithmic recourses for black-box models.” Proceedings of the AAAI Conference on Artificial Intelligence. Vol. 36. No. 8. 2022.

[14] Lundberg, Scott M., and Su-In Lee. “A unified approach to interpreting model predictions.” Advances in neural information processing systems, 2017.

[15] Ribeiro, Marco Tulio, Sameer Singh, and Carlos Guestrin. “Why should i trust you? Explaining the predictions of any classifier.” Proceedings of the 22nd ACM SIGKDD international conference on knowledge discovery and data mining. 2016.

[16] Sundararajan, Mukund, Ankur Taly, and Qiqi Yan. “Axiomatic attribution for deep networks.” International conference on machine learning. PMLR, 2017.



点「在看」的人都变好看了哦!
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/152488
 
350 次点击