原创 Been Kim
本文基于谷歌大脑团队成员Been Kim于2022 ICLR 的主题演讲。
目前我们还不了解人工智能所能做的一切。
人工智能在许多场景得到应用,比如从序列中预测蛋白质的结构与功能(如 AlphaFold 和ProtENN),语义理解与语言生成(如 GPT-3 和 PaLM)等等。
人工智能也被人们用来辅助决策。
举个例子,人工智能被用来帮助医生对患者进行分类,并在医生不在时提供辅助诊断。正如谷歌健康的自动视网膜疾病评估系统(ARDA)那样,使用人工智能帮助医护人员检测糖尿病引起的视网膜病变。很明显,在许多任务中我们都不得不与人工智能展开紧密合作。许多邻域内的人才正联手实现这一点,并取得了巨大的成功。
然后,人工智能有时候会做一些我们无法理解的惊人的事情。
例如,在2016年,AlphaGo 以著名的“move 37”击败了世界围棋冠军 LeeSedol。围棋九段评论员称“这是非常奇怪的一步棋,并将以此改变比赛的进程”。许多围棋选手至今仍对此耿耿于怀,称之为“超出所有人理解范围的一步”。AlphaGo 是如何走出这一看似奇怪但却决定了命运的一步?人工智能仍在继续变得更复杂,更强大,更智能。
如果我们能通过提问的方式,来了解人工智能是如何做出预测的那不是很好吗?不幸的是,目前我们还没有合适的语言来和人工智能交流。
一种与人工智能交流的语言
人工智能将做出愈发复杂和重要的决策,但是他们可能会在违背我们价值观的不同的标准上做出这些决策。
因此,我们需要一种与人工智能对话的语言,以实现人工智能能在符合社会准则的基础上做出决策。
Brian Christian 的书《The alignment problem》对此进行了很有意义的讨论,书中指出,保持一致的问题的本质是意图(我们追求的目标)和结果(我们输入进人工智能的目标)之间的脱节。
我很喜欢这本书,不仅仅是因为它引用了一些我的成果,还因为 Briam 一阵见血地指出:这门语言的最终目标是让人工智能和我们的价值观保持一直。就好比我们刚接触一个新同事的时候,为了能更好地与他合作,我们都会通过言语交流来了解他的工作方式,长处和短处。我们和人工智能的工作关系也应该如此。
这种保持一致的问题来自于表征空间的差异。
直观的说,人类所知道的事物的空间(即表征空间,对人类有意义的东西)和机器所了解的不一样,可能会有一些重叠,但很有可能大部分情况下,我们的了解和机器的了解相互独立。
例如,每种语言中的每个句子都可以被视为空间中的一个点,我可以说“猫很大”,你就会明白我的意思,然而“Go move 37”可能只存在于那些机器才能懂的表征空间。理想情况下,这两种空间会有一一对应的关系,但是这过于理想了。
这甚至在两个人之间都不会存在。表征空间的错位使得向机器表达和传达我们的价值观困难重重。
这种人工智能语言的目的在于,通过于机器的对话和协作来扩展我们的认知,从而增加两种表征空间的重叠区域。了解更多关于机器的知识将使我们能够制造出更符合我们期待的机器。
这种语言可能一点也不像人类的语言。它可能没有名词,动词或者句子,但它可能有一些能使我们与机器交互的元素或者媒介,比如图像,像素或者概念。
由于我们改变了语言需要精确到的方面,我们需要开发多种语言,每种语言都需针对要实现的目标。
比如,如果我们正在一同建造一座大桥,那么正确的安全标准就很重要。
如果我们正在协作撰写一份外交文件,那么在国际语境中了解一个词的确切含义则至关重要。当然,语言的好坏取决于它协助达到目标的程度。人类已经为了不同的目标多次开发了不同的语言。比如我们发明数学语言来描述复杂且精确的理论,我们发明编程语言来传达指令以供计算机执行。
这种语言的两个关键之处
尽管我们还不清楚这种语言会是什么样子,但我们知道它应该满足如下两个条件:
1.就像人类语言能传达人们的思想一样,这种语言要能反映机器的本质。
2.这种语言要能扩展我们已知的知识,比如帮助我们理解 AlphaGo 的“move 37”。
1、反映机器的本质
AlphaGo 的“move 37”是众多机器决策的例子之一,这些决策超出了我们的表征空间,这表明我们已经无法将机器分解为若干部分并完全理解每一个部分。
这一点同样在机器行为学中得到了很好的阐释,且现已成为一个科研对象:我们必须同时在其独立和与人类交互的两种情况下同时研究它们的行为。
我在 ICLR 的主题演讲中介绍了我在这方面的一些工作,包括:
(1)孤立地研究机器
-Gestalt 知觉:
研究机器与人类的知觉差异:机器的知觉是否会出现 Gestalt 现象?是的,但是只有当他们学会如何概括的时候[ https://arxiv.org/abs/1903.01069]。
-人机感知:
在当前的解释方法中,哪些信息只有机器才能看到?又有哪些信息只有人类才能看到呢?有些人类看不到的信息在机器上很容易看到,反之亦然。这项工作的意义不仅局限于科学研究,还在于我们应该如何应用这些解释[https://openreview.net/forum?id=SWlpXB_bWc]。
(2)与人交互的情况下研究机器
-不完美的解释:
哪种解释在质量不佳的情况下仍有益处?
基于子目标的解释(展示森林与树木)可以帮助人们更好地执行复杂的规划任务,即使这些解释在部署的时候并不是完美的。如果这些解释仅用来训练人来(而不是用于部署),那么它们可以与完美解释一样好[https://arxiv.org/abs/2201.04204]。
-调试:
目前的一系列解释可以帮助完成哪些具体任务?
目前的解释似乎对机器学习中大多数常见的调试问题没有帮助(例如,测试时面对的训练数据分布之外的数据,训练时的标签错误)。这些都有可能使我们看到虚假的相关性,但前提是你得怀疑这种相关性,并积极地测试它们[https://arxiv.org/abs/2011.05429]。
2、扩展人类的知识
我认为这是人工智能领域的下一个重大突破口:学习以前人类不知道的新表征和概念。
通过扩展我们的表征空间以形成新的见解,不仅能在效果方面取得重大提升,还能帮助我们从不同的视角看待问题——无论是学术概念上的问题还是复杂的预测问题。很自然,学习新知识是很困难的过程,我们需要一场能在人和机器之间交互的对话。
我们在这个议题上的工作如下:
1、TCAV 及其他相关:使用高级人类概念进行解释的通用工具[https://arxiv.org/abs/1711.11279],通过发现新的概念来扩展我们的知识[https://arxiv.org/abs/2105.15164]。
2、AlphaZero:研究一种特殊的超人象棋机器:AlphaZero。AlphaZero 确实包含了人类象棋的概念,但在整个训练过程中,它们的启动与演变方式存在着许多的差异[https://arxiv.org/abs/2111.09259]。
3、概念相机:通过使用机器来激发我们的创造力。利用我们和机器看待世界的方式的差异,从不同的角度创造艺术[http://beenkim.github.io/conceptcam]。
##这种语言与现有进展之间的关系
在向人工智能传达我们的意图或者理解人工智能方面,我们已经做出了很多努力,在本节中,我们将努力总结这些努力与针对这种语言的努力之间的区别。
1、努力1:部署时目标的功能及测试
制定机器优化的目标函数或者在部署时进行测试是我们当前与机器通信的方式,这都很重要,但是还远远不够。
我们目前还不知道目标函数或者测试集带来的全部影响,因为我们只能了解我们表征空间中的内容。可能还有更大的部分我们根本看不到。
换句话说,我们不知道该测试些什么。
假设我们在模型中添加了一项公平性指标,我们这样做的初衷是好的,但是这一指标最终可能会在我们意识不到的情况下歧视其他群体,产生数据偏见。更糟糕的是,直到出现了问题我们才能意识到这种偏见。我们也不能仅仅收集和优化所有的指标,因为一些公平性指标在数学上被证明是不兼容的。
所以你不能拥有一切,你必须做出抉择。
当我们知道要测试什么时,单独的测试有时候已经足够好了。就像我们上飞机时我们并不需要了解整架飞机和所有的情况,因为有足够的经验和证据表明我们很可能在这次飞行中幸存。
但是对于人工智能,我们还没有足够的经验和证据,甚至不知道要测试些什么。
即使我们知道要测试什么,完美的测试就算不是不可能,也会十分困难。就像软件工程中 100% 的测试覆盖率一样。
在那之前,我们必须要做些什么。
2、努力2:可解释性
知道机器在“怎样做某事”被称为可解释性。
可解释性是机器学习研究的一个子领域,旨在构建我们与人工智能的关系,使后者具备可观性(例如,“机器为什么要预测X”)和可控性(例如,“该怎么调整输入,以调整预测X”)。为解释性开发的工具很有用,但它们需要了解这些机器的本质。
让我们来看一个例子,它说明了遗漏完整信息可能会对可解释性产生的影响。
在图中,最中间和最右边的图像是显著性图的示例,这是一种常用的解释方法。对于图像分类模型,每个像素都被分配一个权重数字,表明他对预测的重要性。这两张图片都有意义,因为它们似乎都突出了鸟在图片中的位置。
然而,这两张图片中的一张是完全未经过训练的,你能猜出是哪一张吗?事实是我们很难回答这个问题,这表明,应该用来解释预测的说明,似乎与所说的预测无关。两个网络基于不同的逻辑做出了根本不同的预测决策。(答案是最右边的图片)。
我们的社区(包括我自己)被这种现象蒙蔽了双眼,部分原因是认知偏见。这些解释对我们来说很有意义!我们花了很多年才偶然发现了这种现象。
尽管做了大量的后续工作,我们仍然没有完全理解这一现象。这是因为信息在那里,但是我们就是看不到吗?(可能是因为我们使用了错误的媒介——像素?)还是这些方法完全错了?然而,这些方法又被证明对某些任务是有用的…
这项工作指出的是,我们对这些解释所显示的内容以及它们可以用于什么和不可以用于什么任务的基本理解存在巨大差距。
请注意,这并不意味着我们必须停止所有的工业界工作和首先关注基础(科学)。人类一直在同时追求它们(例如在生物学领域)。有时,其中一个发生在另一个之前,通常会产生协同效应。我们将采用类似的方法来开发一种人工智能语言。
3、努力3:我们只是专注于实现更高的准确性
这似乎很令人惊讶,但我听到一些人说“我们只是让人工智能做他能做的”
他们说我们不需要可解释性,并且不应该无条件地批评它而不提供其他的选择。我把这归为过度的自信和无知;有些人认为人工智能是可以控制的,因为是我们创造了人工智能(例如,我们知道神经网络所有的权重信息)。
应该清楚的是,这种过度的自信是危险的:它给了我们虚假的解脱,更重要的是给了我们一个借口不去深入研究这些机器“真正”在做什么。在现实世界中,这些机器的真正功能可能令人惊讶。
例如,虚假的相关性是人类事先没有意识到的。这种过度自信和无知也可以给人们一个借口,说“我没有工具来调查那起灾难性的失败案例”。
总结
人工智能不仅仅是一种工具。我们将受到它的影响,反过来其也将影响下一代人工智能。
如果没有一种语言与它进行有意义的交流,我们就无法理解它的决定,因此也就不知道我们在创造什么。建立一种与人工智能交流的语言并不容易,但坦率地说,这是控制我们想要的生活的唯一途径。语言塑造我们的思维方式。我们有机会塑造自己的思维和未来的机器。
|