总体上解释面向对象解释的GIS,并说明与其他系统模型相比有何潜在优势


模型可解释性方面的研究在近兩年的科研会议上成为关注热点,因为大家不仅仅满足于模型的效果更对模型效果的原因产生更多的思考,这样的思考有助于模型和特征的优化更能够帮助更好的理解模型本身和提升模型服务质量。本文对机器学习模型可解释性相关资料汇总survey

机器学习业务应用以输出決策判断为目标。可解释性是指人类能够理解决策原因的程度机器学习模型的可解释性越高,人们就越容易理解为什么做出某些决定或預测模型可解释性指对模型内部机制的理解以及对模型结果的理解。其重要性体现在:建模阶段辅助开发人员理解模型,进行模型的對比选择必要时优化调整模型;在投入运行阶段,向业务方解释模型的内部机制对模型结果进行解释。比如基金推荐模型需要解释:为何为这个用户推荐某支基金。

机器学习流程步骤:收集数据、清洗数据、训练模型、基于验证或测试错误或其他评价指标选择最好的模型第一步,选择比较小的错误率和比较高的准确率的高精度的模型第二步,面临准确率和模型复杂度之间的权衡但一个模型越复雜就越难以解释。一个简单的线性回归非常好解释因为它只考虑了自变量与因变量之间的线性相关关系,但是也正因为如此它无法处悝更复杂的关系,模型在测试集上的预测精度也更有可能比较低而深度神经网络处于另一个极端,因为它们能够在多个层次进行抽象推斷所以他们可以处理因变量与自变量之间非常复杂的关系,并且达到非常高的精度但是这种复杂性也使模型成为黑箱,我们无法获知所有产生模型预测结果的这些特征之间的关系所以我们只能用准确率、错误率这样的评价标准来代替,来评估模型的可信性

事实上,烸个分类问题机器学习流程中都应该包括模型理解和模型解释下面是几个原因:

  • 模型改进:理解指标特征、分类、预测,进而理解为什么一个机器学习模型会做出这样的决定、什么特征在决定中起最重要作用能让我们判断模型是否符合常理。一个深度的神经网络来学習区分狼和哈士奇的图像模型使用大量图像训练,并使用另外的一些图像进行测试90%的图像被准确预测,这值得我们高兴但是在没有計算解释函数(explainer function)时,我们不知道该模型主要基于背景:狼图像通常有一个下雪的背景而哈士奇的图像很少有。所以我们不知不觉地做了一個雪地探测器如果只看准确率这样的指标,我们就不会看到这一点知道了模型是如何使用特征进行预测的,我们就能直觉地判断我们嘚模型是否抓住了有意义的特征模型是或否能泛化到其他样本的预测上。

  • 模型可信性与透明度:理解机器学习模型在提高模型可信度和提供审视预测结果透明度上是非常必要的让黑箱模型来决定人们的生活是不现实的,比如贷款和监狱刑法另一个对机器学习结果可信喥提出质疑的领域是药品,模型结果会直接决定病人的生与死机器学习模型在区分恶性肿瘤和不同类型的良性肿瘤方面是非常准确的,泹是我们依然需要专家对诊断结果进行解释解释为什么一个机器学习模型将某个患者的肿瘤归类为良性或恶性将大大帮助医生信任和使鼡机器学习模型来支持他们工作。长久来看更好地理解机器学习模型可以节省大量时间、防止收入损失。如果一个模型没有做出合理的決定在应用这个模型并造成不良影响之前,我们就可以发现这一点

  • 识别和防止偏差:方差和偏差是机器学习中广泛讨论的话题。有偏差的模型经常由有偏见的事实导致如果数据包含微妙的偏差,模型就会学习下来并认为拟合很好一个有名的例子是,用机器学习模型來为囚犯建议定罪量刑这显然反映了司法体系在种族不平等上的内在偏差。其他例子比如用于招聘的机器学习模型揭示了在特定职位仩的性别偏差,比如男性软件工程师和女性护士机器学习模型在我们生活的各个层面上都是强有力的工具,而且它也会变得越来越流行所以作为数据科学家和决策制定者来说,理解我们训练和发布的模型如何做出决策让我们可以事先预防偏差的增大以及消除他们,是峩们的责任

  • 重要性:了解“为什么”可以帮助更深入地了解问题,数据以及模型可能失败的原因

  • 分类:建模前数据的可解释性、建模階段模型可解释性、运行阶段结果可解释性。

  • 范围:全局解释性、局部解释性、模型透明度、模型公平性、模型可靠性

  • 评估:内在还是倳后?模型特定或模型不可知本地还是全局?

  • 特性:准确性、保真性、可用性、可靠性鲁棒性、通用性等。

  • 人性化解释:人类能够理解决策原因的程度人们可以持续预测模型结果的程度标示。

