信任人工智能关键的一步是“可解释性”!
随着机器学习在许多最近的科学和技术进步中占据一席之地,机器学习模型的可解释性变得越来越重要。
我们被机器学习驱动的应用所包围,我们每天都会受到机器决策的影响。从平凡到拯救生命,我们要求机器学习模型寻找以下问题的答案:
- 我会喜欢什么歌?
- 我可以获得贷款吗?
- 我该雇用谁?
- 我患癌症的几率是多少?
这些以及许多其他问题都是由大多数用户都知之甚少的预测模型来回答的。数据科学家经常强调模型的预测准确性,而不是理解这些预测是如何实现的。通过机器学习,模型就可以实现。
复杂的模型更难理解
一些机器学习模型简单易懂,我们知道改变输入将如何影响预测结果并且可以为每个预测提供理由。然而,随着机器学习和人工智能的最新进展,模型变得非常复杂,包括复杂的深度神经网络和不同模型的集合。我们将这些复杂模型称为黑盒模型。
不幸的是,为黑匣子模型提供非凡预测能力的复杂性也使他们很难理解和信任。黑匣子模型中的算法不会暴露他们的秘密。一般来说,他们没有明确解释他们为什么做出某种预测。它们只给我们一个概率,是不透明的,难以解释。有时存在数千(甚至数百万)模型参数,输入要素和参数之间没有一对一的关系,并且通常使用许多参数的多个模型的组合会影响预测。其中一些还需要数据库。他们需要大量数据才能实现高精度。很难弄清楚他们从这些数据集中学到了什么,以及哪些数据点对结果的影响比其他数据集更多。
由于所有这些原因,很难理解这些技术的过程和结果。我们也很难弄清楚我们是否可以信任这些模型以及是否可以在使用它们时做出公平的决定。
如果他们弄错了什么会怎么样?如果他们还没有准备好部署会发生什么?存在虚假陈述、过度简化或过度拟合的风险。因此,我们在使用它们时需要小心,更好地理解这些模型是如何工作的。
为什么准确性不够
在机器学习中,通过将机器学习模型的输出与来自输入数据集的已知实际值进行比较来测量精度。
通过记忆数据集中不重要的特征或模式,模型可以实现高精度。如果输入数据集存在偏差,这也会影响您的模型。此外,训练环境中的数据可能不是部署模型的生产环境中的数据的良好表示。即使它最初具有足够的代表性,如果我们认为生产环境中的数据不是静止的,那么它可能也会很快变得过时。
因此,我们不能仅依赖于针对特定数据集实现的预测准确度。我们需要了解更多,需要揭开黑盒机器学习模型的神秘面纱,提高透明度和可解释性,使它们更值得信赖和可靠。
什么是可解释性?
可解释性意味着为最终用户提供特定决策或过程的解释。更具体地说,它需要:
- 了解影响结果的主要任务
- 解释算法做出的决策
- 找出算法学习的模式/规则/特征
- 对结果持批评态度
- 探索算法的未知未知数
它不是要了解模型如何适用于训练数据中每个数据点的每个细节。
为什么我们需要可解释性?
由于各种原因,可解释性对于不同的人很重要:
数据科学家希望以高精度构建模型。他们希望了解细节,以了解他们如何选择最佳模型并改进该模型。他们还希望从模型中获得洞察力,以便他们可以将发现传达给目标受众。
最终用户想知道模型给出某种预测的原因。他们想知道他们将如何受这些决定的影响。他们想知道他们是否得到公平对待以及他们是否需要反对任何决定,他们希望在网上购物或点击网络上的广告时获得一定的信任度。
监管机构和立法者希望使该系统公平透明,他们想要保护消费者。随着机器学习算法的不可避免的兴起,他们越来越关注模型所做出的决策。
所有这些用户都想从黑盒模型中获得类似的东西。他们希望他们透明,值得信赖并且可以解释。
- 透明:系统可以解释它是如何工作的和/或它为什么给出某些预测
- 值得信赖:系统可以在没有连续控制的情况下处理现实世界中的不同场景。
- 可解释:系统可以传达有关其内部工作的有用信息,它所学习的模式以及它给出的结果。
在典型的机器学习管道中,我们可以控制用于训练模型的数据集,我们可以控制我们使用的模型,并且我们可以控制如何评估和部署这些模型。
何时需要可解释性?
如果您需要可解释性,首先您需要问问自己为什么需要它。在这个过程的哪个阶段需要可解释性?可能没有必要了解模型如何为每个应用程序进行预测。但是,如果这些预测用于高风险决策,您可能需要知道它。在定义目标之后,您应该关注在流程的哪个阶段需要哪些技术:
预建模的可解释性(模型输入的可解释性):在开始构建模型之前,了解数据集非常重要。您可以使用不同的探索性数据分析和可视化技术来更好地理解您的数据集。这可以包括总结数据集的主要特征,查找数据集中的代表性或关键点,以及从数据集中查找相关功能。在全面了解数据集之后,您需要考虑将在建模中使用哪些功能。如果要在建模后解释输入- 输出关系,则需要从有意义的功能开始。虽然高度工程化的功能(例如从t-sne,随机投影等获得的功能)可以提高模型的准确性,但是当您使用模型时,它们将无法解释。
建模的可解释性:我们可以根据模型的简单性、透明度和可解释性将模型分类为白盒(透明)和黑盒(不透明)模型。
白盒(透明)模型:决策树、规则列表和回归算法通常在此类别中考虑。与少数预测因子一起使用时,这些模型很容易理解。他们使用可解释的转换,让您更直观地了解事物的运作方式,这有助于您了解模型中正在发生的事情。您可以向技术人员解释它们。但是,当然,如果你有数百个功能并且构建了一个非常深入的大型决策树,那么事情仍然会变得复杂和无法解释。
黑匣子(不透明)模型:深度神经网络、随机森林和梯度增强机器可以在此类别中考虑。他们通常使用许多预测变量和复杂的变换,其中一些有很多参数。通常很难想象和理解这些模型中发生的事情。他们更难与目标受众沟通。但是,它们的预测精度可以比其他模型好得多。该领域最近的研究希望使这些模型更加透明。其中一些研究包括作为训练过程一部分的技术。除了预测之外还生成解释是提高这些模型透明度的一种方法。另一个改进是在训练过程之后包括特征的可视化。
建模后的可解释性(事后可解释性):模型预测中的可解释性有助于我们检查输入要素和输出预测之间的动态。一些后期建模活动是模型特定的,而其他活动是与模型无关的。在此阶段添加可解释性有助于我们了解模型的最重要特征,这些特征如何影响预测,每个特征如何有助于预测以及模型对某些特征的敏感程度。除了模型特定技术(如随机森林的变量重要性输出)之外,还存在模型不可知技术,如部分依赖性(PD)图,个体条件期望(ICE)图和局部可解释模型- 不可知解释(LIME)。
来源:https://www.kdnuggets.com/2018/11/interpretability-trust-ai-machine-learning.html