modify wordings (#372)

* add references and update wordings

* Update explainable.bib

* Update explainable.bib

* Update explainable.bib

* Update explainable.bib

Co-authored-by: lixiaohui <lixiaohui33@huawei.com>
Co-authored-by: Cheng Lai <laicheng_VIP@163.com>
This commit is contained in:
huygens12
2022-06-10 10:52:18 +08:00
committed by GitHub
parent c9db181975
commit a5bdfe4b00
2 changed files with 149 additions and 54 deletions

View File

@@ -41,7 +41,6 @@
- 可解释AI是确保人类可以轻松理解和信任人工智能代理做出的决策的一组方法。
可见,关注点在于对模型的理解、黑盒模型白盒化以及模型的可信任。
我们根据自身的实践经验和理解将可解释AI定义为一套面向机器学习主要是深度神经网络的技术合集包括可视化、数据挖掘、逻辑推理、知识图谱等目的是通过此技术合集使深度神经网络呈现一定的可理解性以满足相关使用者对模型及应用服务产生的信息诉求如因果或背景信息从而为使用者对人工智能服务建立认知层面的信任。
@@ -61,18 +60,18 @@
全局方法旨在提供对模型逻辑的理解以及所有预测的完整推理,基于对其特征、学习到的组件和结构的整体视图等等。有几个方向可以探索全局可解释性。为了便于理解,我们将它们分为以下三个子类:
(i)
模型提取——从原始黑盒模型中提取出一个可解释的模型,比如通过模型蒸馏的方式将原有黑盒模型蒸馏到可解释的决策树,从而使用决策树中的规则解释该原始模型;
模型提取——从原始黑盒模型中提取出一个可解释的模型,比如通过模型蒸馏的方式将原有黑盒模型蒸馏到可解释的决策树 :cite:`frosst2017distilling` :cite:`zhang2019interpreting`,从而使用决策树中的规则解释该原始模型;
(ii)
基于特征的方法——估计特征的重要性或相关性,如图 :numref:`xai_global_feature_importance`所示,
该类型解释可提供如“信用逾期记录是模型依赖的最重要特征”的解释,从而协助判定模型是否存在偏见
(iii) 透明模型设计——修改或重新设计黑盒模型以提高其可解释性。
该类型解释可提供如“信用逾期记录是模型依赖的最重要特征”的解释,从而协助判定模型是否存在偏见. 一种典型的全局特征解释方法是SHAP其仅能针对树模型输出全局解释:cite:`lundberg2017unified`
(iii) 透明模型设计——修改或重新设计黑盒模型以提高其可解释性。这类方法目前也逐渐成为探索热点近期的相关工作包括ProtoPNet :cite:`chen2019looks`, Interpretable CNN :cite:`zhang2018interpretable`, ProtoTree :cite:`nauta2021neural`等。
![全局特征重要性解释](../img/ch11/xai_global_feature_importance.png)
:width:`800px`
:label:`xai_global_feature_importance`
全局解释可以提供黑盒模型的整体认知。但由于黑盒模型的高复杂性,在实践中往往很难通过模型提取/设计得到与原模型行为相近的简单透明模型,也往往很难对整个数据集抽象出统一的特征重要性。此外,在为单个观察生成解释时,全局解释也缺乏局部保真度,因为全局重要的特征可能无法准确解释单个样例的决定。因此,局部方法成为了近些年领域内重要的研究方向。局部方法尝试为单个实例或一组实例检验模型行为的合理性。当仅关注局部行为时,复杂模型也可以变得简单,因此即使是简单的函数也有可以为局部区域提供可信度高的解释。基于获得解释的过程,局部方法可以分为两类:局部近似和基于梯度传播的方法。
全局解释可以提供黑盒模型的整体认知。但由于黑盒模型的高复杂性,在实践中往往很难通过模型提取/设计得到与原模型行为相近的简单透明模型,也往往很难对整个数据集抽象出统一的特征重要性。此外,在为单个观察生成解释时,全局解释也缺乏局部保真度,因为全局重要的特征可能无法准确解释单个样例的决定。因此,局部方法成为了近些年领域内重要的研究方向。局部方法尝试为单个实例或一组实例检验模型行为的合理性。当仅关注局部行为时,复杂模型也可以变得简单,因此即使是简单的函数也有可以为局部区域提供可信度高的解释。基于获得解释的过程,局部方法可以分为两类:局部近似和基于传播的方法。
局部近似是通过在样本近邻区域模拟黑盒模型的行为生成可理解的子模型。相比于全局方法中的模型提取,局部近似仅需关注样本临近区域,因此更容易获得精确描述局部行为的子模型。如图 :numref:`xai_lime`所示,通过在关注数据点$x$附近生成$m$个数据点$(x_i^\prime, f(x_i^\prime)), for\ i=1,2, ...m$(这里$f$为黑盒模型决策函数),用线性拟合这些数据点,可以得到一个线性模型$g=\sum_i^k w_ix^i$,这里$k$表示数据的特征维度。那么线性模型中的权重$w_i$即可用于表示数据$x$中第$i$个特征对于模型$f$的重要性。
@@ -80,8 +79,9 @@
:width:`800px`
:label:`xai_lime`
基于梯度传播的方法通常是用梯度传播直接定位相关特征,这些方法封装了基于反向传播的方法和基于前向传播的方法。基于反向传播的方法将输出的贡献归因于输入特征。如图 :numref:`xai_gradient_based`所示,通过梯度回传,计算模型输出对输入的梯度$\frac{d(f(x)}{dx}$ 作为模型解释。
而基于前向传播的方法通过扰动特征后的输出差异来量化输出与特征的相关性。
基于传播的方法通常是传播某些信息直接定位相关特征,这些方法包含了基于反向传播的方法和基于前向传播的方法。基于反向传播的方法通过梯度回传将输出的贡献归因于输入特征。如图 :numref:`xai_gradient_based`所示,通过梯度回传,计算模型输出对输入的梯度$\frac{d(f(x)}{dx}$ 作为模型解释。常见的基于梯度传播的方法有基本Gradient方法GuidedBackprop :cite:`zeiler2014visualizing`, GradCAM :cite:`selvaraju2017grad`等.
而基于前向传播的方法通过扰动特征后, 进行前向推理的输出差异来量化输出与特征的相关性。其中常见的几种方法有RISE :cite:`petsiuk2018rise`ScoreCAM :cite:`wang2020score`等。
![局部近似方法示例](../img/ch11/xai_gradient_based.PNG)
:width:`800px`
@@ -110,7 +110,7 @@ TCAV就可以通过计算类$k$的具有正$S_{C,k,l}$s的样本的比率来
$$\textbf{TCAV}_{Q_{C,k,l}}=\frac{\vert \{\mathbf{x}\in X_{k}:S_{C,k,l}(\mathbf{x})>0\}\vert}{\vert X_{k}\vert}
\label{eq:TCAV}$$
结合$$t$$-分布假设方法,如果$$\textbf{TCAV}_{Q_{C,k,l}}$$大于0.5,则表明概念$$C$$对类$$k$$有重大影响。
结合$t$-分布假设方法,如果$\textbf{TCAV}_{Q_{C,k,l}}$大于0.5,则表明概念$C$对类$k$有重大影响。
![TCAV流程(图片来源于 :cite:`2020tkde_li`)](../img/ch11/xai_tcav.png)
:width:`800px`
@@ -179,13 +179,13 @@ saliency = grad_cam(boat_image, targets=3)
:width:`400px`
:label:`correct_correct`
上图预测标签是“bird”,解释结果给出依据的关键特征在鸟身上,说明这个分类判断依据是合理的, 可以初步判定模型为可信的。
上图预测标签是“bicycle”,解释结果给出依据的关键特征 在车轮上,说明这个分类判断依据是合理的, 可以初步判定模型为可信的。
![预测结果正确,依据的关键特征不合理的例子](../img/ch11/correct_wrong.png)
:width:`400px`
:label:`correct_wrong`
原图中,有人,在预测标签中有1个标签是“person”这个结果是对的但是解释的时候高亮区域在马头的上那么这个关键特征依据很可能是错误的, 这个模型的可靠性还需进一步验证。
上图在预测标签中有1个标签是“person”这个结果是对的但是解释的时候高亮区域在马头的上那么这个关键特征依据很可能是错误的, 这个模型的可靠性还需进一步验证。
![预测结果错误,依据的关键特征不合理的例子](../img/ch11/wrong_wrong.png)
:width:`400px`