AI算法透明不是必须,黑箱和可解释性可简化为优化问题_算法黑盒透明化-程序员宅基地

原文链接:点击打开链接

摘要: 由于AI算法内部的运作往往是不透明的,AI的黑箱问题和可解释性问题越来越受到关注。《纽约时报》和《连线》最近的两篇文章认为,AI的黑箱并没有那么可怕,我们不需要要求算法必须透明,甚至为了可解释性牺牲AI系统的能力,相反,将其视为一个优化问题更可行。

AI算法对人类生活的影响越来越大,但它们内部的运作往往是不透明的,人们对这种技术的工作方式也愈加感到担忧。MIT科技评论曾经发表一篇题为“人工智能中的黑暗秘密”的文章,警告说:“没有人真正知道先进的机器学习算法是怎样工作的,而这恐将成为一大隐忧。”由于这种不确定性和缺乏问责制,纽约大学AI Now Institute的一份报告建议负责刑事司法、医疗保健、社会福利和教育的公共机构不应该使用AI技术。

输入的数据和答案之间的不可观察的空间通常被称为“黑箱”(black box)——名称来自飞机上强制使用的飞行记录仪“黑匣子”(实际上是橙色的,而非黑色),并且经常在空难事故后用于向调查人员提供有关飞机当时运作情况的数据。在人工智能领域,这个术语描述了AI技术如何在“暗处”运作的景象:我们提供数据、模型和架构,然后计算机给出答案,同时以一种看似不可能的方式继续学习——显然对于我们人类来说,这太难理解了。

黑箱没有什么可怕的

在医疗领域,这个问题尤其被关注。AI被用于区分哪些皮肤病变是癌变,从血液中识别早期癌症,预测心脏疾病,确定人和动物的哪些化合物可以延长寿命,等等。但是,对黑箱的这些担忧是不必要的。AI的透明程度并不亚于医生一直以来的工作方式——在许多情况下,AI甚至是一种进步,它增强了医院的能力,对病人和整个医疗系统都有积极的作用。毕竟,对于新技术来说,AI的黑箱问题并不是一个新问题:人类智能本身就是一个黑箱,而且一直都是

让我们来看一个人类医生做诊断的例子。病人可能会问医生她是如何做出诊断的,医生可能会说出一些她用来得出结论的数据。但她真的能够解释她是如何、以及为什么得出这个结论吗,她从哪些研究中得到哪些具体数据,她从所受的教育或导师那里得到了什么影响,她从自己以及同事的共同经验中得到哪些隐性知识,以及所有这些的结合如何引导她得出那个诊断?当然,她可能会说出引领她往某个特定方向走的某些指示,但这也会有猜测的成分,有跟随直觉的成分。即使没有,我们也仍然不知道有没有什么其他因素是她自己甚至没有意识到的。

如果使用AI进行同样的诊断,我们可以从该患者的所有可用信息中获取数据,以及在不同时间和从其他无数同类患者身上匿名收集的数据,用以做出最有力的基于证据的决策。这是一种与数据直接相关的诊断,而不是基于有限数据的人类直觉,或者相对少的局部患者的诊断经验总结。

但是,我们每天都必须在很多我们并不完全了解的领域做决策——并且通常都非常成功——从预测政策对经济的影响到天气预报,再到我们最初接触大部分科学的方式。我们要么认为这些决策非常简单,要么接受它们过于复杂以至我们无法解决,更不用说完全解释它们了。这就像AI的黑箱:人类的智慧能够针对一个给出的结论进行推理和论证,但无法解释我们得出一个特定结论的复杂、隐含的过程。试想一下一对夫妻因某个明确的原因(例如,不忠)而离婚这个问题——在现实中,有许多完全看不见的、错综复杂的原因、影响和事件共同促成了这一结果。为什么这一对夫妇选择分手,而另一对类似情况的夫妇却没有?即使是处于这些关系中的人也无法完全解释这个问题。这是一个黑箱。

AI的黑箱更多是一个特征,而不是一个bug

具有讽刺意味的是,与人类智能相比,人工智能实际上更加透明。与人类的思维不同,人工智能可以——也应该——被审问和被解释。例如检查和改进模型的能力,揭示深度神经网络中的知识差距,必须要构建的调试工具,以及通过脑机接口增强人类只能的潜在能力,等等,有许多技术可以帮助解释人工智能,而这些解释AI的方式无法用于解释人脑。在这个过程中,我们甚至可以更多地了解人类智能的运作方式。

