1.2 可解释人工智能
1.2.1 目的、定义及范式
本书旨在介绍当前人工智能前沿研究的一个十分紧要的课题:智能体[1](AIAgent)如何有效地“解释”自己,取得人类用户的“信任”,从而形成高效的人机协作,融入一个人机共生共存的理想社会。可解释人工智能(Explainable Artif icial Intelligence,XAI)是指智能体以一种可解释、可理解、人机互动的方式,与人工智能系统的使用者、受影响者、决策者、开发者等,达成清晰有效的交流沟通,以取得人类信任,同时满足各类应用场景对智能体决策机制的监管要求。
上述对可解释AI的介绍中,涉及两个重要的基本概念:信任与解释。信任(Trust)是人类在社会协作中的一种心理状态,其本质是我们愿意暴露自己的“脆弱性”(Vulnerability)。比如,当你愿意坐上一辆无人驾驶汽车时,你其实是把性命交给了自动驾驶的人工智能系统,这是在我们对该系统充分信任的情况下做出的决定。这种信任的建立,基于两个层次的主观判断;第一,是对智能体能力与性能的判断,相信它有能力代替我们处理各种复杂的道路情况;第二,是对其态度与决策机制的判断,相信它的系统设计者会优先考虑我们的人身安全,并有能力控制该系统做出合乎道德规范的判断决策。随着人工智能功能越来越强大,系统也越来越复杂,如何让我们了解并信任智能体的能力及决策机制,是当今愈加广泛的人工智能应用过程中不可回避的一个巨大挑战。
解释(Explanation)是人类相互沟通并获取信任的基本方法。智能体也必须通过与不同的对象人群进行沟通交流和反复“磨合”,才能达到“取信于民”的目的。具体来说,智能体要获得不同人群的信任,必须要考虑每个人的立场背景、教育程度等千差万别的因素来提供不同内容与形式的解释。同时,这个沟通解释的过程,也会反过来影响与改变智能体,使其建立“自知之明”与“自信”。
因此,本书提出:可解释AI系统需要在一种人机沟通(Communication)的交互场景中,逐步学习和调整其解释,并最终完成任务。在如图1-4所示的可解释人工智能范式中:被解释的对象是人工智能体的决策机制(AIReasoning Mechanism);解释者(Explainer)是负责提供解释的一方,既可以是进行自我解释的人工智能体本身,也可以是第三方的解释系统或人类专家;解释受众(Explainee)则是听取解释并试图理解的一方,通常是人工智能系统的人类使用者、受影响者、决策者或开发者。解释者需要根据当前的场景、任务、解释受众的知识水平和价值观等因素选择合适的解释方法,并在交互沟通过程中不断地调整优化所提供的解释,以达到取得人类信任的根本目的。在本书后续章节中,将会对可解释人工智能范式基本架构的各组成部分、相关技术和各种应用情况进行详细的说明。
1.2.2 层次、分类及应用场景
1.可解释AI的层次
按照智能体能够提供解释的深入程度,基于人机沟通的可解释人工智能可以分为三个层次。
图1-4 基于人机沟通交互式的可解释AI范式
第一,智能体要有自省及自辩的能力,这主要针对目前基于深度学习的、用大量数据训练得到的各种神经网络。这些被训练出来的神经网络往往带有上亿个甚至万亿个神经元参数[8,9,14]。如何分析解读每个“神经元”的意义,以及它们是如何组合起来做出特定决策的,是当前可解释人工智能研究的一个重要方向。这方面的研究还包括如何利用对抗学习等技术降低神经网络出错的风险,同时使得神经网络的内部状态变得可以被人类解读。可解释深度神经网络将在本书第5章介绍。
第二,智能体也要有对人类的认知和适应能力,要知道人类在想什么并提供针对性的解释。这样的解释往往需要使用自然语言,通过智能体与人类的多次交互沟通,逐步建立起一种共识来完成。这种共识一方面会大幅度提高人机协作的效率,另一方面要满足人类对智能体决策机制在道德与法规方面的监管要求和强制约束[10,12,13]。本书第7章和第9章将介绍这一层次可解释AI在金融、法律方面的应用案例。
第三,智能体要有发明模型的能力,这个层次的解释,从使用自然语言变成利用因果分析的模型,能够用最小的模型和最少的参数来解释最多的观察现象。在人工智能领域,这种模型通常可以用与或图模型和贝叶斯神经网络的形式来表示,本书第4章和第2章将分别介绍这两个方面的相关研究。本书第3章将介绍基于因果启发的机器学习方法。
2.可解释AI的分类
在图1-4中,按照面向不同解释受众,可解释AI分为以下几类。
(1)面向AI系统开发者的解释。这类解释受众是具有专业AI背景知识的系统开发人员及测试人员。他们需要的是准确和深入的专业解释,来帮助他们完成对AI系统的开发调试及测试任务。具体来说,这些解释需要为专业人员提供技术指导,以帮助他们进一步提升智能体的模型性能,提升安全鲁棒性,减少错误,降低使用风险,并保证算法公平、无歧视。
(2)面向AI使用者和受影响者的解释。这类解释的受众是没有相关专业背景的普通人群。他们关注的焦点是,AI系统的结果如何影响他们自身及客户的利益,并且在出现问题时进一步了解某个决策是如何产生的(即“知其所以然”)。比如,银行客户在申请贷款时,希望了解AI智能体是如何评估贷款风险和计算贷款额度的。值得注意的是,考虑到解释受众的接受能力,这类解释并不需要非常准确和深入。恰恰相反,在解释方式上,需要利用平实的自然语言,以深入浅出的方式简要说明某个决定的决策逻辑。
(3)面向AI系统监管要求的解释。在金融、医疗等重大领域,对人工智能系统应用风险的防范和监管立法,已经在逐步加强和实施。按照现行的条例法规[12,13],整个人工智能系统的开发使用流程,都必须在监管合规的条件下运行。比如,数据收集及模型学习过程是否符合隐私保护及数据治理条例[15],必须要有准确无误的解释及认证。而对违反监管要求的智能体行为,也需要有明确的事故分析,为严格的问责机制提供技术说明[10]。
3.可解释AI的应用领域
可解释AI在各个行业都有广泛的应用前景。在AI决策能够产生重大影响的金融、医疗健康和司法等风险极高的领域,对可解释AI的监管需求尤为强烈。本书第6~10章将分别介绍可解释AI在生物医疗、金融、电商推荐等领域的应用案例,同时结合计算机视觉、自然语言处理等技术说明可解释AI在法律咨询、城市管理、安防、制造等实际应用中的积极作用。表1-1总结了可解释AI在各个领域中,针对不同解释受众所提供的不同类型的解释,以满足应用用户、使用者、监管者和开发者等的不同需求。
表1-1 可解释性AI行业应用中的不同类型解释
1.2.3 解释的范畴
在对智能体决策机制的解释中,人们普遍关心以下几个方面。
1.算法的透明度和简单性(A lgorithm ic Transparency and Simp licity)
随着基于机器学习和深度学习的算法决策系统被广泛应用于网络服务、医疗保健、教育和保险等领域,对于理解算法系统决策过程的需求日趋强烈。通过计量算法的输入特征对于决策的影响,算法的透明度和简单性令使用者得以理解AI算法系统做出的决策及做出该决策的原因,从而更好地了解决策系统的优势与弊端。因此,算法的透明度和简单性使得公共部门和私营组织可以有效地检测该决策系统是否正常且适当的工作,以及是否符合监管要求,从而建立对于决策系统的信任。
2.表达的可解构性(Decomposability)
在众多的AI算法决策系统中,只有部分算法本身是具有可解释性的,比如线性规划算法、决策树算法、朴素贝叶斯算法、K最邻近(KNN)算法等,而绝大部分前沿的深度学习算法本身无法解释其预测值。因此,如何解释这类算法的输出,是当前可解释人工智能的一个重要领域。当算法本身不可解释时,算法的表达可解构性允许我们基于该算法本身内部结构以事后构造可解释模型的方式,提取原决策系统的决策机制及过程,从而揭示不同特征在决策过程中的作用。
3.模型的可担责性(Accountability)
尽管算法的透明度和简单性使得决策者可以更加有效地理解AI算法,模型的可担责性要求算法更加“谨慎”地做出预测,以避免预测结果中可能出现的歧视以及其他预料之外的严重后果,但由于训练数据收集的片面、模型结构和参数设置的局限等原因,在以数据驱动的人工智能算法决策机制中,往往存在算法偏见和算法不可控的潜在风险。比如,谷歌App会错误地将部分黑人标记为大猩猩,Uber自动驾驶汽车在旧金山曾出现闯红灯等具有严重安全隐患的违规操作。因此,具有可担责性的模型需要在做出可解释性预测的同时提出预测结果的正当性,以排除人为因素对预测结果可能造成的影响和严重后果。
4.算法的适用边界(不确定性衡量)
在基于AI算法的决策系统的现实应用中,道德准则、安全考量和应用领域等复杂因素往往难以被数学模型充分地表示,数学优化问题的目标函数难以包含全部的不确定性。因此,如何确定算法对于特定问题的适用性(Applicability),是可解释AI系统面临的一个重要挑战。在现实问题中,出于对成本和道德因素的考量,通常无法直接测试决策系统。因此,决策系统的设计者以及相关领域的专家,需要基于算法的可解释结果确定算法的适用边界,进而达到节约成本、遵循条例法规和规避风险等目的。
5.因果分析和推理
在许多决策系统的案例中,需要衡量输入特征与预测结果之间的因果关系。在这种情况下,基于数据的关联性(Correlation)的人工智能系统难以呈现真实的因果关系(Causality)。人们容易混淆数据的关联性和因果关系,事实上二者并不等价。比如,夏季用电量常常和冷饮销量呈正相关,但它们之间并没有因果关系。因此,在这些实例中,具有适用性的人工智能算法的可解释性需要衡量数据的因果关系。虽然随机对照试验(RCT)可以有效地进行因果分析,但在实践中往往面临着成本过高等问题,因此,如何通过观测数据进行因果分析,成为一个越来越受到关注的研究领域。
6.对黑盒模型的事后解释(Post-hoc Exp lanation)
在许多的可解释AI系统中,人工智能模型的可解释性可分为两类:事前解释(Ante-hoc Explanation)和事后解释(Post-hoc Explanation)。事前解释模型具有内置(本质上)的可解释性,所有的可解释AI算法(白箱模型)都符合事前解释的机制。事后解释为给定的黑盒模型(组)构造解释机制,比如可解释的替代模型(Surrogate Model)。替代模型通过局部或全局近似黑盒模型模拟原模型的解释过程,进而提供了可解释性。
7.对模型表达能力的建模与解释
人工智能算法通过优化目标函数(损失函数)来搜索最优决策。为了有效地使用基于AI算法的决策系统,有必要了解通过训练得到的最优预测是否可以服务于该决策系统设计的初衷,以满足真实世界任务的需求。因此,模型预测结果的可解释性可以有效地检测构造的人工智能模型,以及目标函数是否充分表达了所研究现实问题的复杂性与不确定性。相较于不可解释的决策系统,可解释AI系统提供了更加直观有效的途径,以衡量人工智能模型在现实问题中的表达能力。
1.2.4 解释的评价与度量
可解释AI的根本目的在于让机器获取人类的信任。我们所关注的对于人工智能系统的信任大致可分为两个层次。第一层次是“知人善任”(即对人工智能的智能体能力与可信度的判断):我知道人工智能系统哪些可以做,哪些不能做,什么时候能用人工智能系统,什么时候不可以用。第二层次是“坦诚相待”(即对人工智能的智能体的透明性、公平性与严谨性的分析):我知道人工智能系统对我很忠诚,不会撒谎,不会欺骗,我能够知道它在干什么。那么,我们应当如何从可解释性的角度准确评价人工智能系统并使其获得人类的信任呢?下面将对这个问题进行讨论。
1.对人工智能系统可解释性的衡量
从广义上讲,我们认为的可解释性是一个如图1-5所示的通信过程,机器和用户分别知道一些独特的知识和一些共有的知识,机器有自己的见解,人类也有自己的见解。这个时候机器与人之间需要协作,需要交流,需要知己知彼。在这个过程中,人类可以对机器的可解释性进行评估。
图1-5 基于人机通信沟通的可解释AI评估[16]
解释的必要性在很大程度上也依赖于人类与机器之间共同知识(Common Know ledge)的多少。如果一个人刚刚买了一个机器人,那么这个机器人很可能需要为自己的决策提供翔实的解释。因为买家对于一个自己不熟悉的机器人还没有建立信任,合作也还没有默契。随着相处时间、合作次数的增加,以及信任和默契的建立,解释会变得越来越简单。
因此,人工智能系统的可解释性与人类对该系统的信任程度和系统的可靠性息息相关。而为了能够进一步评估可解释性,就需要定义可靠性与信任性。我们把信任分成合理的正信任(Justif ied Positive Trust,Justif ied PT)、不合理的正信任(Unjustif ied Positive Trust,Unjustif ied PT)、合理的负信任(Justif ied Negative Trust,Justif ied NT)、不合理的负信任(Unjustif ied Negative Trust,Unjustif ied NT)四种。Justif ied PT是我认为你行,结果你真行;Unjustif ied PT是我认为你行,结果你不行;Justif ied NT是我认为你不行,结果你不行;Unjustif ied NT是我认为你不行,结果你行。可靠性就是人类可以准确地预测机器的推理结果的程度,换句话说,一个人工智能系统的合理的正信任与合理的负信任越多,则该人工智能系统的可靠性越高。
图1-6 信任性的定义
2.对解释结果的度量
人们对于解释的评价与度量指的是对于特定的可解释性方法的评测。近年来,为了打开人工智能系统这一黑盒,从而能够信任人工智能系统,人们提出了各种各样的可解释性方法,常见的评测角度包括以下几种。
(1)可解释性方法的敏感度。敏感度是指可解释性方法在受到噪声干扰时,提供的解释结果是否会对噪声敏感。此类可解释性方法可进一步细分为对模型参数加噪声[17]与对输入样本加噪声[18,19]。一般来说,可解释性方法对于模型参数上的噪声敏感度需要相对较高,这表明可解释性方法与模型参数高度相关,而对输入样本上的噪声敏感度需要相对较低,这使得可解释性方法在有输入干扰的情况下也能给出可靠的解释。
(2)可解释性方法的对抗攻击鲁棒性。近年来,深度学习面临的一大挑战是对抗样本的存在,而类似的挑战也同样存在于可解释性领域。针对可解释性的对抗攻击在输入样本上添加特定的扰动,能够在不改变人工智能系统预测结果的情况下改变解释结果[20]。因此,目前的一些评测算法希望量化可解释性方法的对抗攻击鲁棒性[21,22],这有助于人们找出能够抵御对抗攻击的可解释性方法,从而得到更为可靠的解释结果。
(3)可解释性方法的全面性。人们关注的可解释性方法的另一个性质是全面性[21,23],它反映了一个解释结果是否能完全反映人工智能系统全部的信息处理逻辑。某些可解释性方法只能够对系统的一部分进行解释,而另外一些方法则能够对系统整体做出解释。在这种情况下,后者的全面性要好于前者。
(4)可解释性方法的客观性。可解释性方法的客观性(在某些工作中被称为正确性或忠实度)是衡量一个可解释性方法的重要指标[21,23-30]。所谓客观性,指的是可解释性方法是否客观地反映了人工智能系统的处理逻辑,比如解释结果告诉人们系统中的某个变量很重要,而这个变量对于人工智能系统确实很重要,那么这个解释就是客观的。对可解释性方法客观性进行评测,能够帮助人们选择真正可靠的可解释性方法。
(5)解释结果的简单易懂性。评测可解释性方法的另一个重要的角度是解释结果的简单易懂性[19,21,23],即解释结果本身要简单易懂,让人容易理解。解释结果的简单易懂性主要体现在三个方面:首先,我们需要用少数概念解释模型内部的复杂逻辑,而不是用成千上万个大量概念进行解释;其次,我们需要保证这些概念本身的语义是人们能够理解的,而不是人们无法认知的特征;最后,简单易懂性与客观性有时是对立统一的,当一个模型本身的概念很复杂时,追求简单易懂性就变为对真实逻辑的近似,因此,人们需要做好二者的平衡。同时,让黑盒模型尽可能使用精炼可靠的特征表达进行预测,才更容易使解释结果简单易懂。
(6)可解释性方法的互洽性。由于目前有越来越多的可解释性方法涌现,这些方法之间是否互洽也是评测可解释性方法的一个指标,即不同解释性算法的解释结果需要相互印证,不能只是自圆其说。可解释性方法之间的互洽性可以体现在对某个变量重要性的不同解释结果之间相互印证上,也可以是对人工智能系统表达能力的解释,比如对神经网络迁移性或泛化性的不同解释,二者应该是殊途同归的,而不能相互矛盾。
(7)可解释性方法的计算效率。在实际应用中,人们往往也会关注可解释性方法的计算效率[21]。一般来说,人们更希望能够在较短的时间内得到解释结果,然而一些可解释性方法的计算复杂度过高,比如需要NP-hard时间复杂度的Shapley value[31],以及一些通过训练进行解释的方法[32]等,使得它们难以被投入对实时性要求较高的一些应用,如金融业的投资决策(见第7章应用案例)。
表1-2汇总了目前常见的可解释性方法评测维度与相关工作。不同的评测维度关注的是可解释性方法的不同特点,它们之间有时能够互补,有时却会产生矛盾,比如计算效率与客观性可能出现矛盾,即一种效率很高的方法可能并不客观,而足够客观的方法的计算量却很大。所以,人们需要根据自己的实际需要,选择合适的角度对解释结果进行评估,进而选择合适的可解释性方法。
表1-2 常见的可解释性方法评测维度与相关工作