技术干货 | 实现模型透明化的有效技术:MindSpore可解释AI能力 (一)

举报
HWCloudAI 发表于 2021/07/26 11:33:33 2021/07/26
【摘要】 为什么需要可解释AI?在人类历史上,技术进步、生产关系逻辑、伦理法规的发展是动态演进的。当一种新的技术在实验室获得突破后,其引发的价值产生方式的变化会依次对商品形态、生产关系等带来冲击,而同时当新技术带来的价值提升得到认可后,商业逻辑的组织形态在自发的调整过程中,也会对技术发展的路径、内容甚至速度提出诉求,并当诉求得到满足时适配以新型的伦理法规。

01 为什么需要可解释AI?

在人类历史上,技术进步、生产关系逻辑、伦理法规的发展是动态演进的。当一种新的技术在实验室获得突破后,其引发的价值产生方式的变化会依次对商品形态、生产关系等带来冲击,而同时当新技术带来的价值提升得到认可后,商业逻辑的组织形态在自发的调整过程中,也会对技术发展的路径、内容甚至速度提出诉求,并当诉求得到满足时适配以新型的伦理法规。在这样的相互作用中,技术系统与社会体系会共振完成演进,是谓技术革命。

近10年来,籍由算力与数据规模的性价比突破临界点,以深度神经网络为代表的联结主义模型架构及统计学习范式(以后简称深度学习)在特征表征能力上取得了跨越级别的突破,大大推动了人工智能的发展,在很多场景中达到令人难以置信的效果。比如:人脸识别准确率达到97%以上;谷歌智能语音助手回答正确率,在2019年的测试中达到92.9%。

在这些典型场景下,深度学习在智能表现上的性能已经超过了普通人类(甚至专家),从而到了撬动技术更替的临界点。在过去几年间,在某些商业逻辑对技术友好或者伦理法规暂时稀缺的领域,如安防、实时调度、流程优化、竞技博弈、信息流分发等,人工智能(暨深度学习)取得了技术和商业上快速突破。

食髓知味,技术发展的甜头自然每个领域都不愿放过。而当对深度学习商业化运用来到某些对技术敏感、与人的生存或安全关系紧密的领域,如自动驾驶、金融、医疗和司法等高风险应用场景时,原有的商业逻辑在进行技术更替的过程中就会遇到阻力,从而导致商业化(及变现)速度的减缓甚至失败。

究其原因,以上场景的商业逻辑及背后伦理法规的中枢之一是稳定的、可追踪的责任明晰与分发;而深度学习得到的模型是个黑盒,无法从模型的结构或权重中获取模型行为的任何信息,从而使这些场景下责任追踪和分发的中枢无法复用,导致人工智能在业务应用中遇到技术和结构上的困难

举两个具体的例子:

例1,在金融风控场景,通过深度学习模型识别出来小部分用户有欺诈嫌疑,但是业务部门不敢直接使用这个结果进行处理,因为难以理解结果是如何得到的,从而无法判断结果是否准确,担心处理错误;而且缺乏明确的依据,如果处理了,也无法向监管机构交代;
例2,在医疗领域,深度学习模型根据患者的检测数据,判断患者有肺结核,但是医生不知道诊断结果是怎么来的,不敢直接采用,而是根据自己的经验,仔细查看相关检测数据,然后给出自己的判断。从这2个例子可以看出,黑盒模型严重影响模型在实际场景的应用和推广。

要解决模型的这些问题,就需要打开黑盒模型,透明化模型构建过程和推理机理。那么可解释AI是实现模型透明化的有效技术


02 什么是可解释AI?

可解释AI,不论是学术界还是工业界都没有一个统一的定义。这里列举3种典型定义,供大家参考讨论:

1) 可解释性就是希望寻求对模型工作机理的直接理解,打破人工智能的黑盒子。

2) 可解释AI是为AI算法所做出的决策提供人类可读的以及可理解的解释。

3) 可解释的AI是确保人类可以轻松理解和信任人工智能代理做出的决策的一组方法。

可见,关注点在于对模型的理解,黑盒模型白盒化以及模型的可信任。

MindSpore团队根据自身的实践经验和理解,将可解释AI定义为:一套面向机器学习(主要是深度神经网络)的技术合集,包括可视化、数据挖掘、逻辑推理、知识图谱等,目的是通过此技术合集,使深度神经网络呈现一定的可理解性,以满足相关使用者对模型及应用服务产生的信息诉求(如因果或背景信息),从而为使用者对人工智能服务建立认知层面的信任。

03 可解释AI解决什么问题?


按DARPA(美国国防部先进研究项目局)的说法,可解释AI的目的,就是要解决用户面对模型黑盒遇到问题,从而实现:
  • 用户知道AI系统为什么这样做,也知道AI系统为什么不这样做。
  • 用户知道AI系统什么时候可以成功,也知道AI系统什么时候失败。
  • 用户知道什么时候可以信任AI系统。
  • 用户知道AI系统为什么做错了。

