自 2016 年 AlphaGo 在围棋中击败人类以来,DeepMind 的科学家一直致力于探索强大的通用人工智能算法,Oriol Vinyals 就是其中之一。
Vinyals 于 2016 年加入 DeepMind,目前任首席科学家,领导深度学习小组。此前他曾在 Google Brain 工作。他的博士就读于加州大学伯克利分校,曾获得 2016 年 MIT TR35 创新者奖。他在 seq2seq、知识蒸馏以及 TensorFlow 方面的研究成果,已经被应用于谷歌翻译、文转到语音和语音识别等产品中。他的文章被引用超过 16 万次。
最近,Oriol Vinyals 做客 Lex Fridman 的播客节目,谈论了他对深度学习、通才智能体 Gato、元学习、神经网络、AI 意识等方向的一些看法。Vinyals 认为:
- 扩大模型规模能够增强智能体多模态之间的协同作用,模块化的模型则是有效扩大模型规模的一种方式,通过权重复用可以不必从头训练模型;
- 未来的元学习将更注重智能体与环境的交互学习;
- Transformer 内置的归纳性注意偏差使得它比其他神经网络架构更强大;
- 通用的、大规模的模型或智能体在技术上的成功关键是:数据工程、部署工程和建立基准。
- 现有的 AI 模型离产生意识还很遥远,生物大脑远比计算大脑更复杂,人类的思维运作方式可以启发算法层面的研究;
- 未来 AI 系统有可能具备与人类同等水平的智能,但是否能超越人类水平并不确定。
下面 AI 科技评论对访谈内容作了不改变原意的编辑整理:
1、通用算法
Fridman:在我们有生之年能否建立一个 AI 系统、在这次谈话中取代我们作为采访者或被采访者?
Vinyals:我想问的是,我们想要实现那样的愿望吗?我很开心看到我们正在使用非常强大的模型,并觉得它们跟我们越来越接近,但问题是,如果没有了谈话中人性化的一面,它还会是一个有趣的人工制品吗?可能不会。例如,在星际争霸中,我们可以创建智能体来玩游戏、自我对抗,但最终人们关心的是,当竞争对手是人类时,智能体要如何做。
所以毫无疑问,有了 AI,我们会更强大。比如你可以从 AI 系统中筛选出一些非常有趣的问题,在语言领域,我们有时将其称为“Terry Picking”。同样,如果我现在有这样的工具,你问一个有趣的问题,特定系统会选择一些单词来组成答案,但这并不是很让我兴奋。
Fridman:如果引起人的兴奋本身就是这个系统的目标函数的一部分呢?
Vinyals:在游戏中,当你设计算法时,你可以将获胜作为目标写入奖励函数。但如果你能衡量它并针对它进行优化,那还有什么令人兴奋的呢?这可能就是我们玩电子游戏、上网互动、观看猫咪视频的原因。的确,对强化学习中使用的那些明显的奖励函数之外的奖励进行建模,是非常有趣的。
另外,AI 在特定方面确实取得了一些关键进展,例如,我们可以根据互联网上的接受度来评估对话或信息是否可信。然后,如果可以自动化地学习一个函数,你就能更轻松地进行优化,然后进行对话以优化一些不太显眼的信息,如兴奋度。构建一个至少一方面完全由兴奋奖励函数驱动的系统会很有趣。
但显然,系统仍然包含很多来自系统构建者的人性元素,而且为兴奋度打上的标签是来自于我们,很难去计算兴奋度。据我了解,还没有人做这样的事情。
Fridman:也许系统还需要有强烈的身份认同感。它会有记忆,能够讲述它过去的故事。它可以从有争议的观点中学习,因为互联网上有很多关于人们持有什么观点的数据,以及与某种观点相关联的兴奋度。系统可以从中创建一些东西,不再是优化语法和真实度,而是优化句子在人性上的一致性。
Vinyals:从神经网络、人工智能的构建者角度来看,通常你会尝试将你讨论过的许多有趣的主题映射到基准测试中,然后也映射到关于这些系统当前如何被构建、如何学习、从什么数据中学习、学习什么的实际架构中,这里我们要谈的是数学函数的权重。
就当前游戏的发展状态而言,我们需要什么才能达到这些人生体验,比如恐惧?在语言方面,目前我们几乎看不到进步,因为我们现在做的是,获取大量的在线人类互动,然后提取序列,包括一连串的单词、字母、图像、声音、模态,接着再试着学习一个函数,通过神经网络来将看到这些序列的可能性加以最大化。
我们目前训练这些模型的一些方式,有希望能够发展出你所说的那种能力。其中之一是智能体或者模型的生命周期,模型从离线数据中学习到这些,所以它只是被动地进行观察和最大化。就像在一个山地景观中,在到处都是人类交互数据的地方,提高权重;在没有数据的地方,降低权重。模型通常不会体验到自身,它们只是数据的被动观察者。然后,我们让它们在我们与之交互时生成数据,但这极大地限制了它们可能正在优化或进一步优化权重时实际经历到的体验。 但我们甚至还没有到达这样的阶段。
在 AlphaGo、SlphaStar中,我们部署模型,让它与人类比赛,或与人类互动(比如语言模型),以此来训练模型。它们并不是持续训练的,它们没有根据从数据中学到的权重来学习,它们不会持续改进自身。
但如果你考虑一下神经网络,这是可以理解的,它们可能无法从严格意义上的权重变化中学习,这与神经元如何互连以及我们在一生中如何学习有关。但是,当你与这些系统交谈时,对话的上下文确实存在于它们的内存中。这就像你启动一台电脑,它的硬盘里有很多信息,您也可以访问包含所有信息的互联网。同时也有内存,我们把它看作是智能体的指望所在。
目前存储非常有限,我们现在谈论的是我们所拥有的大约 2,000 个单词,超出这个数字后,我们就开始遗忘我们所见到,所以一些短期的连贯性是存在的。如果智能体具有连贯性,那么如果你问「你的名字是什么」,它就可以记住这句话,但它可能会遗忘超出 2,000 个单词的上下文。
所以从技术上讲,人们对于深度学习的期望有这样一种限制。但我们希望基准测试和技术能够拥有不断积累的记忆体验,离线学习的方式显然很强大。我们已经取得了很大的进展,我们已经再次看到了这些模仿的力量或者让这些关于世界的基本知识被纳入权重的互联网规模,但是经验是很缺乏的。
事实上,当我们与系统交谈时,我们甚至都不训练它们,除非它们的内存受到影响。这是动态的部分,但它们的学习方式与你我从出生就开始的学习方式不同。所以关于你的问题,我这里提到的一点就是,记忆和体验与仅仅观察和学习世界的知识不同。
我看到的第二个问题是,我们是从头开始训练所有这些模型。好像我们不从头开始训练模型、从最开始的地方找到灵感,就会有什么东西缺失了一样。每隔几个月,就应该有某种方式可以让我们像培养一个物种一样训练模型,而宇宙中的许多其他元素都是从以前的迭代中构建的。从纯粹的神经网络的角度来看,很难不丢弃以前的权重,我们是从数据中学习并更新这些权重。所以感觉好像少了点什么,我们最终可能会找到它,但它会是什么样子还不是很清楚。
Fridman:从头开始训练似乎是一种浪费,每次我们解决围棋和国际象棋、星际争霸、蛋白质折叠问题时,肯定有一些方法可以重复使用权重,因为我们扩展了巨大的新神经网络数据库。所以我们如何重复使用权重?如何学习提取什么是可泛化的以及如何摒弃其他无用的东西?如何更好地初始化权重?
Vinyals:深度学习的核心有一个绝妙的想法,那就是单个算法解决所有任务。随着越来越多的基准的出现,这个基本原则已经被证明是不可能的事情。也就是说,你有一个空白的计算大脑一样的初始化神经网络,然后你在监督学习中喂给它更多东西。
理想情况是,输入什么样的期望,输出就应该什么样。比如图像分类,可能是从 1000 个类别中选出一个,这就是图像网络。许多问题都可以通过这种方式映射出来。还应该有一种通用的办法,对于任何给定的任务,你都可以不做很多改变、不加思考就能使用,我认为这是深度学习研究的核心。
我们还没有找到这个办法,但如果人们能发现更少的技巧(一种通用算法)来解决重要问题,那将很令人兴奋。在算法层面上,我们已经有了一些通用的东西,就是在大量数据上训练出非常强大的神经网络模型的公式。
而在很多情况下,你需要考虑一些实际问题的特殊性。蛋白质折叠问题很重要,已经有一些基本的方法,比如 Transformer 模型、图神经网络、来自 NLP 的见解(如 BERT),以及知识蒸馏。在这个公式中,我们还需要找到一些蛋白质折叠问题所特有的东西,这非常重要,我们应该解决它,有可能在这个问题中学到的知识将应用到深度学习研究者的下一个迭代中。
也许在过去的 23 年里,在元学习这个领域,通用算法已经有了一些进展,主要是产生自语言领域的GPT-3。这个模型只训练一次,而且它并不局限于翻译语言或只知道根系一个句子的情感,这些实际上可以通过提示来教给它,提示本质上是给它们展示更多例子。我们是通过语言来进行提示的,语言本身是我们互相学习的很自然的方式。也许它会先问我一些问题,然后我告诉它应该做这个新任务。你不需要从头开始重新训练它。我们已经通过小样本学习看到了一些神奇的时刻,在只有语言的模态中用语言进行提示。
在过去两年里,我们看到这扩展到语言之外的其他模态,添加了视觉、行动和游戏,并取得了很大的进步。这可能是实现单一模型的一个方式。问题是这种模型很难增加权重或容量,但它的确很强大。
目前的进展出现在基于文本的任务或者视觉风格分类的任务中,但应该有更多的突破。我们有一个很好的基线,我们想要基准向通用人工智能发展,整个社区正在向这个方向靠拢,这很好。让我兴奋的是,深度学习的下一步是如何让这些模型更强大?如何训练它们?如果它们必须进化,如何「培育」它们?当你教它任务时,它们应该改变权重吗?还有很多问题需要回答。
2、通才智能体 Gato
Fridman:你能解释一下你这条推特中的“Meow”和猫的表情吗?以及 Gato 是什么?它是如何工作的?涉及的是哪种神经网络?如何训练?
Vinyals:首先,Gato 这个名字跟其他 DeepMind 发布的一系列模型一样,是以动物的名字命名。大序列模型刚开始只有语言,但我们正在扩展到其他模态。Gopher(囊地鼠)、Chinchilla(南美栗鼠/龙猫) 这些都是纯语言模型,最近我们还发布了涵盖视觉的 Flamingo(火烈鸟)。Gato 则添加了视觉和动作模态,像上、下、左、右这样的离散动作,可以很自然由词语、映射到强大的语言序列模型中。
在发布 Gato 之前,我们讨论了我们应该选择哪种动物来命名,我想主要考虑的是 general agent(通用智能体),这是 Gato 所特有的属性,“gato”在西班牙语中是“猫”的意思。
Gato 的基本原理与许多其他工作并没有什么不同。它是一个 Transformer 模型,一种循环的神经网络,涵盖多种模态,包括视觉、语言、动作。训练时的目标是它能够预测序列中的下一个是什么,如果用来训练的是动作序列,那么就是预测下一个动作是什么。字符序列、图像序列也是类似。我们把它们都看作是字节,模型的任务是预测下一个字节是什么,然后你可以将这个字节理解为一个动作,并在游戏中使用这个动作;你也可以将其理解为一个词,并在与系统的对话中把这个词写下来。
Gato 的输入包括图像、文本、视频、动作,以及一些来自机器人的感知传感器,因为机器人也是训练内容之一。它输出的是文字和动作,它不输出图像,我们目前是设计了这样的输出形式,所以我说 Gato 是一个开始,因为还有更多的工作要做。本质上,Gato 是这样一个大脑,你给它任何序列的观察和模态,它会输出序列的下一步。然后你开始你进入下一个并继续预测下一个,以此类推。
现在它不仅仅是一个语言模型,你可以像和 Chinchilla、Flamingo 聊天一样跟 Gato 聊天,但它同时是个智能体,它在各种各样的数据集上被训练成是通用的,而不只是擅长星际争霸、雅达利游戏或者围棋。
Fridman:在动作模态上,什么样的模型能称之为「智能体」?
Vinyals:在我看来,智能体实际上是在一个环境中采取行动的能力。它对环境给出一个动作的反应,环境会返回一个新的观察,然后它会产生下一个动作。
我们训练 Gato 的方法是提取观察数据集,是一种大规模的模仿学习算法,比如训练它预测数据集中的下一个词是什么。我们有人们在网页上的文字和聊天数据集。
DeepMind 对强化学习和在不同环境中工作的学习智能体很感兴趣。我们开发了一个数据集,记录智能体的经验轨迹。我们训练的其他智能体都是为了一个单一的目标,比如控制一个三维游戏环境和导航迷宫,我们会把一个智能体与环境的交互所获得的经验加入到数据集里。
训练 Gato 时,我们把单词、智能体与环境的交互等数据都混合在一起进行训练,这是 Gato 的「通用」之所在,对于不同的模态和任务,它都只有单个的「大脑」,而且与近年来大部分神经网络相比,它并没有那么大,只有 10 亿参数。
尽管规模小,但它的训练数据集非常有挑战性和多样化,不仅包含互联网数据,还包含智能体与不同环境的交互经验。
原则上,Gato 能够控制任何环境,尤其是被训练过的电子游戏、各种机器人任务等环境。但它不会做得比教它的老师更好,规模仍然是很重要的,Gato 的规模相对还比较小,所以它是个开始,扩大规模可能会增强各种模态之间的协同作用。而且我相信会有一些新的研究或准备数据的方法,比如我们需要让模型清楚它在玩雅达利游戏时不只是考虑上和下的动作,在看到屏幕开始玩游戏之前,智能体需要一定的背景,可以用文字告诉它「我给你展示的是一整个序列,你要开始玩这个游戏了」。所以文字可能是增强数据的一个办法。
Fridman:如何对文本、图像、游戏动作、机器人任务做 tokenization?
Vinyals:好问题。tokenization 是让所有数据成为序列的一个起点,这就像我们把所有东西都分解成这些拼图块,然后就可以模拟出拼图的样子。当你把它们排成一行时,就成了一个序列。Gato 使用的是目前标准的文本 tokenization 技术,我们通过常用的子字符串来对文本进行 tokenization ,比如“ing”是英语中一个常用的子字符串,所以它可以作为一个 token。
Fridman:一个单词需要多少个 token?
Vinyals:对于一个英语单词,目前的 tokenization 粒度一般是 2~5 个符号,比字母大,比单词小。
Fridman:你尝试过对 emojis 做 tokenization 吗?
Vinyals:emojis 实际上只是字母的序列。
Fridman:emojis 是图像还是文本?
Vinyals:实际上可以将 emojis 映射为字符序列,所以你可以给模型输入 emojis,它也会输出 emojis。在 Gato 中,我们处理图像的方式是把图像压缩为不同强度的像素,从而获得一个非常长的像素序列。
Fridman:所以这里面不涉及语义?你不需要理解关于图像的任何东西?
Vinyals:对,在这里只使用了压缩的概念。在 tokenization 层面,我们做的就是找到共同的模式来压缩图像。
Fridman:视觉信息比如颜色确实能捕捉到图像意义方面的东西,而不只是一些统计数据。
Vinyals:在机器学习中,处理图像的方法更多是由数据驱动的。我们只是使用图像的统计数据,然后对它们进行量化。常见的子字符串被定位成一个 token,图像也是类似,但它们之间没有联系。如果把 token 看作是整数,假设文本有 10000 个 token,从 1 到 10000,它们代表了我们会看到的所有语言和单词。
图像是另一个整数集合,从 10001 到20000,二者是完全独立的。连接它们的是数据,在数据集中,图片的标题会告诉图像内容。模型需要预测从文本到像素,二者之间的关联随着算法的学习而发生。除了单词、图像,我们还可以把整数分配给动作,将其离散化,用类似的想法把动作压缩成 token。
这就是我们现在把所有空间类型映射到整数序列的方法,它们各自占据的空间不同,连接它们的是学习算法。
Fridman:你之前提到过,很难扩大规模,这是什么意思?有些涌现是有规模上的门槛的,为什么很难扩大类似于 Gato 这样的网络?
Vinyals:如果你对 Gato 网络进行再训练,扩大规模并不难。关键是我们现在有10亿个参数,我们是否可以使用同样的权重来把它扩展成一个更大的大脑?这是非常困难的。所以在软件工程中有模块化的概念,已经有一些利用模块化的研究。Flamingo 不处理动作,但它处理图像很强大,这些项目之间的任务是不同的、模块化的。
我们在 Flamingo 模型中完美地实现了模块化,我们采用了纯语言模型 Chinchilla 的权重,然后冻结这些权重,在模型的正确位置接上一些新的神经网络。你需要研究如何在不破坏其他功能的情况下添加别的功能。
我们创建了一个小的子网络,它不是随机初始化的,而是通过自我监督来学习。然后我们用数据集把视觉和语言这两种模态联系起来。我们冻结了网络中最大的部分,然后从头在训练顶部添加了一些参数。然后 Flamingo 就出现了,它输入的是文本和图像,输出的是文本。你可以教它新的视觉任务,它所做的事情超出了数据集本身提供的功能,但它利用了许多从 Chinchilla 那里获得的语言知识。
这种模块化的关键思想是,我们取一个冻结的大脑,给它添加一个新的功能。在某种程度上,你可以看到,即使是在 DeepMind,我们也有 Flamingo 这种折衷主义,它可以更合理地利用规模,而不需要从头再训练一个系统。
而 Gato 尽管也使用了相同的数据集,但它是从头训练的。所以我想社区面临的一个大问题是,我们应该从头开始训练,还是应该接受模块化?作为一种扩大规模的方式,模块化非常有效。
3、元学习将包含更多交互
Fridman:Gato 出现之后,我们能否重新定义「元学习」这个术语?你认为元学习是什么?5年或10年之后,元学习会是扩展后的 Gato 的样子吗?
Vinyals:也许向后看而不是向前看能提供一个好视角。当我们在 2019 年谈论元学习时,它的含义主要是经历了 GPT-3 革命而改变的。当时的基准测试是关于学习对象身份的能力,所以非常适用于视觉和物体分类。我们学习的不仅仅是 ImageNet 告诉我们要学习的 1000 个类别,我们还要学习在与模型交互时可以被定义的对象类别。
模型的进化过程很有趣。刚开始,我们有一个特殊的语言,它是一个小的数据集,我们提示模型有一个新的分类任务。有了机器学习数据集的形式的提示,就得到了一个系统,可以预测或分类我们定义的物体。最后,语言模型成为了一个学习者。GPT-3 表明,我们可以关注对象分类以及在学习对象类别的范围内元学习意味着什么。
现在,我们不再被基准束缚,我们可以通过自然语言直接告诉模型一些逻辑任务。这些模型不是完美的,但它们正在做新的任务,通过元学习来获得新能力。Flamingo 模型扩展到视觉和语言多模态,但拥有相同的能力。你可以教它。例如,一个涌现的特性是你可以给数字拍照,然后教它做算术。你给它看几个例子,它就能学会,所以它远远超出了以往的图像分类。
这扩展了元学习在过去的含义。元学习一个不断变化着的术语。鉴于当前的进展,我很希望看到接下来会发生什么,5 年后可能就另说了。我们有一个系统,它有一组权重,我们可以通过交互提示教它玩星际争霸。想象一下,你与一个系统对话,教它一个新游戏,向它展示这个游戏的例子。也许这个系统甚至会问你问题,比如,「我刚玩过这个游戏,我玩得好吗?你能教我更多吗?」所以5年或者10年后,在专门的领域里,这些元学习能力会更具交互性,更加丰富。比如我们专门针对星际争霸开发的 AlphaStar 是很不同的。算法是通用的,但权重是特定的。
元学习已经超出了提示的范围,它会包含更多的交互。系统可能会在它犯错或者输掉比赛后告诉我们给它一些反馈。其实基准已经存在了,我们只是改变了它们的目标。所以在某种程度上,我喜欢把通用人工智能理解为:我们已经在国际象棋和星际争霸这样的特定任务上有 101 %的性能,而在下一次迭代中,我们可以在所有任务上达到 20%。下一代的模型的进步肯定是沿着这个方向。当然我们在一些事情上可能会出错,比如我们可能没有工具,或者可能 Transformer 不够。在未来的 5 到 10 年里,模型的权重很可能已经被训练过,更多的是关于教学或者让模型展开元学习。
这是一种交互式的教学。在机器学习领域,长期以来处理分类任务是使用的都不是这种方法。我的想法听起来有点像最近邻(nearest neighbor)算法,它几乎是最简单的算法,并不需要学习,不需要计算梯度。最近邻做是在一个数据集中测量点与点之间的距离,然后对一个新点进行分类,你只需要计算在这大量数据中最近的点是什么。所以你可以把提示看作是:你在上载的时候处理的不仅仅是简单的点,而是在为预训练的系统添加知识。
提示是对机器学习中非常经典的一个概念的发展,即通过最近的点来学习。我们在 2016 年的一项研究使用的就是最近邻的方法,这在计算机视觉领域也很常见,如何计算两幅图像之间的距离是一个非常活跃的研究领域,如果你能获得一个很好的距离矩阵,你也能获得一个很好的分类器。
这些距离和点不仅仅限于图像,还可以是教给模型的文字或文字、图像、动作序列等新信息。我们可能不会再做更多的权重训练。元学习的一些技术确实会做一些微调,得到一个新任务时,它们会稍微训练一下权重。
4、Transformer 的强大之处
Fridman:我们已经做出了 Flamingo、Chinchilla、Gopher 这些通用的、大规模的模型和智能体,它们在技术上有何特殊之处?
Vinyals:我认为成功的关键是工程。首先是数据工程,因为我们最终收集的是数据集。然后是部署工程,我们将模型大规模部署到一些计算集群中。这个成功要素适用于一切,魔鬼的确存在于细节之中。
另外就是目前基准方面的进展,一个团队花上数月做一项研究,并不能确定能否成功,但如果你不冒险去做一些看起来不可能的事情,就不会有成功的机会。不过,我们需要一种衡量进展的方法,所以建立基准是至关重要的。
我们大量利用基准开发了 AlphaFold,这个项目的数据和指标都是现成的。一个优秀团队不应该是为了找到一些增量改进并发表论文,而是要有更高的目标,并为其钻研数年。
在机器学习领域,我们喜欢像神经网络这样的架构,而且在 Transformer 出现之前,这是一个发展非常迅速的领域。“Attentionis All You Need” 的确是一个很棒的论文题目。这个架构实现了我们对任何字节序列进行建模的梦想。我认为这些架构的进步某种程度上是在于神经网络的工作方式,很难找到一种发明于五年前、至今依然稳定、变化很小的架构,所以 Transformer 能够不断出现在很多项目中,这是令人惊讶的。
Fridman:在技术的哲学性层面,注意力的魔力在什么地方?注意力在人类心智中是如何运作的?
Vinyals:Transformer 和长短期记忆人工神经网络 LSTMs 之间存在区别,在 Transformer 的早期,LSTMs 仍然是很强大的序列模型,比如 AlphaStar 就同时使用了两者。Transformer 的强大之处是它内置了一种归纳性的注意偏差。假如我们要解决针对一串单词的复杂任务,比如翻译一整段话,或者根据之前的十个段落来预测下一段话。
在直觉上,Transformer 做这些任务的方式是对人类的模仿和复制,在 Transformer 中,你是在寻找某个东西,你在刚读了一段文字后,你会想接下来会发生什么,你可能想重新看一下文本,这是一种假设驱动的过程。如果我在想我下一个词是“猫”还是“狗”,那么Transformer 的运作方式是它有两个假设:会是猫?还是狗?如果是猫,我会找出一些词(不一定就是“猫”这个词本身),并回溯上文来看看输出“猫”还是“狗”更说得通。
然后它会对单词进行一些非常深入的计算,它将词组合起来,它还可以查询。如果你真的仔细思考文本,你就需要回看上文的所有文本,但是什么在引导着注意力?我刚刚写了什么,这当然很重要,但你十页之前写下的东西也可能很关键,所以你要考虑的不是位置,而是内容。Transformer 的可以查询特定的内容并将其拉取出来,从而更好地做决策。这是一种解释 Transformer 的方式,我认为这种归纳偏差非常强大。随着时间推移,Transformer 可能会有一些细节上的变化,但是归纳偏差使得 Transformer 比基于近因偏差的循环网络更加强大,循环网络在某些任务中有效,但它有非常大的缺陷。
Transformer 本身也有缺陷。我认为最主要的一个挑战就是我们刚才讨论的提示。一个提示可能有长达 1000 个词,甚至我需要给系统看关于一个游戏的视频和维基百科的文章。当系统玩游戏并向我提问时,我还需要与之互动。我需要成为一个好的老师来教模型实现超出现有的能力的事情。所以问题是,我们如何对这些任务进行基准测试?我们如何改变架构的结构?这是有争议的。
Fridman:个体的人在这一切的研究进展中有多重要?他们在多大程度上改变了相关领域?你现在正在领导着 DeepMind 的深度学习研究,你会有很多项目,很多杰出的研究人员,所有这些人类能带来多少变革?
Vinyals:我相信人的作用非常大。一些人想要获得可行的想法并坚持下去,另一些人可能更实际,他们不在乎什么想法可行,只要能破解蛋白质折叠就行。我们同时需要这两种看起来对立的想法。在历史上,二者都分别或早或晚地产出了某些东西。二者的区分也许还类似于强化学习领域所说的 Exploration-Exploitation Tradeoff(探索-利用权衡)。在一个团队中或在会议上与人互动时,你很快会发现某个东西是可探索的或者可利用的。
否定任何一种研究风格都是错误的,我是工业界的,所以我们有大规模算力可以使用,也会有相应的特定类型的研究。为了科学进步,我们需要回答我们现在应该回答的问题。
与此同时,我也看到了很多进步。注意力机制最初是在加拿大的蒙特利尔由于缺乏算力而被发现的,当时我们正和谷歌大脑的朋友一起研究序列到序列模型。我们使用了 8 个 GPU(其实这个数量在那个时候其实挺多了),我觉得蒙特利尔在计算规模上还比较有限。但后来他们发现了基于内容的注意力概念,这进一步带来了 Transformer。
Fridman:很多人都倾向于认为天才栖息于那些宏大的创见,但我怀疑工程上的天才往往在于细节,有时单个工程师或者少数几个工程师就能改变我们所做的事情,尤其是那些大规模计算机上进行的一个工程决策可能会引发连锁反应。
Vinyals:如果你回顾一下深度学习和神经网络的发展历史,你会发现有偶然的成分在。因为 GPU 恰好在正确的时间出现,尽管是为电子游戏而服务。所以即使是硬件工程也会受到时间因素的影响。也是由于这场硬件革命,数据中心被建立起来。例如谷歌的数据中心。有了这样的数据中心,我们就可以训练模型。软件也是一个重要的因素,而且越来越多的人在进入这个领域。我们也许还会期待一个系统能拥有所有基准。
5、AI 距离涌现出意识还很远
Fridman:你有一篇与 Jeff Dean、Percy Liang 等人合著的论文,题为“Emergent Abilities of Large Language Models”。神经网络中的涌现在直觉上怎么解释?是否有一个神奇的临界点?这会因任务而异吗?
Vinyals:以基准测试为例。在你训练系统的过程中,当你分析数据集大小对性能有多大影响、模型大小如何影响性能、训练了多久系统才会影响到性能等问题时,曲线是相当平滑的。如果我们把 ImageNet 看成是非常平滑且可预测的训练曲线,它在某种程度上看起来相当平滑和可预测。
在语言方面,基准要求更多的思考,即使输入是一个描述数学问题的句子,也需要更多的处理和更多的内省。模型的性能可能会变得随机,直到由 Transformer 的查询系统或者 Transformer 这样的语言模型提出一个正确的问题,性能才开始从随机变为非随机,这是非常经验性的,背后还没有形式化的理论。
Fridman:最近一个谷歌工程师声称,Lambda 语言模型是有意识的。这个案例涉及人类层面、机器学习的技术层面以及 AI 系统在人类世界中的角色的哲学层面。作为一名机器学习工程师以及作为一个人类,你的看法是什么?
Vinyals:我认为目前的任何一种模型离具有意识都还很远。我觉得我有点像个失败的科学家,我总会觉得看到机器学习可能是一门可以帮助其他科学的科学,我喜欢天文学、生物,但我不是那些领域的专家,所以我决定研究机器学习。
但是当我对 Alphafold 有了更多的了解,学习了一些关于蛋白质、生物学和生命科学的知识后,我开始观察在原子水平上发生的事情。我们倾向于把神经网络想象成大脑,当我不是专家的时候,它看起来很复杂性和神奇,但是生物系统远远比计算大脑要更复杂,现有的模型还没有达到生物大脑的水平。
对于这位谷歌工程师的事情,我并没有那么惊讶。也许是因为我看到时间曲线变得更加平滑,从50 年代香农的工作以来,语言模型的进步并没有那么快,100年前的想法和我们现在的想法并没有什么不同。但没有人应该告诉别人他们应该怎么想。
人类从一开始被创造出来就具有的复杂性,以及整个宇宙进化的复杂性,对我来说是更迷人的数量级。痴迷于你所做的事情是好事,但我希望生物学专家能告诉我这并不是那么神奇。通过社区中的互动,我们也可以获得一定程度的教育,这有助于了解什么是不正常的、什么是不安全的等等,否则一项技术将无法得到正确的应用。
Fridman:为了解决智能问题,系统需要获得意识吗?人类心智中哪一部分的意识对创造 AI 系统有指导意义?
Vinyals:我觉得系统的智能不必达到有一个极度有用、能够挑战你、指导你的大脑的程度。而是应该你教它做事。就我个人而言,我不确定意识是否必要,可能意识或其他生物或进化的观点会影响我们的下一代算法。
人的大脑和神经网络进行计算的细节是有区别的,二者当然有一些相似之处,但我们对大脑的细节了解还不够。但如果把范围缩小一点,如我们的思维过程,记忆如何运作,甚至我们如何进化到现在的样子,探索和开发是什么等等,这些都可以启发算法层面的研究。
Fridman:你是否同意 Richard Sutton 在 The Bitter Lesson(《苦涩的教训》)中的观点,即 70 年来的人工智能研究带来最大的教训是利用计算能力的一般方法是最终有效的方法?
Vinyals:我非常同意这个观点。对于构建可信、复杂的系统来说,扩大规模是必要的。这可能还不够,我们需要一些突破。Sutton 提到搜索是规模化的一种方法,在围棋这样的领域,搜索很有用,因为有明确的奖励函数。但在其他一些任务中,我们不太清楚该怎么做。
6、AI 至少可以具备人类水平的智能
Fridman:你认为在你有生之年,我们能建立一个达到甚至超越人类智力水平的通用人工智能系统吗?
Vinyals:我绝对相信它将具备人类水平的智能。「超越」这个词很难定义,尤其是当我们从模仿学习的角度来看目前的标准时,我们当然可以让 AI 在语言方面模仿和超越人类。所以要通过模仿来达到人类水平需要强化学习和其他东西。在某些领域已经有了回报。
就超越人类能力而言,AlphaGo 是我迄今为止最喜欢的例子。而在一般意义上,我不确定我们是否能够从模仿人类智力水平的角度来定义奖励函数。至于超越,我还不太确定,但肯定能达到人类水平。很明显我们不会去尝试超越,如果超越,我们将有超人科学家和探索发现来推动世界发展,但至少人类水平的系统也是非常强大的。
Fridman:当有数十亿达到或超越人类水平的智能体与人类社会深度融合,你认为会有一个奇点时刻吗?你会害怕还是为这个世界感到兴奋?
Vinyals:也许我们需要考虑我们是否真的能达到这个目标。在资源有限的情况下,让太多的人共存会产生很多问题。对于数字实体来说,数量限制也许也应该存在。这是出于能源可用性的原因,因为它们也消耗能源。
事实上,就能源需求而言,大多数系统的效率都比我们低。但我认为,作为一个社会,我们需要共同努力找到合理的增长方式以及我们如何共存。如果真的发生,我会很兴奋,自动化的一些方面使那些原本显然没有机会获得某些资源或知识的人变得有机会,这是我最期待看到的应用。
Fridman:最后一个问题,随着人类走出太阳系,未来世界会有更多的人类还是更多的机器人?
Vinyals:人类和 AI 可能混合共存,这只是猜测,但已经有公司正试图以这种方式让我们变得更好。我希望比例至多到达 1:1,1:1 也许是可行的,但失去平衡就不好了。
原视频链接:https://youtu.be/aGBLRlLe7X8