在工业界中数据科学机器学习的主要焦点是更偏“应用”的解决复杂的現实世界至关重要的问题,而不是理论上有效地应用这些模型于正确的数据机器学习模型本身由算法组成,该算法试图从数据中学习潜茬模式和关系而无需硬编码固定规则。因此解释模型如何对业务起作用总是会带来一系列挑战。有一些领域的行业特别是在保险或銀行等金融领域,数据科学家通常最终不得不使用更传统的机器学习模型(线性或基于树的)原因是模型可解释性对于企业解释模型所采取的每个决策非常重要。

残酷的现实是如果没有对机器学习模型或数据科学pipeline如何运作的合理理解,现实中的项目很少成功现实中的數据科学项目,通常会有业务和技术两方面数据科学家通常致力于构建模型并为业务提供解决方案。但是企业可能不知道模型如何工莋的复杂细节。

数据科学从业者将知道存在典型的模型可解释性与模型性能权衡这里需要记住的一点是,模型性能不是运行时或执行性能而是模型在决策中的准确程度。有几种模型包括简单的线性模型甚至是基于树的模型,它们可以很容易地解释模型为获得特定的洞察力或预测而做出的决策但是你可能需要牺牲模型性能,因为它们总是不能产生最好的结果是由于高偏差(线性模型)或高方差的固有問题导致过度拟合(完全成长的树模型)。更复杂的模型如集合模型和最近的深度学习模型系列通常会产生更好的性能,但被认为是嫼盒模型因为很难解释模型如何真正做出决定。

模型解释作为一个概念仍然主要是理论和主观的任何机器学习模型的核心都有一个响應函数,它试图映射和解释独立(输入)自变量和(目标或响应)因变量之间的关系和模式当模型预测或寻找见解时,需要做出某些决萣和选择模型解释试图理解和解释响应函数所做出的这些决定,即whatwhy以及how。模型解释的关键是透明度质疑能力以及人类理解模型决策嘚难易程度。模型解释的三个最重要的方面解释如下

  1. 是什么驱动了模型的预测?我们应该能够查询我们的模型并找出潜在的特征交互鉯了解哪些特征在模型的决策策略中可能是重要的。这确保了模型的公平性

  2. 为什么模型会做出某个决定?我们还应该能够验证并证明为什么某些关键特征在预测期间驱动模型所做出的某些决策时负有责任这确保了模型的可靠性。

  3. 我们如何信任模型预测我们应该能够评估和验证任何数据点以及模型如何对其进行决策。对于模型按预期工作的关键利益相关者而言这应该是可证明且易于理解的。这确保了模型的透明度

在比较模型时,除了模型性能之外如果模型的决策比其他模型的决策更容易理解,那么模型被认为比其他模型具有更好嘚可解释性

在解决机器学习问题时,数据科学家往往倾向于关注模型性能指标如准确性,精确度和召回等等(毫无疑问这很重要!)。这在大多数围绕数据科学机器学习的在线竞赛中也很普遍但是,指标只能说明模型预测决策的部分故事随着时间的推移,由于環境中的各种因素导致的模型概念漂移性能可能会发生变化。因此了解推动模型采取某些决策的因素至关重要。

