2020年04月22日 星期三
学了后面忘前面 治疗AI“健忘症”还难有良策
本报记者 谢开飞 通讯员 欧阳桂莲 许晓凤 王忆希
视觉中国供图

    很多人在上学的时候都有这样的经历,在经过了一个寒假返校后,发现前一学期学到的内容有的已经忘了。在见识过人工智能PK人类的屡屡胜绩后,有人不免羡慕AI强大的学习本领,但事实上人工智能的“记性”并不如你想象的那样好,如果你像人工智能系统那样学习,很可能在学习新知识的同时,大脑便会逐渐忘了之前的内容,其原因就在于人工智能遭遇了“灾难性遗忘”。

    近日,来自谷歌大脑的最新研究发现,在街机学习环境的由多个子任务组成的单任务场景中也存在着“灾难性遗忘”。特别像在“蒙特祖玛复仇”这种探索型游戏里,场景变化较大,会出现学习完当前游戏场景后,忘记上一个游戏场景知识的情况。

    那么人工智能为什么会产生“灾难性遗忘”?目前解决“灾难性遗忘”的方案有哪些?难点在哪?就此,科技日报记者采访了有关专家。

    学一个忘一个 深度学习效率低下

    自从阿尔法围棋(AlphaGo)相继战胜多名围棋冠军后,深度学习已经成为众多实现人工智能的方法中最耀眼的“明星”,也是各大研发机构角逐的主战场。而谷歌大脑团队这次面临的“灾难性遗忘”,正是人工智能深度学习中所面临的一个普遍且严重的问题。

    “‘灾难性遗忘’指的是人工智能系统,如深度学习模型,在学习新任务或适应新环境时,忘记或丧失了以前习得的一些能力。”腾讯人工智能实验室副主任俞栋博士在接受科技日报记者采访时说,“灾难性遗忘”会造成人工智能系统在原有任务或环境中的性能大幅下降。

    美亚柏科信息中心总经理魏朝东介绍,在深度神经网络学习不同任务的时候,相关权重的快速变化会损害先前任务的表现,通俗来说,就是在学习中像猴子搬苞谷,捡一个丢一个,记住了新知识,也有可能会忘掉了老知识。

    正是源于此,“灾难性遗忘”的存在,一定程度上限制了人工智能在一些场景中的应用。

    福州大学数学与计算机科学学院、福建省新媒体行业技术开发基地副主任柯逍博士举例说,如一个AI图像识别系统,当需要添加一个新的类别的物体时,就不得不把原先的所有物体都再学习一次。如在文物鉴定系统中,当有一天发现原始数据中有一个文物朝代错了,便没办法单独对这一个错误的文物进行修改学习;再如让AI系统学习英语之后,再让它学习德语,它可能会把原来学习的英语语法全部忘光。

    那么在谷歌大脑的最新研究中,“灾难性遗忘”又造成了哪些影响?其中又有何新发现?

    “除了传统的新知识学习会覆盖旧知识之外,这次谷歌大脑还发现,在如‘超级玛丽’等探索型游戏里,‘灾难性遗忘’会阻碍模型对新知识的学习。”厦门大学科技处副处长、人工智能系教授纪荣嵘说。

    纪荣嵘进一步解释说,面向街机游戏学习的强化学习方法都会采用“经验回放”的训练方式,就是将模型在游戏探索时候的片段进行保存,然后给模型进行“回放”训练。而像“蒙特祖玛复仇”这种游戏,游戏场景变化比较大,模型需要不间断探索游戏场景,因此,在训练时候就必须不断回放早期场景的游戏经验,不然会因为“灾难性遗忘”而忘记了早期的游戏知识。

    “这也导致了新的游戏经验虽然能够被采样到‘经验回放’库里,但因为学习方式的设定,导致学习效率低,同时由于不同阶段的学习会互相干扰,使得AI无法一次通过该游戏的全部关卡。”纪荣嵘说。

    AI“脑容量”存上限 新旧知识难共存

    AI为什么会产生“灾难性遗忘”?

    “深度学习的结构一旦确定,在训练过程中很难调整。神经网络的结构直接决定学习模型的容量。”柯逍说,AI“脑容量”存在上限,也就导致了人工智能只能有限地处理特定任务。就像水桶一半高的地方有个洞,以至于无论怎么增加水桶的高度,这个水桶只能装一半高的水。

    中科院自动化所脑网络组研究中心研究员、模式识别国家重点实验室副主任余山指出,这还涉及到神经网络学习知识的机制。在单个任务的训练过程中,网络中各个神经元之间的连接权重进行了专门的调整,以胜任当前的任务。而在新任务的训练中,连接权重要针对新任务进行调整,这将“抹去”适应旧任务的原有结构,导致在旧任务上的性能大大下降。

    人类的记忆能力其实是有限的,但为何出现“灾难性遗忘”的情况却比较少?“主要是人类在学习过程当中,大脑能够主动保留有用的知识和技巧,同时不影响新的信息获取。” 纪荣嵘说,但现在的人工智能模型大部分是基于随机梯度下降来更新模型参数,这个过程主要服务于当前任务的优化,并不会去评估哪些参数权重对旧的知识是有用的,所以就很容易出现知识被覆盖的情况。

    纪荣嵘也表示,当前像Siri或小爱这样的人工智能助手产品,还不能算真正意义上的通用人工智能,一方面,这些人工智能助手只能在预设的知识范围内和人类互动,完成指令;另一方面,人类没办法像养宠物或养小孩一样,通过互动去教导这些人工智能助手学习新的知识或新的指令。

    有多个解决方案 但都治标不治本

    据了解,破解“灾难性遗忘”是实现通用人工智能的一个关键。解决了“灾难性遗忘”问题,就意味着模型具备了持续学习的能力, 可以像人类一样不断获取新的知识、新的技能,同时能够最大化地保持旧的经验知识和技巧。

    那么,目前解决“灾难性遗忘”的方案有哪些?

    “最常见的方式是多任务学习, 就是把所有任务的训练数据同时放到一起,模型就可以针对多种任务进行联合优化。”纪荣嵘举例说,如让模型同时学习“坦克大战”和“超级玛丽”两个任务,等两个任务同时学的差不多的时候,模型才停止训练。

    但柯逍也指出,这种方式随着任务增多,新任务样本数量被稀释,训练会拖慢学习新知识的效率,并且不是任何情况都能获得先前任务的数据来复习的。

    还有的解决方案是根据新的任务知识来扩充模型结构,保证旧的知识经验不被损害。此次,谷歌大脑所提出的“记忆碎片观察”方法正是对不同任务(场景)构建多个人工智能模型来进行学习。“模型扩充的方式从本质上并没有解决‘灾难性遗忘’的问题,只是用多个模型来替代单个模型去学习多种任务,避免旧参数被覆盖。”纪荣嵘说。

    当前,解决“灾难性遗忘”还存在着一对矛盾:在学习新任务的过程中,需要给予网络足够多的自由度进行连接权重调整,但是又要避免这样的调整“抹去”原有的记忆。

    “因此,科学家们开始设计新的学习算法解决上述矛盾,使得网络在进行权重调整的时候,对已有知识的影响最小化。”余山表示,其团队近期提出的正交权重修改算法,就属于这类,主要通过限制权重修改只能在旧任务的解空间中进行,这一算法较好的克服了“灾难性遗忘”,使得同一个分类器网络可以连续学习多达数千个类别的识别。

    魏朝东认为,虽然科学家们已经探索出多种解决方案,但目前的AI学习只是从认知科学中获得了一小部分灵感,对大脑的模拟还没达到人们想象的高度,大部分AI学习方案是“先天不足”的。“灾难性遗忘”是一个综合性问题,不仅需要有理论支撑,未来还需要有可行的技术手段去实现。

京ICP备06005116