机器学习中的对比解释:原理与实践
1. 对比解释概述
对比学习是机器学习管道中寻找相似和不同候选对象的一种新方法。对比解释旨在找出两个特征之间的相似性,以帮助进行类别的预测。典型的黑盒模型在不同类型的超参数上进行训练,并在各种时期和学习率下优化大量参数,这些模型很难解释,更难以说明为什么模型预测为A类而不是B类。因此,需要生成更多解释,以便业务用户能够理解预测结果,这吸引了许多开发者创建有价值的创新框架。对比解释着重解释为什么模型预测为A类而不是B类,这种原因查找有助于业务用户理解模型的行为。
对比解释有两个相关概念:
- 相关正例(Pertinent positives, PP) :找出机器学习模型识别与预测类相同类所必需的特征。例如,一个人的收入和年龄决定了其净资产,我们希望机器学习模型通过高收入和高年龄组来识别高净资产个体类。这在很多方面类似于机器学习模型的锚定解释。
- 相关负例(Pertinent negatives, PN) :解释在保持原始输出类的情况下,记录中应不存在的特征。一些研究人员也将其称为反事实解释。
2. 使用Alibi进行对比解释模型(CEM)
为了解释对比解释模型(CEM)的概念以及如何通过基于Python的库实现它,我们使用Alibi。首先,我们将开发一个基于Keras的深度学习模型,以TensorFlow为后端。以下是开发深度学习模型所需的各种模块和方法的导入语句,CEM可在Alibi库的解释器模块中找到。
import tensorflow as