财新传媒
位置:博客 > 集智俱乐部 > 纤维丛理论解决神经网络的“灾难性遗忘”问题

纤维丛理论解决神经网络的“灾难性遗忘”问题

导语

最近发表在arxiv.org上的一篇论文,提出一种将学习系统看作一个纤维丛(Fiber Bundle)的通用学习模型。通过在一系列机器学习的实验中将文章提出的模型与传统模型的学习能力进行对比,作者发现新模型不仅有着极佳的连续学习能力,而且具有很大的信息容量。

论文题目:

Realizing Continual Learning through Modeling a Learning System as a Fiber Bundle

论文地址:

https://arxiv.org/abs/1903.03511

人类大脑天生就有一种叫做连续学习(Continual Learning)的能力,然而目前的主流神经网络存在一种叫做灾难性遗忘(Catastrophic Forgetting)的问题。所谓灾难性遗忘,即突然和充分地学习一套新的模式,会导致完全遗忘已经学习过的模式。

这篇文章提出一种将学习系统看作一个纤维丛(Fiber Bundle)的通用学习模型。通过在一系列机器学习的实验中将文章提出的模型与传统模型的学习能力进行对比,作者发现新模型不仅仅有着极佳的连续学习能力,而且具有很大的信息容量。

此外作者发现,在某些学习情景下,假如我们让模型能够对时间产生意识(类似于人类大脑的情景记忆机制),模型的连续学习能力能够进一步得到增强。

最后,文章提出的模型的遗忘性质和人类记忆的遗忘性质有着很好的对应。这个工作或许能够增进我们对人类大脑学习机制的认识。

什么是纤维丛?

纤维丛是一种满足特定约束条件的映射。通俗地讲,纤维丛就像一把梳子:梳子上的每一根纤维根据某种相似性“扎根”在梳子的柄上的某个唯一的点上。从数学建模角度来看,纤维丛有一个特点,即它能有效而自然地同时对强关联和弱关联进行建模:我们可以用不同的纤维来表达两个事物的差异,而用它们在梳子柄上的位置来表达两个事物的相似性。

此外,当一个函数(例如一个传统的神经网络)只在输入变量(数据)空间的某个局部有效时,用纤维丛来建模是极佳的选择。这些性质,正好适应于机器学习里连续学习的情景:不同任务的学习数据可能差异很大(弱关联),而同一任务的数据可能具有某种强的相似性(强关联);此外,适合处理任务A的神经网络,不一定适合处理任务B(即局部有效性)。

关于纤维丛(Fiber Bundle)的数学定义,感兴趣的读者可以参照维基百科:

https://zh.wikipedia.org/wiki/%E7%BA%A4%E7%BB%B4%E4%B8%9B

接下来,我们介绍文章所给出的模型的细节。

一个具有纤维丛结构的

简单的学习模型

文章给出了一个具有纤维丛结构的学习系统,该系统的概念示意图如下:

基于以上认识,作者提出了一个简单的纤维丛神经网络层 (A simple bundle layer),其公式表述摘录如下:

什么是情景框架(Context Frame)?

通俗地讲,所谓的情景框架就是对一个事件(或一个观测数据)的特殊标记,类似于我们写记叙文的时间、地点、人物等等。又例如“英语”方面的知识和“数学”方面的知识具有明显的差异,那些一个特定领域(或学习任务)所特有的特征,也可以被认为是一种情景框架。这些情景框架,对于防止遗忘和长期记忆的形成有着至关重要的作用。试想一下,假如我们没有时间方面的觉知,那么我们所有关于个人人生阅历的记忆,将会是一团混乱。正因如此,文章作者给学习模型引入一个简易的“生物钟”(Bioclock),让模型对时间有所感知。

该生物钟的数学表述如下:

简单地将,其用某种周期性函数来对时间编码。编码之后,我们在后续的处理中对特定时刻下所观测到的数据增加一个该时刻的编码标记,然后与其他状态信息一同作为主神经网络的输入。之所以用周期性函数,是因为周期性函数可以很方便地将数值限定在一定的范围内,能够保证训练的稳定性(此外,也有可能能够捕捉数据里一些潜在的周期性规律)。

主要实验结果

1. 信息容量

首先,作者对所提出的模型以及传统的模型的信息容量进行了对比研究。实验结果如下如所示:

简单地讲,作者通过将所提出的模型(Bundle)与由传统线性层简单堆砌而成的多层神经网络(Multilayer Peceptrons, MLP)在一组随机生成的训练数据上进行对比训练,发现尽管完成相同的训练次数(Epochs)Bundle模型耗时增加了2-4倍,但是——

  1. 达到相同的训练精度,Bundle模型比MLP模型所需时间更短;

  2. 相同的训练参数数目的情况下,Bundle模型能够达到更高的收敛精度。

这些暗示着Bundle模型具有更高的信息容量。

2. 连续学习能力

然后,作者通过一系实验对文章所提出的模型以及传统的模型的连续学习能力进行了对比测试。实验结果如下图所示:

