ML 模型不等于“黑盒”:explainable AI 可解释的人工智能

本文涉及的产品
交互式建模 PAI-DSW,5000CU*H 3个月
简介: ML 模型不等于“黑盒”:explainable AI 可解释的人工智能

可解释人工智能的含义

现阶段机器学习的工作流程(从训练到工业应用)大致如下:

image.png

ML 工作流程

上图展示了:基于原始数据通过学习来对模型进行训练;其中学习过程依赖于学习函数,给其输入原始数据,能够输出对应的预测数据;而使用者主要接触并使用预测数据。

具体地,学习函数除了可以是人工神经网络,也可以是决策树、支持向量机、boosting model 等。

当学习函数通过原始数据训练确定后,就可以被用于输入新的数据并且进行预测。在此基础上,使用者便可以及基于预测数据做出决策或采取行动了。

但是其中涉及到的问题,正如图片中的若干问号所示:预测值的准确性及可信度。

通常,运用机器学习模型时,首先需要确定误差函数或者损失函数,通过真实数据和预测数据之间的距离来反映模型的性能。但是误差函数或者损失函数可以说明一切吗?

模型可能表现出较低误差或损失,但是仍然具有一定的偏差,可能不时产生一些奇怪的预测结果。当然,这些意外的预测结果可能让我们发现一些新的规律,但是也可能反映出模型存在某些错误,并且需要进行修正。

即使预测结果不存在问题,我们获得了良好的预测结果,但是这也远远不够。我们不仅仅局限于结果的预测,也倾向于想要知道所使用的模型的内部作用机制,即该模型是怎么做到准确预测的。

上述问题阐述了 Explainable AI 为何被人们所重视。当机器学习中采用 explainable AI 时,其工作流程如下:

image.png

采用 explainable AI 的 ML 模型

上图展示了:采用新的学习机制来训练新的学习函数,形成新的 explainable 模型。这一新的学习函数不仅具有准确预测的能力,同时也能够对其预测结果产生的过程进行溯源解释。这样提供给使用者的就不仅仅是预测的结果,还将能够提供更多的细节。

explainable AI 为何重要?

当我们使用 AI 时,往往需要大量的参数实现对于原始数据的处理和分析,因此导致最后形成难以解释的“黑盒模型”。当然,建立开发该模型的数据科学家或工程师很清楚具体的计算处理过程,但是对于使用者而言,该模型是相对神秘和神奇的。使用者只需要输入数据,然后能够直接得到预测结果。

image.png

ML 模型=“黑盒”

在 AI 发展早期,人们更多关注于 AI 能不能给出很好的预测结果,因此即使它是“黑盒”也无所谓。但是随着技术的不断发展和深入,人们愈来愈重视 AI 的可解释性。人们想要知道 AI 是如何产生准确的预测结果的。发生这一变化的原因如下:

  1. 了解机器学习模型进行预测时的内部机制,有助于加快这些模型的广泛应用。
  2. 可解释性使得 AI 更易于被使用者所接受,让用户更加信任所使用的机器学习模型和系统。
  3. 对于某些行业,如保险业或银行业,有时会有公司层面的甚至是立法方面的限制,使得这些公司使用的模型必须能够解释。
  4. 在其他一些关键领域,比如医学领域,人工智能可以产生如此巨大的影响,并惊人地提高我们的生活质量,最基本的是,所使用的模型可以毫无疑问地得到信任。有一个Netflix推荐系统,有时输出奇怪的预测可能不会有很大的影响。但在医学诊断的情况下,不寻常的预测可能是致命的,因此使用者会有更多的质疑,而提供更多的信息能够有助于获得使用者的信任。
  5. 可解释的模型可以帮助用户更好地利用这些模型所提供的输出,使它们在业务、研究或决策中具有更大的影响力。

但是具有更好预测性能的模型往往具有更差的可解释性。以随机森林和决策树为例,随机森林方法的性能通常优于决策树,但是决策树具有更好的可解释性。

image.png

可解释性 VS 模型性能

如上图所示,可解释性和模型性能呈现反比例关系。但是基于这一事实,我们想要进一步实现从 X 到 O 的跃升,即在不降低模型性能的条件下提高模型的可解释性。

explainable AI 实例

为了实现在不降低模型性能的条件下提高模型的可解释性这一目的,可以采用如下方法:

  1. 使用可解释的模型,如决策树。
  2. 对难以解释的模型增加解释层以对模型进行解释,如随机森林。

接下来以房价预测为例进行 explainable AI 的阐述。

使用的数据集为:Kaggle 房价预测

该数据集包含了在爱荷华州艾姆斯市的住宅数据,79个解释性变量(几乎)描述了住宅的方方面面,需要基于该数据集预测部分住宅的最终价格。

因为本文的目的在于解释 explainable AI,所以只使用数据集当中的数值型数据,并且所采用的模型使用默认的超参数设定。

使用决策树进行房价预测

决策树是最容易解释的机器学习模型之一。其实现方法非常简单:通过递归地将数据分割成越来越小的组,这些组最终会出现在我们的子节点中。

xxxxxx.png

决策树使用示例

上图展示了通过决策树分析利用数据。决策树基于房价数据,依次判断 LSTAT 和 RM 参数,最后分类到最终的子节点中。

