罗彻斯特大学的克里斯托弗·卡南。
广达杂志的萨沙·马斯洛夫
人工智能算法旨在间歇性学习。算法不能像人类那样随着时间的推移不断地用新信息更新他们的知识库,算法只能在训练阶段学习。在那之后,他们的知识仍然冻结;他们执行他们接受培训的任务,但无法在他们做的时候继续学习。即使是学习一件事,算法也必须从头开始重新训练。就好像每次你遇到一个新人,你唯一能知道她名字的方法就是重启你的大脑。
从头开始训练会导致一种被称为灾难性遗忘的行为,在这种情况下,机器以忘记几乎所有已经学过的东西为代价吸收新知识。这种情况的出现是因为当今最强大的人工智能算法(称为神经网络)学习新事物的方式。
这些算法松散地基于我们的大脑,其中学习涉及改变神经元之间的连接强度。但这个过程变得棘手。神经连接也代表了过去的知识,因此过多地改变它们会导致遗忘。
生物神经网络已经进化了数亿年的策略,以确保重要信息保持稳定。但是今天的人工神经网络很难在新旧知识之间取得良好的平衡。当网络看到新数据时,它们的连接很容易被覆盖,这可能导致突然而严重的无法识别过去的信息。
为了解决这个问题,41 岁的罗切斯特大学计算机科学家克里斯托弗·卡南帮助建立了一个新的人工智能研究领域,称为持续学习。他的目标是让 AI 不断从连续的数据流中学习新事物,并在不忘记之前发生的一切的情况下做到这一点。
卡南在他今年夏天搬到罗切斯特大学的新办公室。
广达杂志的萨沙·马斯洛夫
卡南几乎一生都在玩弄机器智能。作为俄克拉荷马州农村的一个孩子,他只想玩机器,他教机器人玩早期的多人电脑游戏。这让他想知道通用人工智能的可能性——一种能够在各个方面像人类一样思考的机器。这让他对大脑的工作方式产生了兴趣,他在俄克拉荷马州立大学主修哲学和计算机科学,之后他的研究生课程将他带到了加州大学圣地亚哥分校。
现在,Kanan 不仅从电子游戏中获得灵感,还从观看他将近 2 岁的女儿了解世界的过程中获得灵感,每一次新的学习体验都建立在最后一次的基础上。由于他和其他人的工作,灾难性遗忘不再是灾难性的。
Quanta与 Kanan 就机器记忆、打破训练神经网络的规则以及 AI 是否会实现人类水平的学习进行了交谈。为清晰起见,采访经过浓缩和编辑。
您的哲学培训如何影响您对工作的看法?
作为一名学者,它对我很有帮助。哲学教你,“你如何提出合理的论点”和“你如何分析他人的论点?”这就是你在科学领域所做的很多事情。我仍然有关于图灵测试失败的文章,诸如此类。所以这些事情我仍然想了很多。
卡南的研究笔记本。
我的实验室受到以下问题的启发:好吧,如果我们不能做 X,我们怎么能做 Y?我们会随着时间的推移而学习,但神经网络通常不会。你训练他们一次。之后是固定的实体。如果有一天你想制造通用人工智能,这是你必须解决的基本问题。如果它无法在不扰乱大脑并从头开始的情况下进行学习,那么您就不会真正到达那里,对吗?这是我的先决条件。
到目前为止,研究人员是如何处理灾难性遗忘的?
最成功的方法称为重放,它存储过去的经验,然后在训练过程中用新的例子重放它们,这样它们就不会丢失。它的灵感来自我们大脑中的记忆巩固,在睡眠期间,当神经元重新激活时,一天活动的高级编码被“重播”。
换句话说,对于算法,新的学习不能完全根除过去的学习,因为我们混合了存储的过去经验。
有三种风格可以做到这一点。最常见的风格是“真实回放”,研究人员存储原始输入的子集——例如,用于对象识别任务的原始图像——然后将这些存储的过去图像与要学习的新图像混合。第二种方法重放图像的压缩表示。第三种不太常见的方法是“生成回放”。在这里,人工神经网络实际上生成了过去经验的合成版本,然后将该合成示例与新示例混合。我的实验室专注于后两种方法。
不幸的是,重放并不是一个非常令人满意的解决方案。
广达杂志的萨沙·马斯洛夫
为什么不?
为了学习新事物,神经网络必须至少存储一些关于它过去学到的每个概念的信息。从神经科学的角度来看,假设是你和我重播了一段相对较新的经历——而不是发生在我们童年时期的事情——以防止忘记最近的经历。而我们在深度神经网络中这样做的方式是不正确的。它不一定要存储它所看到的所有内容,但它必须存储它过去学习的每项任务的一些内容以使用重放。目前还不清楚它应该存储什么。因此,今天完成的重播似乎还没有完全实现。
如果我们能够彻底解决灾难性遗忘,这是否意味着人工智能可以随着时间的推移不断学习新事物?
不完全是。我认为持续学习领域的大、大、大开放性问题并不是灾难性的遗忘。我真正感兴趣的是:过去的学习如何让未来的学习更有效率?未来的学习如何纠正过去的学习?这些是没有多少人衡量的东西,我认为这样做是推动该领域向前发展的关键部分,因为实际上,这不仅仅是忘记一些东西。这是关于成为一个更好的学习者。
这就是我认为该领域有点想见树木不见森林的地方。社区中的大部分人正在以与有趣的生物学问题或有趣的工程应用不匹配的方式来设置问题。我们不能让每个人永远做同样的玩具问题。你不得不说:我们的挑战任务是什么?我们如何推动事情向前发展?
那你为什么认为大多数人都在关注那些简单的问题?
我只能推测。大多数工作是由遵循过去工作的学生完成的。他们正在复制其他人所做的设置,并在相同的测量结果下显示出一些小的性能提升。制作新算法更有可能导致发表,即使这些算法并不能真正使我们在持续学习方面取得重大进展。令我惊讶的是,同样的工作是由没有相同激励措施的大公司生产的,除了实习生驱动的工作。
卡南在罗切斯特大学的 Rush Rhees 图书馆前。
广达杂志的萨沙·马斯洛夫
此外,这项工作是不平凡的。我们需要建立正确的实验和算法设置来衡量过去的学习是否有助于未来的学习。最大的问题是我们现在没有很好的数据集来研究持续学习。我的意思是,我们基本上是在使用传统机器学习中使用的现有数据集并重新利用它们。
本质上,在机器学习的教条中(或者至少每当我开始教授机器学习时),我们有一个训练集,我们有一个测试集——我们在训练集上训练,在测试集上进行测试。持续学习打破了这些规则。然后,您的训练集会随着学习者的学习而发展。但是我们仍然局限于现有的数据集。我们需要为此努力。我们需要一个非常好的持续学习环境,在其中我们可以真正推动自己。
理想的持续学习环境应该是什么样的?
告诉你它不是什么比它是什么更容易。我参加了一个小组,我们认为这是一个关键问题,但我认为不是任何人都能立即找到答案。
我可以告诉你它可能具有的属性。所以现在,让我们假设人工智能算法不是模拟中的具体代理。然后至少,理想情况下,我们正在从视频中学习,或者类似的东西,比如多模式视频流,并希望做的不仅仅是[静态图像]分类。
有很多关于这方面的开放性问题。几年前我参加了一个持续学习研讨会,一些像我这样的人说,“我们必须停止使用一个叫做 MNIST 的数据集,它太简单了。”然后有人说,“好吧,好吧,让我们对[基于策略的视频游戏]星际争霸进行增量学习。”出于各种原因,我现在也在这样做,但我认为这也不是真的。生活比学习玩星际争霸要丰富得多。
广达杂志的萨沙·马斯洛夫
您的实验室如何尝试设计可以随着时间的推移不断学习的算法?
我和我以前的学生 Tyler Hayes 一起开创了类比推理的持续学习任务。我们认为这将是研究迁移学习理念的好领域,您可以在其中获得技能,现在需要使用更复杂的技能来解决更复杂的问题。具体来说,我们测量了后向迁移——过去学习的东西在未来对你有多大帮助,反之亦然。我们发现了很好的迁移证据,比对象识别这样的简单任务重要得多。
您的实验室还专注于训练算法,以便一次从一个示例或非常少的示例中不断学习。这有什么帮助?
许多持续学习设置仍然使用非常大批量的示例。所以他们基本上会对算法说,“这里有 100,000 个东西;学习它们。这是接下来的 100,000 件事情;学习他们。”这与我所说的真实世界应用程序并不相符,即“这是一件新事物;学习它。这是另一个新事物;学习一下。”
如果我们想让人工智能像我们一样学习,我们是否也应该以复制人类在不同年龄学习不同事物的方式为目标,不断完善我们的知识?
我认为这是在该领域取得进展的一条非常富有成效的途径。人们告诉我,现在有了孩子,我只是痴迷于发展,但我可以看到我的女儿有一次性学习的能力,她看到我做一次就可以立即复制。机器学习算法今天不能做这样的事情。
它真的让我大开眼界。与现代神经网络相比,我们头脑中发生的事情肯定要多得多。这就是为什么我认为该领域需要随着时间的推移学习这种想法,算法通过建立在过去的经验中成为更好的学习者。
你认为人工智能真的会像人类一样学习吗?
我想他们会的。确实。今天更有希望,因为有很多人在这个领域工作。但我们仍然需要更多的创造力。机器学习社区的很多文化都是跟随领导者的方法。
我认为我们只是生化机器,最终我们将弄清楚如何为正确的架构制作算法,我认为这些架构将拥有比现在更多的能力。对我来说,没有令人信服的论据说这是不可能的。