MindSpore实现的可解释AI计划主要解决如下两类问题:
1) 解决深度学习机制下技术细节不透明的问题,使得开发者可以通过XAI工具对开发流程中的细节信息进行获取,并通过获取到的可理解信息,帮助开发者进行模型故障排除或性能提升;
2) 提供深度学习技术与服务对象的友好的认知接口(cognitive-friendly interface),通过该接口,基于深度学习的服务提供者可以有合适工具对深度学习服务进行商业化逻辑的操作,基于深度学习的人工智能服务的消费者可以获得必要的释疑并建立信任,也可以为AI系统的审核提供能力支持。


04 如何实现可解释AI?


从前面的介绍,大家可以感觉到可解释AI很高大上,那么具体如何实现呢?结合业界的研究成果,我们认为实现可解释AI主要有3类方法:

第一类是基于数据的可解释性,通常称为深度模型解释,是最容易想到的一种方法,也是很多论文里面经常涉及的一类技术;主要是基于数据分析和可视化技术,实现深度模型可视化,直观展示得到模型结果的关键依据。

第二类是基于模型的可解释性,这类方法也称为可解释模型方法,主要是通过构建可解释的模型,使得模型本身具有可解释性,在输出结果的同时也输出得到该结果的原因。

第三类是基于结果的可解释性,此类方法又称为模型归纳方法,思路是将已有模型作为一个黑盒,根据给定的一批输入和对应的输出,结合观察到模型的行为,推断出产生相应的结果的原因,这类方法的好处是完全与模型无关,什么模型都可以用。

05 MindSpore1.1版本的可解释AI能力

MindSpore1.1开源版本,在MindInsight部件中集成了的可解释AI能力:显著图可视化(Saliency Map Visualization),也称为关键特征区域可视化。这部分归属于第一类基于数据的可解释性方法,后续我们将陆续开源更多的解释方法,除了第一类,还将包括第二类基于模型的可解释方法和第三类基于结果的可解释方法。

当前显著图可视化主要是CV领域的模型解释,在1.1版本中,我们支持6种显著图可视化解释方法:Gradient、Deconvolution、GuidedBackprop、GradCAM、RISE、Occlusion。其中:Gradient、Deconvolution,、GuidedBackprop和GradCAM等4种方法属于基于梯度的解释方法。

这种类型的解释方法,主要利用模型的梯度计算,来突显关键特征,效率比较高,下面简要介绍下这4种方法:

1) Gradient,是最简单直接的解释方法,通过计算输出对输入的梯度,得到输入对最终输出的“贡献”值;而Deconvolution和GuidedBackprop是对Gradient的延展和优化;

2) Deconvolution,对原网络中ReLU进行了修改使其成为梯度的ReLU,从而过滤负向梯度,仅关注对输出起到正向贡献的特征;
3) GuidedBackprop,是在原网络ReLU基础上对负梯度过滤,仅关注对输出起到正向贡献的且激活了的特征,能够减少显著图噪音;

4) GradCAM,针对中间激活层计算类别权重,生成对类别敏感的显著图,可以得到类别相关的解释。


另外2种方法:Occlusion和RISE,则属于基于扰动的解释方法,该类型方法的好处是,仅需利用模型的输入和输出,可以做到模型无关,具体说明下:
1) RISE,使用蒙特卡洛方法,对随机掩码进行加权(权重为遮掩后的模型的输出)平均得到最终显著图;
2) Occlusion,通过遮掩特定位置的输入,计算模型输出的改变量来得到该位置的“贡献”,遍历全部输入,得到显著图。

那么对于具体场景,该如何选择合适的解释方法来解释对应的模型呢?
为了满足这个诉求,MindSpore1.1版本提供了可解释AI的度量框架,同时还提供了4种度量方法:Faithfulness、Localization、Class sensitivity、Robustness,针对不同解释方法的解释效果进行度量,帮助开发者或用户选择最合适的解释方法。简单描述下这4种度量方法:
1) Faithfulness,可信度。按照重要度从大到小移除特征,并记录特定标签概率的减少量。遍历所有特征之后,比较置信度减少量的分布和特征重要性的分布相似性。与黑盒模型越契合的解释,两个分布情况应当越相似,该解释方法具有更好的可信度。

2) Localization,定位性。基于显著图的解释具有目标定位的能力(即给定感兴趣的标签,显著图高亮图片中与标签相关的部分),localization借助目标检测数据集,对于同一图片同一个标签,通过显著图高亮部分和Ground Truth的重合度,来度量显著图的定位能力。

3) Class sensitivity,分类敏感度。不同分类对应的图中的对象的显著图高亮部分应该明显不同。将概率最大和最小标签的显著图进行比较,如果两个标签的显著图差异越大,解释方法的分类敏感度越好。

4) Robustness,健壮性。该指标反映解释方法在局部范围的抗扰动能力,Lipschitz值越小,解释收扰动影响越小,健壮性越强。


这些解释方法,具体该如何使用呢?我们将在下一篇文章深入介绍:“可解释AI如何帮助图片分类模型调试调优?”,敬请期待!

未来,MindSpore还将支持更多的解释和度量方法,逐步丰富可解释AI能力,更好地帮助模型调优和增强模型信任度,促进AI规模应用和推广。
了解完MindSpore的关键技术是不是很心动呢!赶紧【点击链接】并【立即报名】,即可在 ModelArts 平台学习到一个经典案例掌握基于MindSpore的深度学习!


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。