那么如何解释决策树的预测过程呢?显然,我们只需要基于样本分类的路径,就能够很好地解释预测结果是如何产生的。

xxxx.png

决策树某一样本的分类路径

上图展示了决策树某一样本的分类路径,该样本的房价为 212545 美元。基于路径,可以生成如下解释性语句:“优质建筑,地面生活面积小于1941平方英尺,地下室小于1469平方英尺,车库大于407平方英尺,一楼大于767平方英尺。1978年之后,它被重新改造过。因此,预计价格为212542美元。”

增加解释层(Shapley Values)

决策树虽然能够较为方便地解释结果,但是其预测能力不够强大。往往不能得出最好的预测结果。

使用同样的数据集,用随机森林方法进行预测。将随机森林和决策树的误差函数进行对比:

xxx.png

随机森林方法 VS 决策树方法

可以看出,决策树方法的误差几乎是随机森林方法的两倍。

虽然随机森林方法具有更好的预测能力,但是却也更加复杂,如何对其进行解释呢?针对这一问题,可以在模型中增加一个解释层以实现解释的目的。

xx.png

"黑盒"模型中增加解释层

通常,可以使用 Shapley Values 归因算法作为解释层。Shapley Values 来源于游戏理论,主要作用在于反映游戏中每个玩家的贡献大小。被用于机器学习中,则反映每个特征值对于预测结果的贡献大小。

通过 Python 中的 SHAP 库,我们可以调用相关的函数实现指定输入数据的 Shapley Values。在房价预测案例中,我们只需要向 Shapley Explainer 中输入训练数据,该训练数据与 ML 模型中的训练数据一致,并且声明使用的 ML 模型(随机森林方法)。然后 Shapley Explainer 就会生成各个特征值的贡献大小。

x.png

Shapley Values

上图显示了各个特征值对于预测结果的贡献大小。粉色和蓝色交汇的点便是模型预测值。最接近粉色和蓝色交汇点的变量是对特定预测影响最大的变量。

粉色的变量及其对应值有助于提高房价,而蓝色的变量及其对应值有助于降低房价。正如我们在这里看到的,最有助于提高房价的变量是 OverallQual,其值为7。

在这种情况下,房屋的质量和建造年份(2003年)是房屋最相关的积极特征。地下室和一层面积的较小值是最相关的负特征。总之,所有这些变量及其值都证明了预测的正确性。

这些信息都可以生成相应的解释性文本,有助于更精确和复杂的模型的解释说明。

当然,除了 Shapley Values 以外,还有其他的解释层方法,如:Permutation Importance、LIME。

目录
相关文章
|
8天前
|
机器学习/深度学习 编解码 人工智能
Transformer 和扩散模型的生成式 AI 实用指南(预览版)
Transformer 和扩散模型的生成式 AI 实用指南(预览版)
9 1
Transformer 和扩散模型的生成式 AI 实用指南(预览版)
|
8天前
|
数据采集 人工智能 编解码
二次元专用超分AI模型APISR:在线可用,入选CVPR
【4月更文挑战第15天】APISR是一款由密歇根大学、耶鲁大学和浙江大学联合研发的AI模型,专攻动漫风格的超分辨率问题。在CVPR会议上发表的这项成果,通过理解动漫制作流程,针对性地收集和处理训练数据,提升了动漫图像的清晰度和视觉效果。APISR引入预测导向的压缩模块和平衡的双感知损失函数,有效恢复手绘线条并减少颜色伪影。此外,模型关注图像复杂性,优化训练数据质量和学习效率。尽管面临处理复杂场景和颜色偏差的挑战,APISR为动漫图像处理开辟了新方向。
15 1
二次元专用超分AI模型APISR:在线可用,入选CVPR
|
11天前
|
机器学习/深度学习 人工智能 自然语言处理
|
11天前
|
机器学习/深度学习 数据采集 人工智能
|
12天前
|
机器学习/深度学习 数据采集 人工智能
|
12天前
|
机器学习/深度学习 人工智能 算法
|
12天前
|
机器学习/深度学习 人工智能 算法
|
16天前
|
机器学习/深度学习 人工智能 算法
AI日报:人工智能使用和评估的关键任务
AI日报:人工智能使用和评估的关键任务
21 0
|
16天前
|
人工智能 安全 芯片
AI日报:扎克伯格瞄准AGI通用人工智能
AI日报:扎克伯格瞄准AGI通用人工智能
28 1
|
16天前
|
人工智能 搜索推荐 算法
人工智能,应该如何测试?(七)大模型客服系统测试
这篇文稿讨论了企业级对话机器人的知识引擎构建,强调了仅靠大模型如 GPT 是不够的,需要专业领域的知识库。知识引擎的构建涉及文档上传、解析、拆分和特征向量等步骤。文档解析是难点,因文档格式多样,需将内容自动提取。文档拆分按语义切片,以便针对性地回答用户问题。词向量用于表示词的关联性,帮助模型理解词义关系。知识引擎构建完成后,通过语义检索模型或问答模型检索答案。测试环节涵盖文档解析的准确性、问答模型的正确率及意图识别模型的性能。整个过程包含大量模型组合和手动工作,远非简单的自动化任务。
31 0