作为世界上最受瞩目的人工智能技术研究机构之一,Google DeepMind 总是在不断带来我们惊喜。在去年的官方总结中,DeepMind 指出,「2016 年,我们的另一重要研究领域是记忆(memory),特别是如何将神经网络的决策智能和有关复杂结构化数据的存储、推理能力结合起来的难题。」
近日,DeepMind 又发布一份新研究(这一方法不同于之前提出的 PathNet),宣称实现了神经网络的连续学习(Continual Learning),让计算机程序可以不忘记之前学习过的内容并渐进式地学习新内容。这篇论文结合了生物学、突触弹性理论,并讨论了突触不仅存储权重还存储这一权重不确定性的理论。这项研究得到了广泛的关注,比如 Bloomberg 的报道写道,这项研究「可能将为能被更轻松地应用于多种任务的人工智能系统开启新的道路,它也应该可以提升人工智能系统在任务之间迁移知识的能力和掌握一系列互相链接的步骤的能力。」机器之心在此对 DeepMind 与该研究相关的官方博客文章和论文摘要进行了介绍。
论文地址:http://www.pnas.org/content/early/2017/03/13/1611835114.full.pdf
学习执行任务的计算机程序通常也会很快地忘记这些任务。我们的研究表明可以修改学习规则使程序在学习新任务的时候还记得旧任务。这是向能渐进学习和自适应学习的更加智能的机器所迈出的重要一步。
深度神经网络是目前最成功的机器学习技术,可用于解决语言翻译、图像分类和图像生成等多种任务。但是,通常只有当数据是一次性全部呈现时,它们才能学习多种任务。随着一个网络在一项特定任务上的训练的进行,其参数也将逐渐适应此任务的解决。而当引入一个新任务的时候,新的适应过程会改写该网络之前已经获得的知识。这种现象在认知科学领域被称为「灾难性遗忘(catastrophic forgetting)」,这也被认为是神经网络的基本限制之一。
相对而言,我们的大脑却有着不同的工作方式。我们可以渐进地学习,可以一次只学习一个技能,而且也能在学习新任务时应用我们之前获得知识。这也是我们最近在 PNAS 上发表的论文《Overcoming catastrophic forgetting in neural networks》的起点。在这篇论文中,我们提出了一种可以克服神经网络的灾难性遗忘的方法。我们的灵感来自于神经科学,涉及到有关哺乳动物和人类大脑巩固之前习得的技能和记忆的理论。
神经科学家已经识别出了大脑之中的两种巩固(consolidation)方式:系统巩固(systems consolidation)和突触巩固(synaptic consolidation)。系统巩固是指这样一个过程:将我们大脑中的快速学习部分已经获得的记忆印刻到慢速学习的部分。这种印刻过程被认为是通过有意识或无意识的回忆实现的——比如说,这可能会发生在做梦的时候。而对于第二种机制——突触巩固,是指如果一些突触连接在之前所学到的任务中是很重要的,那么它们被改写的可能性就更小。具体而言,我们的算法就从这种机制中获得了解决灾难性遗忘的灵感。
神经网络由很多连接构成,这些连接的方式在很大程度上类似于大脑中的连接。在学会一个任务之后,我们计算每个连接对于该任务的重要程度。当我们学习一个新任务时,我们按照连接对旧任务的重要程度,按比例地对连接进行修改保护。因此这就可以在无需修改在之前的任务中所学习到的内容的同时而学会新的任务,并且这也不会带来显著的计算成本。我们可以将我们为每个连接所施加的保护看作是通过一个弹簧链接到之前的保护值,其刚度(stiffness)正比于其连接的重要程度。为此,我们将我们的算法称为「弹性权重巩固(EWC/Elastic Weight Consolidation)」。
DeepMind新的AI程序同时应付两个任务的学习过程
为了测试我们的算法,我们让一个代理按顺序接触 Atari 游戏。单独根据得分掌握单个游戏,很有挑战性,不过,按顺序掌握多个游戏更是难上加难,因为每个游戏都需要一种单独的策略。正如下面图表所表明的,没有 EWC,在停止游戏后(蓝色),该代理会迅速忘记每个游戏。这意味着,平均而言该代理几乎没有掌握任何一个游戏。不过,如果我们使用了 EWC(棕色和红色),该代理就不会轻易忘记游戏,还能一个接一个地掌握多个游戏。
今天,计算机程序还无法从数据中自适应地进行实时学习。不过,我们已经表明,对于神经网络来说,灾难性遗忘不是一座不可征服的高山。我们也希望,这份研究代表了人们朝着能够以更加灵活自动化的方式进行学习的程序又迈进了一步。
我们的研究也推进了人类对大脑中突触巩固(synaptic consolidation)形成方式的理解。实际上,作为我们的研究基础的神经科学理论目前只是在非常简单的例子中得以证明。通过表明那些相同的理论也可以适用到更加现实和复杂的机器学习环境中,我们希望能够进一步赋予这一思想更大的重要性:突触巩固是保留记忆和方法的关键。
论文:克服神经网络中的灾难性遗忘
(Overcoming catastrophic forgetting in neural networks)
摘要
以顺序的方式学习任务的能力对人工智能的开发来说是至关重要的。到目前为止,神经网络都还不具备这种能力,而且人们普遍认为灾难性遗忘(catastrophic forgetting)是连接主义模型(connectionist model)的不可避免 特征。我们的研究表明有可能克服这种限制并训练出能够在很长一段时间里在它们没有经历过的任务上保持专业知识的网络。我们的方法能够选择性地减慢对这些任务而言比较重要的权重的学习速率。通过解决一系列基于手写数字数据集的分类任务和按顺序学习多个 Atari 2600 游戏,我们表明我们的方法是可扩展的和有效的。
原文:https://deepmind.com/blog/enabling-continual-learning-in-neural-networks/
【本文是51CTO专栏机构机器之心的原创译文,微信公众号“机器之心( id: almosthuman2014)”】