如果一个模型工作得佷好为什么还要深入挖掘呢?在解决现实世界中的数据科学问题时为了让企业信任您的模型预测和决策,他们会不断提出“我为什么偠相信您的模型”这一问题,这一点非常有意义如果一个人患有癌症或糖尿病,一个人可能对社会构成风险或者即使客户会流失,您是否会对预测和做出决策(如果有的话)感到满意也许不是,如果我们能够更多地了解模型的决策过程(原因和方式)我们可能会哽喜欢它。这使我们更加透明地了解模型为何做出某些决策在某些情况下可能出现的问题,并且随着时间的推移它有助于我们在这些机器学习模型上建立一定程度的信任

  • 了解预测背后的原因在评估信任方面非常重要,如果计划基于预测采取行动或者选择是否部署新模型,那么这是至关重要的

  • 无论人类是直接使用机器学习分类器作为工具,还是在其他产品中部署模型仍然存在一个至关重要的问题:洳果用户不信任模型或预测,他们就不会使用它

这是我们在本文中多次讨论的内容,也是决定数据科学项目在行业中取得成功的关键区別之一这推动了模型解释的必要性和重要性的紧迫性。

有一些特定的标准可用于分类模型解释方法Christoph Molnar,2018年“可解释的机器学习制作黑箱模型可解释指南”中提到了一个很好的指南。

  • 内在还是事后内在可解释性就是利用机器学习模型,该模型本质上是可解释的(如线性模型参数模型或基于树的模型)。事后可解释性意味着选择和训练黑匣子模型(集合方法或神经网络)并在训练后应用可解释性方法(特征重要性部分依赖性图)。我们将更多地关注我们系列文章中的事后模型可解释方法

  • 模型特定或模型不可知?特定于模型的解释工具非常特定于内在模型解释方法这些方法完全依赖于每个模型的功能和特征。这可以是系数p值,与回归模型有关的AIC分数来自决策树嘚规则等等。与模型无关的工具与事后方法更相关可用于任何机器学习模型。这些不可知方法通常通过分析(和输入的扰动)特征输入囷输出对来操作根据定义,这些方法无法访问任何模型内部如权重,约束或假设

  • 本地还是全局?这种解释分类讨论了解释方法是解釋单个预测还是整个模型行为或者如果范围介于两者之间?我们将很快谈论全球和地方的解释

如何定义可解释性的范围和界限?一些囿用的方面可以是模型的透明度公平性和责任性。全局和局部模型解释是定义模型解释范围的明确方法

全局可解释:就是试图理解“模型如何进行预测?”和“模型的子集如何影响模型决策”。要立即理解和解释整个模型我们需要全局可解释性。全局可解释性是指能够基于完整数据集上的依赖(响应)变量和独立(预测变量)特征之间的条件交互来解释和理解模型决策尝试理解特征交互和重要性始终是理解全球解释的一个很好的一步。当然在尝试分析交互时,在超过两维或三维之后可视化特征变得非常困难因此,经常查看可能影响全局知识模型预测的模块化部分和特征子集会有所帮助全局解释需要完整的模型结构,假设和约束知识

局部解释:试图理解“為什么模型为单个实例做出具体决策?”和“为什么模型为一组实例做出具体决策”。对于本地可解释性我们不关心模型的固有结构戓假设,我们将其视为黑盒子为了理解单个数据点的预测决策,我们专注于该数据点并查看该点周围的特征空间中的局部子区域并尝試基于该局部区域理解该点的模型决策。本地数据分布和特征空间可能表现完全不同并提供更准确的解释而不是全局解释。局部可解释模型 - 不可知解释(LIME)框架是一种很好的方法可用于模型不可知的局部解释。我们可以结合使用全局和局部解释来解释一组实例的模型决筞

模型透明度:为试图理解“如何根据算法和特征创建模型?”我们知道,通常机器学习模型都是在数据特征之上利用算法来构建将輸入映射到潜在输出(响应)的表示模型的透明度可能试图了解模型的构建方式以及可能影响其决策的更多技术细节。这可以是神经网絡权重CNN滤波器的权重,线性模型系数决策树的节点和分裂。但是由于业务可能不太精通这些技术细节,因此尝试使用不可知的局蔀和全局解释方法来解释模型决策有助于展示模型透明度

对于想要了解模型如何工作的数据科学家来说,评估模型的准确性通常是不够嘚数据科学家通常想知道模型输入变量如何工作以及模型的预测如何根据输入变量的值而变化

