当前位置:首页 > 网络营销 > 正文

深度学习的可解释性研究(一):让模型「说人话」

雷锋网AI技术评论注:本文为BIGSCity知乎专栏内容,作者:王小健。 北航智慧城市兴趣小组BIGSCITY是隶属于北京航空航天大学计算机学院的学术研究小组。 课题组致力于研究机器学习与数据挖掘在城市科学、社会科学等领域的交叉应用技术。 《AI技术评论》经BIGSCity授权转载,更多后续内容敬请关注。

我很高兴这篇文章成为 BIGSCity 兴趣小组的第一篇贡献。 《深度学习的可解释性研究》系列预计包含3-4篇文章,用尽可能简单的语言带领大家理解可解释性以及关于深度的概念和方法。 了解可解释性工作的研究成果,并不定期更新内容(欢迎更新)。

什么是可解释性?

广义上的可解释性是指当我们需要理解或解决某件事时,我们能够获得足够多的我们需要的可理解的信息。 例如,当我们调试一个bug时,我们需要通过变量检查和日志信息来定位问题。 例如,当科学研究面临一个新问题时,我们需要查阅一些资料来了解这个新问题的基本概念和研究现状,以获得对研究方向的正确认识。 另一方面,如果在某些情况下我们无法获得足够的信息,那么这些事情对我们来说将是无法解释的。 比如,刘慈欣的短篇小说《超文涛》中霍金提出的“宇宙的目的是什么”这个问题一下子就卡住了全知解惑者,因为无论多么先进的文明,都没有办法理解和掌握宇宙的存在。问题是造物主何时创造了宇宙。 所有的信息,这些终极问题对我们来说永远是无法解释的。

具体到机器学习领域,以最人性化的决策树模型为例,模型每次做出决策时,都会通过一个决策序列向我们展示该模型的决策依据:例如条件对应男性&未婚&博士&秃头“不感兴趣”的决策,决策树模型自带的基于信息论的筛选变量标准也帮助我们了解哪些变量在模型决策过程中发挥了显着作用制作。 因此,在一定程度上,我们认为决策树模型是一个可解释性比较好的模型。 在以后的介绍中,我们还将提到以决策树为代表的规则模型在可解释性研究中发挥着重要作用。 非常关键的作用。 以最不用户友好的多层神经网络模型为例,模型做出决策的依据是什么? 可能例如, 1/(e^-(2*1/(e^(-(2*x+y)))+1) + 3*1/(e^(-(8*x+5*y ) )+1))+1)以大于0.5为标准(这已经是最简单的模型结构)。 这一系列非线性函数的叠加公式使得我们很难直接理解神经网络的“脑回路”,因此深度神经网络传统上被认为是黑盒模型。

2017 年 ICML 教程中给出的可解释性的定义是:

解释是向人类作出解释的过程。

概括起来就是“用人语说话”、“用人语说话”、“用人语说话”。 任何不以人类能够理解的方式给出的解释都被称为流氓行为。 记住这三个词,你就差不多掌握了可以解释的内容了。 性的本质。

为什么我们需要可解释性?

从广义上讲,我们对可解释性的需求主要来自于对问题和任务的理解不够。 具体到深度学习/机器学习领域,就像我们上面提到的多层神经网络的问题一样,虽然高度的非线性赋予了多层神经网络极高的模型表示能力,配合一些现代炼金术的参数调整技术在很多问题上都能取得非常令人满意的表现。 如果你经常关注人工智能的头条新闻,那些令人难以置信的机器学习和神经网络的最新突破甚至常常会让人们产生恐惧和幻觉,认为人工智能很快就会取代人类。 但正如贝叶斯网络创始人 Pearl 最近指出的那样,“几乎所有深度学习的突破本质上都只是曲线拟合。” 他认为,当今人工智能领域的技术水平仅相当于上一代。 该机器具有增强版本的功能。 虽然我们造出了一台精度极高的机器,但最终我们只能得到一堆看似毫无意义的模型参数和拟合度很高的判断结果,但实际上模型本身也意味着知识,而我们想知道什么知识模型是否从数据(以人类可以理解的方式表达)中学习以产生最终决策。 它能帮助我们发现一些潜在的关联吗? 例如,我想开发一个基于深度学习模型的应用程序来帮助医生确定患者的风险。 除了最终的判定结果之外,我可能还需要了解模型是否根据患者生成这样的判定。 考虑哪些因素。 如果一个模型完全无法解释,它在许多领域的应用就会受到限制,因为它无法提供更可靠的信息。 这就是为什么即使深度学习的准确性如此之高,很多人仍然更喜欢应用具有高可解释性的传统统计模型。

