• 【李宏毅机器学习】Explainable AI


    note:

    • local explanation的任务是判断出这图片为啥是XX;global explanation的任务是model能够学习到XX是长啥样的(这里说的是XX识别)。
    • explanable AI典型的2种方法是敏感性分析(Sensitivity Analysis)和基于梯度的方法(Gradient-based Methods)。
      • 敏感性分析:出发点就是看你的模型对于哪个数据实例非常敏感。例如一个分类器,如果我们删除掉一个数据点,模型的决策边界有了剧烈的变化,那么我们就说这个数据点事非常敏感的(对识别结果重要的feature)。LIME这篇文章就是基于这样的思想,对于特定的数据点进行各个特征的扰动,从而给出分类器局部的解释,即局部来看,什么特征是最影响分类器的决策的。同样的还有Koh提出的Influential function,用来解释数据点对SVM的影响程度。
      • 基于梯度的方法:看输入的哪一部分更影响决策。对于一个图片识别模型来说,这种方法就体现在一个saliency map上。也就是将图片的每个像素通过梯度变化的比较,来显示图片的哪些像素是分类器作为分类的依据。

    一、可解释机器学习

    像在一些医疗诊断、决策任务中,AI模型更需要可解释性,但是explanable AI不完全是理解ML如何工作.

    二、Local Explanation(局部可解释性)

    2.1 基本思想

    input的多个component中(比如图片中的一个pixel像素就是一个component;passage中的一个word单词就是一个component),哪个component在识别图片中起更关键的作用。在Local explanation中一般通过对component进行修改or移除等操作,对比影响的效果进行判断哪个component作用更大。

    2.2 移除组成要素(遮挡法)

    如下图,用灰色方块对每个部分进行遮挡,然后进行预测(效果即下方的图片,蓝色区域表明该区域对识别结果作用更大)。
    在这里插入图片描述

    2.3 改变组成要素(基于Gradient

    saliency map显著图:每个值对目标值求偏微分,导数越大的区域越明亮,用这种gradient方式(loss变化量/偏置量)判断哪些feature更重要。
    在这里插入图片描述
    Saliency Map(显著图):图中亮度越大,代表数值越大。也就是说表示了模型是真的获得了狗的信息才判断这是一条狗,而不是根据环境或者其他对象来判断的。

    2.4 Limitation of Gradient based Approaches(基于梯度方式的限制)

    2.3中,大象鼻子不断长,长到一定程度肯定会停止生长,如果继续用2.3这种导数求法就是梯度为0(梯度饱和),但是不代表该feature不重要。

    2.5 Attack Interpretation

    三、Global Explanation(全局可解释性)

    从dl model中拿出某一层的输出,通过降维至二维平面,比如下图,输出一个语音信号,从第8层中提取出输出再降维到二维平面,可看到句子相同但读者不同的向量会聚类在一起。
    在这里插入图片描述

    在这里插入图片描述

    3.1 反向寻找理想输入

    CNN的一个filter卷积核对input picture处理得到feature map。可以反向寻找最佳input,如下左下方的图片就过拟合了。
    在这里插入图片描述

    3.2 添加正则化

    在这里插入图片描述

    3.3 利用image generator 进行正则化

    • 首先训练一个image generator(通过GAN,VAE等生成模型),其输入一个低维度的向量z(不同的z代表不同的种类),输出一张图片 x ,记为X=G(z)。
    • 将x进行图片分类可以得到y。在之前方法中,想要得到机器眼中y的样子,就是计算X*=argmax Yi,现在增加了图像生成器,就可以转变为计算Z*=argmax Yi 。
    • 将上面的图片生成器和分类器串在一起,就变成一个很深的神经网络。输入就是z,输出就是y。(分类器是之前已经训练好的)
    • 将找到的z*再带入到image generator,得到的图片就是我们想求的。(这就解释了机器认为cat长什么样)

    在这里插入图片描述

    四、用模型解释模型

    4.1 Using linear model

    用一个解释性强的model“模仿”难解释的model(在训练时输入相同的样本,让模仿模型的输出接近黑色模型,即解释性差的model的输出)。但是线性模型过于简单,新提出了LIME。

    在这里插入图片描述

    4.2 Local Interpretable Model-Agnostic Explanations (LIME)

    使用Linear Model拟合Neural Network

    • 定位:确定需要解释的data point(下图5个蓝点中最中间的蓝点)
    • 取样:在上一步确定的data point周围sample获得更多的data point(下图5个蓝点)
      • sample的范围需要根据情况调整,一般范围小则拟合得更准确
      • sample的方法不同,结果也会不同
    • 拟合:使用Linear Model模拟上一步确定的data point及其对应的Neural Network输出
    • 解释:对Linear Model进行解释,进而解释Neural Network的局部

    在这里插入图片描述

    Reference

    [1] 李宏毅21版视频地址:https://www.bilibili.com/video/BV1JA411c7VT
    [2] 李宏毅ML官方地址:http://speech.ee.ntu.edu.tw/~tlkagk/courses.html
    [3] 可信图学习综述:A Survey of Trustworthy Graph Learning:
    Reliability, Explainability, and Privacy Protection.2022
    [4] 简单梳理一下机器学习可解释性(Interpretability)
    [5] 6个可解释AI (XAI)的Python框架推荐
    [6] 复杂模型可解释性方法——LIME

  • 相关阅读:
    Word docx转html和markdown
    [docker] docker 安全知识 - 镜像,port & registry
    检测域名是否支持http2.0协议脚本
    docker swarm 布署minio集群
    Java面试——锁
    Collection集合 迭代器 增强for List集合 LinkedList集合详解
    SpringBatch(9):ItemReader详解
    图像下载的新趋势:Kotlin技术探索与实践
    CAP项目集成带身份和证书验证的MongoDB
    【精华】AI Agent:大模型改变世界的“钥匙”
  • 原文地址:https://blog.csdn.net/qq_35812205/article/details/127341360