机器学习 - 可解释性
概述
- 观点
- Goal of ML Explanation != you completely know how the ML model work.
- Goal of ML Explanation is make people(your customers, your boss, yourself) comfortable.
- 针对不同的人,可能需要不同的解释\nPersonalized explanation in the future.
- 平衡点
- 在模型的 可解释性 和 模型的泛化能力 之间取得平衡
Explanation
- Local Explanation
- 基本思想
- 给定一个Object, 获取哪些Components 最重要,\n哪些不重要
- 例如:给定一张图片,如何判断这是一张猫的图片
- 思路
- 移除或者修改某个 Component 的值,观察修改后的结果\n1. 如果结果变化大,则是重要的\n2. 如果结果变化小,就是不重要的
- 图像
- 图像识别:可以通过遮住图片某一个部分,观察结果
- 问题:遮挡板的大小、颜色
- 图像识别:可以通过遮住图片某一个部分,观察结果
- 基本思想
- Global Explanation
- 基本思想
- 例如:在机器看来,猫像什么?
- 思路
- 通过对输入每个 Component 添加一个噪音,看结果输出的影响程度
- 图片特征生成器
- 本质上就是,输入一个向量,生成一张图片\nby GAN,VAE,etc
- 基本思想
思路
- 有些模型比较容易解释
- 线性方法
- 决策树
- 用可解释性的模型,解释不可解释性的行为
- 被解释模型:比如说 神经网络
- 解释模型:跟被解释模型相同的输入和输出
- 重点:解释 被解释模型 的一部分,而不是全部
- 步骤
- 给定要解释的点(或者要解释的一部分)
- 在这个点的附近,采样
- 如果是图片
- 客户在图片上面加上噪音
- 或者拿掉一些 像素
- 把图片切块,然后随机丢掉一些块
- 如果是图片
- 用线性模型训练
- 解释这个线性模型
Tools
- Attribution
- Local Attribution
- 问题
- Saturation
- 问题:某一个组件达到某一个程度,就不再变化
- 思路:Global Attribution
- Noisy gradient
- 问题:像素对梯度的影响是杂乱的
- 思路:SmoothGrad
- 每次训练,针对每个像素加一个Noise
- 假设一批是10张图片,求10张图片的均值,然后在做反馈
- Saturation
- 问题
- global Attribution
- Layer-wise relevance propagation(LRP)
- 目标:input 对 output 的影响程度
- Layer-wise relevance propagation(LRP)
- Completeness
- 目标:score 上升的取值,各个 component 的贡献度
- 算法
- Flexible baseline
- DeepLIFT
- Integrated gradient
- Flexible baseline
- Sensitivity - n
- Heatmap
- Local Attribution
- Probing
- 例子:BERT
- Heatmap