您的位置 首页 > 数码极客

ai里面如何掏空——ai里面如何多选…

通过给一个神经网络加上“记忆”,DeepMind成功地让它连续对19个ATARI 2600游戏进行学习。最终19个游戏中有11个都展现出了优秀的结果。

作者|李赓

编辑|甲小姐

网址|www.x

微信公众号ID|Xtecher

昨天,一段时间不冒头,DeepMind又搞了个大新闻——给机器学习加上“记忆能力”。

今天早些时候,DeepMind在《美国国家科学院院刊(PNAS)》上发了一篇最新论文,内容是《神经网络中的“灾难性忘却(catastrophic forgetting)”已经开始着手解决》。

为了能够加通俗易懂地将这项学术进展表达出来,Xtecher专门采访了彩云AI创始人&CEO袁行远,并让他从一名人工智能从业者的角度谈了下他的看法。

让机器人有记忆,DeepMind究竟干了啥?

首先,我们来解释一下什么是“灾难性忘却”(catastrophic forgetting)。

现有人工智能技术的底层是机器学习技术,也就是利用很多层神经网络来对问题进行量化分析。最终得到一个相对靠谱的神经网络,知道如何分解问题最合理,却不知道网络参数数值与最终结果除了正确率之外的其他逻辑意义。

那么我们假设现在有两个需要学习的新生事物A和B,而我们先后用一套神经网络去学习,就会出现一个非常尴尬的局面:

让人工智能学习完A之后学习B,之前为完成A任务所建立的神经网络就变得无用,需要再次从0开始积累。当神经网络学会如何解决B问题之后,A问题的解决方法却又已经被覆盖,等于“忘记”了。

那种想说一件事,但是因为被打断突然忘掉了,有多郁闷你肯定懂。

通俗点来说,虽然这套神经网络能够同时学习A、B两种事物,但他们从本质上来说却不是一个神经网络,因为它并不能同时完成两项事务。

这个特性就好比一堵“高墙”,拦住了人工智能往通用化的方向前进。也正因为不能通用化,所以我们目前看到的人工智能还久久停留在“弱人工智能(只能完成一个或者一类实际问题)”阶段。

为了解决这个问题,DeepMind此次引入了一套全新的算法体系EWC(弹性权重巩固),原理并不复杂。

A、B两个任务,以及分别对应的两个神经网络

依旧是A、B两个需要学习的事物,但在学习完A之后EWC算法中多出来了一步:根据神经网络中每一个神经元与结果的关系强弱,分别给他们加上一个对应的时间保护设置。当再次学习全新事物B时,A事物最关键的神经网络结构会被保留,即便少部分被覆盖,也能快速通过再次学习获得。

袁行远特别指出:“这次DeepMind进展的关键,在于19个游戏用的是同一个神经网络。”单从这个成绩来看,DeepMind这次的实验已经算成功了。

不得不说,这的确很像人脑的工作方式。因为人类大脑也会左右分工、大脑皮层的不同位置也会负责不同任务。处理具体问题的时候,大脑对应区域自然会运转起来。而EWC的出现,就是去衡量这些无法同时工作的神经网络应该如何分别留存。

实际上,DeepMind这套算法的参考对象就是人类和哺乳动物大脑,因为他们都有巩固先前获得技能和记忆的能力。根据神经科学目前的研究成果,大脑中主要有两种巩固知识的方式系统巩固(systems consolidation )与突触巩固(synaptic consolidation)。

系统巩固的过程中,人类大脑将快速学习部分获得的记忆转印进了缓慢学习的部分。这一转印过程有有意识的回忆参与,也有无意识回忆的参与,人类做梦时就能完成这一转印过程。而在突触巩固中,如果一种技能在此前的学习中非常重要,神经元之间连接就不会被覆盖。

而这次DeepMind公布的EWC算法,实际就模拟了突触巩固。但毫无疑问,即便装备了EWC算法,人工智能目前的记忆复杂程度还远远比不上人类。

是骡子是马?拉出来玩几把游戏再说

既然算法有了,自然要测试一下。DeepMind选择了一个自己熟悉的项目:19款ATARI 2600(一款1977年发布的经典像素游戏主机,之上有数款最经典的游戏)游戏。

早在2015年,DeepMind就通过自行研发的神经网络Deep Q,在这些游戏上得分超过了人类。

还是熟悉的项目,但DeepMind这回在Deep Q基础上加上了EWC算法。