机器学习算法和模型的工程应用中用到朂多的主要是树类模型(lgb,xgb)和神经网络(cnn, rnn)使用者往往习惯于很少去思考其中的含义和解释性。需要思考一个模型的哪些东西是可解释的

所以囿几个问题值得讨论:

  • 哪些特征在模型看到是最重要的?

  • 关于某一条记录的预测每一个特征是如何影响到最终的预测结果的?

  • 从大量的記录整体来考虑每一个特征如何影响模型的预测的?

为什么这些解释信息是有价值的呢:

  • 一般的真实业务场景会有很多不可信赖的没囿组织好的脏数据。你在预处理数据时就有可能加进来了潜在的错误或者不小心泄露了预测目标的信息等,考虑各种潜在的灾难性后果debug的思路就尤其重要了。当你遇到了用现有业务知识无法解释的数据的时候了解模型预测的模式,可以帮助你快速定位问题

  • 特征工程通常是提升模型准确率最有效的方法。特征工程通常涉及到到反复的操作原始数据(或者之前的简单特征)用不同的方法来得到新的特征。囿时候你完成FE的过程只用到了自己的直觉这其实还不够,当你有上百个原始特征的时候或者当你缺乏业务背景知识的时候,你将会需偠更多的指导方向如何创造出这样优秀的特征呢?如何找到最重要的特征的方法并且可以发现两个特别相关的特征,当面对越来越多嘚特征的时候这些方法就会很重要啦。

  • 对于网上下载的数据集你完全控制不了不过很多公司和机构用数据科学来指导他们从更多方面收集数据。一般来说收集新数据很可能花费比较高或者不是很容易,所以大家很想要知道哪些数据是值得收集的基于模型的洞察力分析可以教你很好的理解已有的特征,这将会帮助你推断什么样子的新特征是有用的

  • 一些决策是模型自动做出来的,虽然亚马逊不会用人笁来决定展示给你网页上的商品但是很多重要的决策是由人来做出的,而对于这些决定模型的洞察力会比模型的预测结果更有价值。

  • 建立模型和人之间的信任
    很多人在做重要决策的时候不会轻易的相信模型除非他们验证过模型的一些基本特性,这当然是合理的实际仩,把模型的可解释性展示出来如果可以匹配上人们对问题的理解,那么这将会建立起大家对模型的信任即使是在那些没有数据科学知识的人群中。

一个完美的分类模型就是如果一个客户实际上属于类别 good,也预测成good处于类别 bad,也就预测成 bad实际上一些是 good 的客户,根據我们的模型却预测他为 bad,对一些原本是 bad 的客户却预测他为 good。我们需要知道这个模型到底预测对了多少,预测错了多少混淆矩阵僦把所有这些信息,都归到一个表里:

  • 感谢 zizhewang(汪子哲) 同学协助整理本文汇总对机器学习模型可解释性相关资料。

pk10讲解:贾铃访谈:新德里因空气汙染进入“公共健康紧急状态”在参访结束后的评论中奥巴马并没有提及中国在南海的活动elderly。不过总统国家安全事务助理苏珊·E·赖斯(Susan , Rselderly.net另一方面,专业集群网的elderly一次性建设和后续的运营成本过高是集群通信发展缓慢的另一个重要原因“虽然国家当时为每个有需求的行业囷部门指配了一定的频率用于内部集群网的建设”杨涛认为“由于每个行业和部门的使用范围和使用量有限,系统规模小成本居高不丅,网络建设和运营成本过高后续投入不足,形成恶性循环使得集群通信举步维艰”军队番号公开这一新变化在网络上引起密切关注。许多网elderly友认可这一举措认为这是中国军队进一步透明化的新举动,也有网友担心公开军队番号会不会带来一些负面影响。军事专家則认为这一改变表明中国在军事方面更加自信。

声明:此文是仅代表作者个人观点或出于传递更多信息之目的若有来源标注错误或侵犯了您的合法权益,请作者持权属证明与本网联系我们将及时更正、删除,谢谢

我要回帖

更多关于 面向对象解释 的文章

 

随机推荐