也许批评者们担忧的真正原因不是我们无法“看到”AI的推理过程,而是当AI变得愈加强大时,人类的心智就变成了限制因素。他们担心的是,在未来,我们需要利用AI去理解AI。在医疗领域以及其他领域,这意味着我们很快就会看到一个新类别的专业人士的出现,他们自己不必去做即时的决策,而是管理一个AI工人去做决策——就像商用飞机的驾驶员在恶劣的天气条件下使用自动驾驶仪降落一样。医生将不再“主导”初始诊断;相反,他们需要确保AI系统对患者的诊断是相关的和易于理解的,并监督AI在何时以及如何提供更多的说明和解释。未来的医生办公室很可能有多名计算机助理,包括医生方面的和病人方面的,以及来自外部的数据输入。

当这种情况成为现实时,显然,所谓的人工智能“黑箱”将更多是一种特征,而不是一个bug——因为它相比人类的大脑更能够理解和解释决策的过程。这并没有否定或忽视对AI进行监督的需求,只是说与其担心黑箱,我们更应该关注机会,从而更好地应对这样一个未来:AI不仅增强人类智能和人类直觉,而且甚至可以启发人之本质。

不要为了可解释性牺牲AI的能力

当前的AI系统可能会发生一些故障,例如使自动驾驶汽车遭遇事故,或在用于司法时对黑人判处相比白人更长的刑期。我们会知道这些,是因为AI已经在这些方面出现了错误。但是,这并不意味着我们应该坚持AI需要解释它在任何情况下如何做决策,包括欧盟的“一般数据保护条例”(GDPR)也如此要求。

要求可解释性听起来不错,但实现它可能需要让AI人为地变蠢。机器学习有如此强大的使用前景,缩减AI的能力可能意味着无法诊断疾病、无法发现气候变化的重要原因,等等。充分利用机器学习的能力意味着必须依赖那些现在无法向人类大脑解释的结果。

机器学习,特别是深度学习,可以将数据分析成数以千计的变量,将它们排列成非常复杂而敏感的加权关系数组,然后通过基于计算机的神经网络反复运行这些数组。要想理解这些运行的结果,例如为什么系统认为有73%的几率患上糖尿病,或者在象棋中走这步棋有84%的几率能导致最终胜利,这就需要理解这些成千上万的变量之间的关系,这些变量是通过大量的神经网络计算得出的。我们的大脑根本无法掌握这么多的信息。

可解释性是工具:我们用这些工具来达成目标。通过机器学习,可解释性能够帮助开发人员debug。可解释性也可以用来判断一个结果是否基于不应该计数的因素(例如性别,种族等,取决于具体情况)来评估责任。但是,我们可以通过其他方法来实现预期的效果,而不用约束机器学习系统的能力。

一个很有前景的工具是优化(optimization)。例如,在20世纪70年代石油危机期间,美国政府决定将限速降至55英里/时,从而优化高速公路。同样,政府也可以决定对自动驾驶汽车进行优化。

AI系统需要对针对某个目的的优化及其结果保持透明,特别是对我们希望它们支持的一些关键值保持透明。但是不一定要求算法是透明的。如果一个系统没有达到它的目标,就需要对它进行调优。如果达到了目标,可解释性就不是必要的。

通过将AI的可解释性问题视为优化问题,我们可以将争论集中在真正重要的问题上:我们想从一个系统中得到什么,我们愿意放弃什么来得到它?


版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_40954115/article/details/79216670

智能推荐

使用nginx解决浏览器跨域问题_nginx不停的xhr-程序员宅基地