简单地来讲,作者将本文提出的模型(Bundle)与传统模型(MLP)在连续学习任务(依次学习10个不同的数据集)中的表现进行对比发现:

  1. MLP模型学了新任务就几乎把旧任务忘得精光,即便增加重复学习的次数,也不顶什么用;然而 Bundle模型灾难性遗忘明显比MLP低,能够有效地进行跨任务连续学习,并且如果我们允许模型少次重复学习已经学过的任务,Bundle能够很明显地改进学习的效果。(图A、B)

  2. Bundle模型抗干扰能力极强:当我们用随机噪音数据对已经训练好的模型进行干扰时,MLP很快就把学的东西忘记得精光,而Bundle模型的遗忘要明显地比MLP慢。(图C)

  3. 两个模型的遗忘曲线与心理学、认知科学里观测到的人类遗忘曲线很相似(图C);此外间歇性重复学习(learning with spaced repetition)能够有效减少学习所需时间,特别是Bundle模型(图D)。这些结果和认知科学里的实验结果很好地吻合。

3. 增强学习中的应用

最后,作者将所提出的模型在增强学习任务中进行了对比测试。实验结果如下图所示:

简单地来讲,文章把 MLP 和 Bundle 在两个经典的增强学习任务里进行了对比测试(LunarLander-v2的动作空间是离散的,Pendulum-v0 的动作空间是连续的)。前人的研究表明,为了达到较好的学习效果,我们有必要引入经验重演(experience replay);而对于动作空间是连续的情况,我们则更是需要引入一个缓慢更新的目标神经网络(target network)来保证训练稳定性。

作者为了测试 Bundle 超强的连续学习的能力是否能够帮助增强学习算法避免这些额外的需求,对比研究了两个模型在不允许经验重演、允许一定程度的经验重演、以及没有目标神经网络的情况下的表现。作者发现——

  1. Bundle 模型学习速度要明显快于 MLP 模型,并且有更大概率收敛到更好的结果。特别是对于动作空间连续的情况,当不引入 target 网络时,MLP 模型几乎不能学习(即便增加经验重演所需要的缓存记忆大小也无济于事),而 Bundle 模型却可以轻易地进行学习。

  2. 当经验重演受到明显限制时,MLP 模型呈现出明显的周期性的遗忘,而 Bundle 模型则能持续地进步。

  3. 增加经验重演所用的缓存大小,能够有效地改善 Bundle 模型的学习效果。然而,作者认为,并非缓存越大就越好,有时候有选择性地继承和遗忘比什么都记住在学习上能更有效率。

  4. 在所测试的任务中,引入生物钟能进一步改善学习的效果,尽管作者认为是否需要引入对时间的感知需要具体情况具体分析。

结束语

作者认为模型的连续学习能力对于实现强人工智能至关重要;然而目前这项工作还很初步,还有很多开放性课题有待探讨。

例如,大脑是如何从生物学、解剖学角度实现文章所示拓扑结构的功能的?基于目前提出的模型,我们是否可以进一步研究如何选择性地遗忘,以治愈各种因不好的记忆而形成的心理疾病?我们是否以让机器具有人类的多种感官,并基于本文提出的模型拓扑,构建一个神经网络,同时处理多渠道的信息,以自动对他们的相关性进行描述?是否有比纤维丛更合适描述人类大脑学习系统的结构……

后记--研究复杂网络与

人工智能算法的搞事青年

还记得那个业余时间弄了个AI-Reviser英文语法修改器的青年吗?——能记得才怪!他穷得买不起猫粮,于是连服务器都关了——可是即便如此,他依旧买不起猫粮。为了买猫粮,真可谓是煞费苦心……

第一回 不如归去

室友:“美国多好,你干嘛简历都不投就直接回国?”

青年:“浪费流量……”

室友:“一脸懵逼……”

青年:“……其实我投了一份简历,谷歌的人工智能……”

室友:“你这是作死……一个理论物理背景的去搞人工智能,会议论文没一篇,人家理都不会理你……”

青年:“说的在理,直接回国,顺带节约OPT申请费400刀!”

室友:……(川普脸)

第二回 红砖并进

个把月后,青年离开了那满是鲜花和海鸟的小岛,来到了地球的另一边,在一个红砖头砌成的实验室里,搞起了人工智能算法。

青年:“这边进口猫方便吗?”

同事:“去广东吧,那里猫咪蹲监时间最短。”

于是,青年咬咬牙,拼了血本在深圳海边租了一套两室一厅的观景房,一间留给猫,一间自己睡。为了让猫吃好睡好玩好,青年从此开始了南漂打工的生涯。

第三回 没事找抽

青年弱弱地问:“老师,我感觉目前的深层神经网络和 Universal Approximation Theorem 的数学形式并不直接对应。感觉与之直接对应的应该是往广度走……”

Boss 一愣:“怎么可能?你一定是看花了眼了。如果真如此,有那么多科学家研究了那么多年,怎么会没人提出来?”

青年:“是啊,我也是这么想的,所以才想找您讨论讨论。是不是他们的脑子发生了简并?……”

Boss:“确定不是你的脑子发生了纠缠 ?……(摸摸狗头)年轻人,别性急,慢慢来哈。”