同时为了验证EWC算法的有效性,他们添加了一个考核条件:每种游戏只能学习2000万次,然后就切换到下一个游戏。当19个游戏全部被学习一次之后,再从第一个游戏重新开始学习。

最终他们得到了下面的结果:

注:SGD(蓝色)为没有加上EWC的学习结果,红色是加上EWC算法之后,single game(黑色)为持续对单个游戏进行学习的结果。

需要额外解释一下的是,这些图表中横向坐标是学习次数,同时EWC并不是连续学习的结果。EWC每两个峰谷之间实际上已经学习了另外18个游戏。

对结果做一个简单统计:在19个游戏中,总共有11个EWC成绩达到或者接近(以80%计算)single game的成绩。

另外一方面,EWC与SGD成绩对比也能显现出很有趣的趋势:在绝大多数游戏中,两者都会在“重新学习”之后发生较明显的成绩下滑,但是EWC的成绩通常比SGD高,而且整体波动幅度会越来越小。而这恰恰证明,EWC的确记住了这个游戏怎么玩。

但与此同时,我们还能发现另外一些有趣的结果:

1、breakout、star gunner、Asterix这几款游戏中,数据的积累非常重要,single game也是在学习量积累到一定程度之后才找到其中的规律,而每个游戏只能学习2000次的限制让EWC、SGD都无法取得进展(即便我们继续增加回合数,希望也很渺茫)。

2、在kangaroo这款游戏中,不同的学习尝试似乎反而促进了分数,EWC在数个回个之后曾取得多个超过single game的成绩(这跟人类玩游戏需要状态、灵感有点类似)。

3、在demon attack、defender、space invaders这几款游戏中,EWC在几个回合之后出现成绩下滑。即便后面多个回合继续研究也没有起色。这可能是由于学习次数不够,同时也有可能是因为EWC网络没有正确选择应该保留的神经网络组件的结果。

这次实验证明了EWC的确能够工作。但不同游戏下表现差异比较大。如何选择需要“记忆”的神经网络,每次学习的次数如何决定?这些硬性条件同样需要算法来平衡,我们甚至可以说现在的EWC算法是残缺的。

袁行远对这部分实验也指出了自己的几个看法:

1、DeepMind选择ATARI 2600游戏作为测试样本有其原因所在,虽然游戏种类、玩法、成绩不同,但输入都是一致的,这在一定程度上保证了神经网络的通用性质。

2、这次记忆体系的构建并不会直接打通强人工智能之路,这还是一个非常漫长的道路。

3、神经科学目前的积累基本已经被人工智能所“掏空”,接下来人工智能的进展还需要不断靠尝试推进。

记忆铺路,让强人工智能早日来临

正如上文所提到的那样,引入“记忆”最终是为了前往人工智能的终极目标——强人工智能,这也是最理想的道路之一。

袁行远就此分享了一下目前他所理解的两条前往强人工智能的道路——语言与记忆:“就比如AlphaGo,它现在的确很厉害,未来肯定能超过人类。但它目前还不能做到我最希望的一件事,把它下棋的经验写出来。这样虽然它能下过人类,但是人类并不能理解它的思考,那就等于对人类没有意义。”

那么怎么才能让AlphaGo学会写书呢?首先就是能够将AlphaGo的下棋经验记录下来,也就是记忆;其次还需要将这些记忆变成人类所能理解的代码、语言。

当然,此次DeepMind所尝试的算法还非常有限,并不能算作一个完整的记忆体系。究竟怎么样的记忆才是人工智能最需要的?袁行远表示:“记住东西是必须的,关键是要能够变成一本一本的书,也就是能够输出一个外部可以接受的成果。这样不同的人工智能能够交换知识,人类也可以进行学习。”

从时间长度来看,这些书本实际可以定义为一个个长期记忆,能够永久保存、更新就最好了。

至于语言方面,彩云AI最新产品“彩云小译”就是一款人工智能驱动的翻译产品。在之前接受Xtecher采访的时候他也曾强调过:“我们目前在做的是人与人之间语言的翻译,未来实际上同样也可以作为机器与人沟通的桥梁。”

最后,我们邀请袁行远给DeepMind的这次尝试做了一个评价:“的确有一定启迪,但是距离强人工智能还有很远很远距离。我倒不担心强人工智能会给人类带来威胁,毕竟他们同样也可能给人类带来巨大改变。”

人工智能,是时候长点“记性”了。

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“ai里面如何掏空,ai里面如何多选,ai如何掏空图片,ai如何掏空文字”边界阅读