文章浏览阅读1k次。通过使用ajax方法跨域请求是浏览器所不允许的,浏览器出于安全考虑是禁止的。警告信息如下:不过jQuery对跨域问题也有解决方案,使用jsonp的方式解决,方法如下:$.ajax({ async:false, url: 'http://www.mysite.com/demo.do', // 跨域URL ty..._nginx不停的xhr

在 Oracle 中配置 extproc 以访问 ST_Geometry-程序员宅基地

文章浏览阅读2k次。关于在 Oracle 中配置 extproc 以访问 ST_Geometry,也就是我们所说的 使用空间SQL 的方法,官方文档链接如下。http://desktop.arcgis.com/zh-cn/arcmap/latest/manage-data/gdbs-in-oracle/configure-oracle-extproc.htm其实简单总结一下,主要就分为以下几个步骤。..._extproc

Linux C++ gbk转为utf-8_linux c++ gbk->utf8-程序员宅基地

文章浏览阅读1.5w次。linux下没有上面的两个函数,需要使用函数 mbstowcs和wcstombsmbstowcs将多字节编码转换为宽字节编码wcstombs将宽字节编码转换为多字节编码这两个函数,转换过程中受到系统编码类型的影响,需要通过设置来设定转换前和转换后的编码类型。通过函数setlocale进行系统编码的设置。linux下输入命名locale -a查看系统支持的编码_linux c++ gbk->utf8

IMP-00009: 导出文件异常结束-程序员宅基地

文章浏览阅读750次。今天准备从生产库向测试库进行数据导入,结果在imp导入的时候遇到“ IMP-00009:导出文件异常结束” 错误,google一下,发现可能有如下原因导致imp的数据太大,没有写buffer和commit两个数据库字符集不同从低版本exp的dmp文件,向高版本imp导出的dmp文件出错传输dmp文件时,文件损坏解决办法:imp时指定..._imp-00009导出文件异常结束

python程序员需要深入掌握的技能_Python用数据说明程序员需要掌握的技能-程序员宅基地

文章浏览阅读143次。当下是一个大数据的时代,各个行业都离不开数据的支持。因此,网络爬虫就应运而生。网络爬虫当下最为火热的是Python,Python开发爬虫相对简单,而且功能库相当完善,力压众多开发语言。本次教程我们爬取前程无忧的招聘信息来分析Python程序员需要掌握那些编程技术。首先在谷歌浏览器打开前程无忧的首页,按F12打开浏览器的开发者工具。浏览器开发者工具是用于捕捉网站的请求信息,通过分析请求信息可以了解请..._初级python程序员能力要求

Spring @Service生成bean名称的规则(当类的名字是以两个或以上的大写字母开头的话,bean的名字会与类名保持一致)_@service beanname-程序员宅基地

文章浏览阅读7.6k次,点赞2次,收藏6次。@Service标注的bean,类名:ABDemoService查看源码后发现,原来是经过一个特殊处理:当类的名字是以两个或以上的大写字母开头的话,bean的名字会与类名保持一致public class AnnotationBeanNameGenerator implements BeanNameGenerator { private static final String C..._@service beanname

随便推点

二叉树的各种创建方法_二叉树的建立-程序员宅基地

文章浏览阅读6.9w次,点赞73次,收藏463次。1.前序创建#include<stdio.h>#include<string.h>#include<stdlib.h>#include<malloc.h>#include<iostream>#include<stack>#include<queue>using namespace std;typed_二叉树的建立

解决asp.net导出excel时中文文件名乱码_asp.net utf8 导出中文字符乱码-程序员宅基地

文章浏览阅读7.1k次。在Asp.net上使用Excel导出功能,如果文件名出现中文,便会以乱码视之。 解决方法: fileName = HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8);_asp.net utf8 导出中文字符乱码

笔记-编译原理-实验一-词法分析器设计_对pl/0作以下修改扩充。增加单词-程序员宅基地

文章浏览阅读2.1k次,点赞4次,收藏23次。第一次实验 词法分析实验报告设计思想词法分析的主要任务是根据文法的词汇表以及对应约定的编码进行一定的识别,找出文件中所有的合法的单词,并给出一定的信息作为最后的结果,用于后续语法分析程序的使用;本实验针对 PL/0 语言 的文法、词汇表编写一个词法分析程序,对于每个单词根据词汇表输出: (单词种类, 单词的值) 二元对。词汇表:种别编码单词符号助记符0beginb..._对pl/0作以下修改扩充。增加单词

android adb shell 权限,android adb shell权限被拒绝-程序员宅基地

文章浏览阅读773次。我在使用adb.exe时遇到了麻烦.我想使用与bash相同的adb.exe shell提示符,所以我决定更改默认的bash二进制文件(当然二进制文件是交叉编译的,一切都很完美)更改bash二进制文件遵循以下顺序> adb remount> adb push bash / system / bin /> adb shell> cd / system / bin> chm..._adb shell mv 权限

投影仪-相机标定_相机-投影仪标定-程序员宅基地

文章浏览阅读6.8k次,点赞12次,收藏125次。1. 单目相机标定引言相机标定已经研究多年,标定的算法可以分为基于摄影测量的标定和自标定。其中,应用最为广泛的还是张正友标定法。这是一种简单灵活、高鲁棒性、低成本的相机标定算法。仅需要一台相机和一块平面标定板构建相机标定系统,在标定过程中,相机拍摄多个角度下(至少两个角度,推荐10~20个角度)的标定板图像(相机和标定板都可以移动),即可对相机的内外参数进行标定。下面介绍张氏标定法(以下也这么称呼)的原理。原理相机模型和单应矩阵相机标定,就是对相机的内外参数进行计算的过程,从而得到物体到图像的投影_相机-投影仪标定

Wayland架构、渲染、硬件支持-程序员宅基地

文章浏览阅读2.2k次。文章目录Wayland 架构Wayland 渲染Wayland的 硬件支持简 述: 翻译一篇关于和 wayland 有关的技术文章, 其英文标题为Wayland Architecture .Wayland 架构若是想要更好的理解 Wayland 架构及其与 X (X11 or X Window System) 结构;一种很好的方法是将事件从输入设备就开始跟踪, 查看期间所有的屏幕上出现的变化。这就是我们现在对 X 的理解。 内核是从一个输入设备中获取一个事件,并通过 evdev 输入_wayland

推荐文章

热门文章

相关标签