无法解释也意味着危险。 事实上,在很多领域,对深度学习模型应用的担忧不仅包括模型本身无法提供足够的信息,还或多或少存在安全方面的考虑。 例如,这是一个非常经典的对抗性例子。 对于CNN模型来说,在给一张熊猫图片添加一些噪声后,确定它是长臂猿的概率为99.3%。

给熊猫图片添加噪声,模型将图片识别为长臂猿的概率为 99.3%

事实上,其他一些可解释性更好的模型可能会比深度学习模型面临更多的对抗性样本问题,但具有可解释性的模型在面对这些问题时可以跟踪和追溯异常的原因。 定位,比如在线性回归模型中,我们可以发现某个输入参数太大/太小,导致最终判断异常。 然而,深度学习模型很难判断上面两张图之间到底是什么差异导致了判断结果出现如此大的偏差。 尽管对抗性例子的研究最近非常流行,但对于此类问题仍然缺乏可解释的解释。

当然,不少学者也对可解释性的必要性表示怀疑。 在NIPS 2017会场上,围绕“机器学习是否需要可解释性?”这一主题展开了非常激烈的辩论。 每个人都对可解释性表示怀疑。 对于性的呼声还是很高的。 然而人工智能三巨头之一的Yann LeCun认为,人类的大脑非常有限,我们没有那么多的脑容量来研究一切事物的可解释性。 有些事情需要解释,比如法律,但大多数时候,它们并不像你想象的那么重要。 例如,世界上有如此多的应用程序和网站。 当你每天使用 Facebook 和 Google 时,你甚至不会考虑寻求它们背后的可解释性。 LeCun还举了一个例子:多年前他和一群经济学家也做了一个预测房价的模型。 第一个使用简单的线性猜测模型,经济学家可以清楚地解释原理; 第二种使用了复杂的神经网络,但效果比第一种好很多。 结果,这群经济学家想创办一家公司。 您认为他们会选择哪一位? LeCun表示,任何时候在两者之间做出选择,都会选择效果最好的一个。 就像我们多年来一直使用药物,尽管我们不知道其中的成分。

但不可否认的是,可解释性始终是一个非常好的属性。 如果能够兼顾效率、准确性和人类语言三个方面,具有可解释性的模型将在很多应用场景中具有不可替代的优势。 。

有哪些解释方法?

之前我们也提到过,机器学习的目的是从数据中发现知识或者解决问题。 在这个过程中,只要它能够为我们提供关于数据或模型的可理解的信息,就会帮助我们更充分地发现知识、理解和解决问题的方法可以归类为可解释性方法。 如果按照可解释性方法的过程来划分,大致可以分为三大类:

1.建模前的可解释性方法

2. 构建可解释的模型

3.建模后使用可解释性方法来解释模型

建模之前的可解释性方法

这类方法其实主要涉及到一些数据预处理或者数据显示的方法。 机器学习解决了从数据中发现知识和模式的问题。 如果我们对要处理的数据的特征知之甚少,那么期望在建模之前很好地理解问题本身是不现实的。 可解释性方法的关键是帮助我们快速、全面地了解数据分布的特征,从而帮助我们考虑建模过程中可能面临的问题,选择最合理的模型来逼近可以实现的最优问题。 。

数据可视化方法是一类非常重要的预建模可解释性方法。 许多对数据挖掘稍有了解的人可能会认为数据可视化是数据挖掘工作的最后一步,这可能是设计一些漂亮且令人印象深刻的图表或展示你的分析和挖掘结果。 但很多时候,我们在真正研究一个数据问题之前,非常有必要通过建立一系列各种可视化方法来建立对数据的直观认识,尤其是当数据量非常大或者数据维数非常大的时候高的。 例如,对于一些时空高维数据,如果能够建立一些交互式可视化方法,将极大地帮助我们从各个层面了解数据的分布情况。 在这方面,我们实验室也做了一些非常好的工作。

另一个重要的方法是探索性数据分析,它可以帮助我们更好地理解数据的分布。 例如,一种称为MMD-critic的方法可以帮助我们在数据中找到一些具有代表性或不具有代表性的样本。

使用MMD-critic从Imagenet数据集学习到的代表性样本和非代表性样本(以两只狗为例)

构建本质上可解释的模型

建立一个可解释的模型是我个人认为最关键的一类可解释性方法。 这也是一种要求很高、限制性很大的方法。 具有“说人类语言”能力的可解释性模型大概可以分为以下几种类型:

1. 基于规则的方法(Rule-based)

2. 基于每个特征的方法