于是青年默默地滚回自己的实验室,做了个实验,发现,虽然往广度走能大大增加信息容量,但很容易出现过拟合。于是,忍痛把手稿扔进了垃圾桶(直至某一天,发现原来这是纤维丛神经网络“退化”后的一个特例)。

第四回:认真脸

在接下来的几天里,他都懒得写代码,天天跟学长扯淡。扯淡扯久了,终觉无味。于是,摆个认真脸问学长:“机器学习里的灾难性遗忘(Catastrophic forgetting)是什么东东?”

学长:“就是,你学了数学,然后去学英语,于是,等你学会英语,你的数学知识全忘了!”

青年:“这个问题严重吗?”

学长:“这个问题非常重要!是目前的一个研究热点,解决这个问题对实现通用人工智能至关重要!

青年:两眼发光,从此被问题迷得不省人事……”

……

第五回 欲哭无泪

学长:“你最近有进展了吗?”

青年:“你说人为什么能够连续学习而不会遗忘?”

学长:“你这个问题太深奥了!”

青年:“你不觉得现在的深层神经网络拓扑有问题吗?你说有没有一种拓扑,它能够同时兼顾强相互作用和弱相互作用,哦不,我是说,强关联和弱关联?”

学长:“嗯……好问题,我得想想。”

(几分钟过去……)

青年:“这样吧,我帮你想你的科研问题,你帮我想这个。我大脑CPU不够用。”

学长:“好呀!我最近在研究#¥!#¥#@……#%”

青年:#@!%!%!@ (两眼冒星星,大脑直接发生内存溢出错误!)

就这样,青年每天都跟学长在食堂边喝着酸得打哆嗦的柠檬汁边扯淡。

青年想,或许我该问问学校数学系的老师……于是查了查数学系的老师背景,Orz,都是搞应用的……“我需要懂理论数学的!!” 青年欲哭无泪,真是书到用时方恨少,事非经过不知难!于是,他写邮件询问数学系的负责人,有没有懂理论的——看都不用看——果真没人搭理!

第六回 Babysitter

老板:“你最近是什么回事?系里开会要你去帮忙,给你发了几封邮件也不回,大家都去帮忙就你不去,你这样太自我了吧!”

青年一脸懵逼,默默点开邮箱,心里一万只草泥马呼啸而过:“W…!这么多邮件我怎么一封也没注意到!”

青年:“实在不是故意的,我的大脑发生了灾难性遗忘!求体罚,求扣工资!”

老板:“你这么大的人了还需要babysitter!”

青年:“还好,我至少没把IPhone煮了吃。”

老板:……

(三个月后)

青年:“老板!这是我写的初稿!请多指教!”

老板:“你这写的是什么鬼,你知道怎么写论文吗?你去看看人家IEEE的论文怎么写的。”

青年:“我能不投IEEE吗?”

老板:……

第五回 告老还乡

(半年后)

青年:“老板!我想了想,论文差不多完成了,我要提前离开了!”

老板:“你想要去做啥?是不是在这里待着有什么不适应的?”

青年:“不是,我年纪一大把了,一直在外奔波,要告老还乡,回家陪父母和老人!”

老板:“(W…!你还老……强颜微笑)我们这正需要你这样的人,何况你此刻离开,过一阵子要想再重拾科研,会不会跟不上步伐?”

青年:“您放心吧!您看看目前人工智能发展的速度——前几个月学的,这个月就淘汰了,等将来,我直接学最新的就好了!”

老板:“貌似言之有理!好吧,我不留你,等你哪天还想搞科研可以跟我联系!”

青年心想,得遇如此大度之老板,也是三生有幸。不过既然选择离开,就不能犹豫。于是,青年辜负了父母和师长的期待,“净身出户”,回到家过着丢人的农民生活。猫也撸不起了,索性在深圳给他找了一户上好人家。每每别人问起他的父母 “你的娃回国了呢?在哪上班?”,他父母都支支吾吾地回答,“在……香港”。可他非得没事找事补一刀,说,“嗯,刚辞职,目前无业游民一个。” ——真是不孝!

第六回 不是故意的

青年:我要换驾照,需要打印出入境记录!

出入境办事人员:好的,稍等……

(只听见,刷,刷,刷……)

无处境办事人员:W…?? 这么长竟然无法中途取消打印!!一卷打印纸就这样给你弄没了……你这是啥呀……入境、出境、入境、出境……

青年:无辜摊手 

寻求合作者,共同发Nature~

由于作者知识水平、时间精力、以及实验条件等有限,目前仅在ArXiv和Nature的MI子期刊提交了初稿。Nature 子刊的评委对文章理论和思路的评价是”of great potential interest”,但表示文章尚缺乏一个能足够博眼球的应用,不然会考虑接收此文。可惜作者目前已经暂时没有钱做进一步实验了呢,因此,欢迎有银子又有才华的团队(合作)弄个强应用发个 Nature 玩一下。此外作者也欢迎对(非四旋翼类)飞行器非常感兴趣的小伙伴来勾搭。

作者简介

勾搭方式

个人博客:https://zcao.info/contact/

微信号:morningmorningwind

作者:曹振峰

编辑:王怡蔺

推荐 1