3.基于案例的方法

4.稀疏方法(Sparsity)

5.单调性方法

基于规则的方法比如我们提到的非常经典的决策树模型。 此类模型中的任何决策都可以用逻辑规则表示。 但当规则太多或者原始特征本身不是特别容易解释时,基于规则的方法有时就不太适合了。

基于单一特征的方法主要是一些非常经典的线性模型,比如线性回归、逻辑回归、广义线性回归、广义加性模型等。这类模型可以说是目前最具可解释性的方法,可以学习机器学习或者计算机相关专业的人会认为线性回归是最基本、最底层的模型,但如果你学过计量经济学,你会发现大多数书籍都讨论线性模型,包括经济学及相关领域的大多数论文。 所有研究均使用线性回归作为方法进行。 这个非常经典的模型在全球每秒被使用约 800 万次。 为什么人们如此喜欢这个模型? 除了模型结构相对简单之外,更重要的是,线性回归模型及其一些变体具有非常坚实的统计基础。 统计学可以说是最看重可解释性的学科。 过去一百年来无数数学家研究过它。 统计学家讨论了各种情况下模型的参数估计、参数修正、假设检验、边界条件等问题。 目的是使模型在各种情况下都具有良好的可解释性。 如果你有时间并且有兴趣,除了学习机器学习深度模型之外,你还可以尝试更多地了解统计学。 你可能会对某些问题产生完全不同的思考和理解。

基于实例的方法主要是通过一些代表性样本来解释聚类/分类结果的方法。 例如,在下图所示的贝叶斯案例模型(BCM)中,我们将样本分为三组,我们可以找到每组中的代表性样本和重要子空间。 例如,对于下面的第一种聚类,绿色面孔是代表性样本,绿色和正方形是代表性特征子空间。

使用BCM及其相应的代表性样本和代表性特征子空间学习的分类

基于案例的方法的一些局限性是所选择的样本可能不具有代表性,或者人们可能倾向于过度概括。

基于稀疏性的方法主要利用信息的稀疏特性来尽可能简化模型的表示。 例如,如下所示,图稀疏LDA方法根据层次词信息形成层次主题表达,使得一些小主题可以通过更通用的主题来概括,让我们更容易理解。 特定主题所代表的含义。

基于图的 LDA 中的主题层次结构

基于单调性的方法:在许多机器学习问题中,某些输入和输出之间存在正/负相关性。 如果我们在模型训练时能够找出这种单调性关系,就可以使模型具有更高的性能。 可解释性。 例如,医生对感染某种特定疾病的概率的估计主要是由与该疾病相关的一些高危因素决定的。 找到单调关系可以帮助我们识别这些高风险因素。

建模后使用可解释性方法进行解释

建模后可解释性方法主要针对具有黑盒性质的深度学习模型,主要分为以下几类工作:

1.隐藏层分析方法

2. 模拟/代理模型

3、敏感性分析方法

这部分是我们接下来介绍和研究的重点,因此在后续文章中主要进行讲解,本文不再过多介绍。

除了解释深度学习模型本身的方法之外,还有一部分工作旨在建立一个本身可解释的深度学习模型。 这与我们前面介绍的一般可解释性模型不同且相关,也将在以后讨论。 文章中介绍了。

如果您对本系列感兴趣或者有疑问,欢迎私信交流。

关于 BIGSCity

北航智慧城市兴趣小组BIGSCITY是隶属于北京航空航天大学计算机学院的学术研究小组。 课题组致力于研究机器学习与数据挖掘在城市科学、社会科学等领域的交叉应用技术。 BIGSCITY的研究兴趣包括:城市计算、时空数据挖掘、机器学习可解释性以及人工智能在交通、健康、金融等领域的应用。 本专栏将介绍BIGSCITY的一些研究成果,不定期更新研究组相关的研究工作,介绍所有与BIGSCITY相关的有趣内容。

关于BIGSCITY的详细信息,请参见课题组主页:

参考

1. Google Brain,可解释的机器学习:大惊小怪、具体和问题。

2. Kim B、Koyejo O、Khanna R 等人。 例子还不够,要学会批评! 对可解释性的批评[C]。 神经信息处理系统,2016:2280-2288。

3. Kim B, Rudin C, Shah J. 贝叶斯案例模型:基于案例的推理和原型分类的生成方法[J]。 计算机科学,2015,3:1952-1960。

4. Doshi-Velez F, Wallace BC, Adams R. 图稀疏LDA:具有结构化稀疏性的主题模型[J]。 计算机科学,2014。

0
收藏0

最新文章

随机文章

取消
扫码支持支付码