作者 | 蒋宝尚
编辑 | 贾伟
他山之石,可以攻玉。对于人工智能研究,脑科学无异是最重要的「他山之石」了。
近年来,人工智能在经历过一波由深度学习带来的火爆之后,已然进入深水区;如何通向强人工智能,逐渐成为智能研究的各界人士共同关注的中心话题。「类脑计算」正是智能研究人员尝试以脑科学之「石」攻智能之「玉」的重要方向。
5月19日,在中国图象图形学学会主办的「CSIG·云讲堂」上,中国科学院自动化研究所余山研究员作了“从脑网络到类脑网络计算”主题报告。余山研究员借鉴Marr对视觉体系的划分,将类脑计算的研究分为四个层面:硬件、算法、计算、学习。针对每一层面,余山研究员做了或简或详的介绍,颇有启发。
余山研究员认为,尽管当前人类对大脑的认知并不充分,但这并不阻碍智能研究的各界人士去借鉴已有的神经科学和脑科学的知识,从而来发展对智能系统的研究和设计。
传统计算机使用的是冯诺依曼架构,其基本架构如上图所示,包括控制器、运算器、记忆单元、输入系统和输出系统等五个组成部分;其中控制器和运算器构成了处理单元(CPU)。
做数据处理时,计算机把数据从存储单元调到处理单元,运算之后再返回到存储单元。但这种操作方式,会导致存储单元和处理单元之间进行非常高频的数据搬运,从而带来极高的能耗。
图注:其中时钟频率代表数据在存储单元和处理单元之间调用的速度。能量频率代表功率。
尽管近年来计算机有高速的发展,GPU时钟频率不断提升,但随之而来的也是能量密度的逐年提升。以IBM在2000年开发的一个用来做生物信息学研究的计算机为例,其包含了144TB的内存, 14万个处理器,功耗高达1.4兆瓦。每当这台计算机运行时,就必须有一个专门的电站为其供能。
反过来,我们看人脑,具有如此高的智能,然而其功耗却只有20瓦左右,仅相当于一颗黯淡的白炽灯的能耗。如此大的差别,原因是什么呢?原因自然很多,但重要的一点是,不同于冯诺依曼机,人脑的计算是“存算一体”。在人脑的神经网络中, 信息的存储和处理并不分开,神经网络本身即是存储器,又是处理器。
借鉴人脑的这种特点,近年来,有越来越多的研究团队加入了“存算一体”芯片研制中,其中IBM研制的TrueNorth和清华大学研制的Tianjic是这方面最出色的代表。这种芯片被称为神经形态或神经拟态芯片,极大地解决了数据频繁搬运所带来的能耗问题。
在算法层面,生物脑和人工神经网络之间也有非常重要联系。余山研究员在报告中提了两个例子。第一个例子是突触的概率释放与Dropout算法之间的关系。
生物神经网络中,神经元之间的连接是通过一个叫做突触的结构进行的,这个结构也是两个神经元之间进行信息交互的地方。当前神经元有一个动作电位时,它会释放某种神经递质,这种递质被后神经元吸收之后便会转化为电信号,从而实现电信号在神经元之间的传递。
这里面两个神经元之间信息传递的关键是:电信号促使化学物质释放。这种方式存在缺点,即神经冲动导致神经递质释放并不总是成功——成功概率的中位数仅在0.2~0.3之间,也即有80%左右的概率会出现信息传输失败。然而,如此低的成功率却有它独特的意义。低成功率,可以使神经网络更快、更好地学习。
人工神经网络训练方法Dropout正是对这种现象最好的借鉴:在网络训练时,随机关闭某些神经元;而在测试时,让所有神经元都工作。结果显示,利用这种方法,神经网络的学习能力将有明显地提高。第二个例子是有关神经网络的临界状态。我们先介绍一个概念:神经元的传播系数。简单来理解,即一个神经元能够激活的神经元个数。
我们看上图,当传播系数大于 1时,随着时间的发展,系统中信号的传播将会产生爆炸;而当传播系数小于 1时,由于每一次传播后激活神经元的个数都在变少,因此最终信号会呈指数消退;只有当传播系数等于 1 时,系统才会保持相对的稳定。
我们将这种传播系数等于 1 的稳定状态称为临界状态,而>1的情况称为超临界状态,< 1的情况称为亚临界状态。显然无论是亚临界还是超临界,都不利于信息的传递和处理。只有在临界状态,信息才能够通过神经元的活动把信息保持并传播下去。
临界状态下,网络错误率往往会比较低。但,从上图中可以看出,临界状态是非鲁棒的,稍微有一点扰动,其性能便会受到很大的影响。如何解决这一问题,在保持高性能的情况下同时还具有较高的鲁棒性?大脑给了我们可以借鉴的答案:自适应机制。
神经科学家根据生物实验,提出了模拟模型,让网络模型能够自适应地学习传播系数。结果如上图所示,正常情况下,临界状态很窄;而采用自适应模型,临界状态的宽度便大大地增宽。
同样的,在人工神经网络中,也存在着信息传输所带来的网络爆炸或快速消失的问题,即所谓“梯度消散”。针对这一问题,目前主流的解决方案是用Batch Norm或 Layer Norm,也即在人工神经网络中,每两个处理层次之间添加一个专门的处理层;这个层的作用是把前面传来的信号做增强或衰减的调整,从而使后面层的反应不至太强或太弱。
但新增层必然会带来额外的计算负担。大脑就没有这种额外层。能否借鉴大脑的机制,通过某种方式,在不使用额外层的情况下,同时还能够保持网络的信息传播平衡呢?
相较于算法层面,在计算层面的借鉴稍显抽象。余山研究员结合他们近期发表在《Nature Machine Intelligence》上的一篇工作,做了相应的介绍。
人类作为智慧生物,最重要的特征便是能够"适应环境变化,实现自身目的"。人类大脑不仅可以在新的环境中不断吸收新的知识,而且可以根据不同的环境灵活调整自己的行为。
作为对应,当前以DNN为代表的神经网络,尽管可以建立输入输出之间非常复杂的映射关系,用于识别、分类和预测。
但是一旦学习阶段结束,它所能做的操作就固化了,既难以方便的学习新的映射,也不能对实际环境中存在情境信息(比如自身状态,环境变化、任务变化等)做出灵活的响应,难以满足复杂多变的需求,即缺少情境依赖学习(contextual-dependent learning)的能力。那么,我们如何借鉴脑科学知识呢?
据脑科学家的研究表明,大脑的结构,除了感觉输入、运动输出这个通路之外,还存在一个调控的通路(主要在大脑前额叶发挥作用,因此也可以说,前额叶区决定了人的随机应变能力)。这个调控通路在很大程度上决定了人的灵活应变能力。
受此启发,余山等人提到了一种PFC-like的新网络架构,在输入输出之间加入了一个情境处理模块(CDP)。CDP模块的作用便是在输入输出之间,根据Context对结果进行旋转,从而能够依据上下文动态调整网络内部信息。
它包括两个子模块:1、编码子模块,其负责将情境信息编码为适当的控制信号;2、“旋转”子模块,其利用编码模块的控制信号处理任务输入(由于其功能上相当于将特征向量在高维空间上进行了旋转,故称为“旋转”子模块)。结果喜人!
图注:同一个分类器对于同样的输入,连续学习40种不同人脸属性的分类任务(蓝色数据点),正确率与用40个分类器的系统(橙色线)几乎一致。
他们在CelebA数据集上进行测试。按照传统的模型,针对数据集上的40个类型,需要训练40个模型才能完成任务,而采用CDP模块后,一个模型能解决所有分类问题,且性能不降。若想进一步了解这个奇妙的思想,可参看文章:《国内首发Nature子刊 Machine Intelligence论文:思想精妙,或对DNN有重大改进!》
学习层面,神经网络面临的一个重要问题是灾难性遗忘,即神经网络在学习不同的任务时,如果不是把不同任务的训练样本混在一起去训练,往往在学习新的任务时候,网络就会把从旧任务中学到的知识忘掉。
以上图为例,先让神经网络识别「狗」,得到一个性能非常高的网络;继而再让网络去学习识别「猫」,这时网络的权重就会重新调整;学完之后再拿来去识别「狗」,神经网络的性能就会大幅下降,甚至不能使用。
原因就在于,当学习「猫」的任务时,网络把针对「狗」的任务学到的知识给忘了。然而,人脑却没有这种所谓「灾难遗忘」的问题。人类先后顺序地学习不同的任务,最后识别能力还能不断提升。针对这一问题,余山研究员在上面提到的那篇文章中提出一种称为「正交权重修改 (Orthogonal Weights Modification,OWM) 」的算法。
图:OWM算法原理示意图。(a): 在权重更新时,OWM算法只保留传统BP算法计算的权重增量中与历史任务输入空间正交的部分;(b): 在新任务中,OWM算法将神经网络对解的搜索范围约束在旧任务的解空间中。
OWM算法的核心思想很简单,即通过 P 映射之后,学习新任务的解仍然在旧任务的解空间当中。正如其名“正交权重修改”,在学习新任务时,只在旧任务输入空间正交的方向上修改神经网络权重。如此,权重增量几乎不与以往任务的输入发生作用,从而保证了网络在新任务训练过程中搜索到的解,仍处在以往任务的解空间中。数学上,OWM通过正交投影算子P与误差反传算法得到的权重增量△w作用来实现其目的,即最终的权重增量△w=kp△w,这里k为系数。OWM算法实现了对网络中已有知识的有效保护,并可以与现有梯度反传算法完全兼容。
如上图所示,余山等人在ImageNet 上做了测试,选取 1000个类,特征提取器使用ResNet152,在训练分类器时:
1)当采用传统的SGD方法,任务混合训练时,准确率为78.31%;
2)在采用SGD,但所有任务顺序训练时,准确率直降到4.27%,这正是「灾难性遗忘」的结果;
3)当采用OWM方法,任务顺序训练时,结合经过预训练的特征提取器,准确率能够达到75.24%,性能媲美于SGD的混合训练。
余山等人同样在手写字数据集HWDB上进行了测试,包含3755个类,特征提取器选用ResNet18,同样可以看到,采用OWM顺序训练分类器依然能够保持较高的性能。
值得一提的是,算法具有优良的小样本学习能力,以手写体汉字识别为例,基于预训练的特征提取器,系统可以从仅仅数个正样本中就能连续的学习新的汉字。上图中显示在3755个类(汉字)上,仅需要在10个类上进行连续学习,便能够达到90%以上的性能。
OWM算法有效地克服了灾难性遗忘的难题,使得单个神经网络不仅可以先学「狗」再学「猫」,而且可以逐渐的学习多达数千个类型的识别。这一新型学习算法和前面介绍的情境依赖处理 (CDP) 模块配合,能够使人工神经网络具备强大的连续学习和情境依赖学习能力。
其中,OWM 算法可以有效克服神经网络中的灾难性遗忘,实现连续学习;而受大脑前额叶皮层启发的 CDP 模块可以有效整合情境信息,调制神经网络的信息处理过程。二者结合便有望让智能体通过连续不断的学习去适应复杂多变的环境,从而逐步逼近更高水平的智能。
除了上面四个层次的借鉴之外,余山老师还介绍了如何将先验知识压缩并注入神经网络、从符号计算到语义理解、从有监督的分类训练到无监督的重构和预测等类脑计算的思路。如何将先验知识压缩并注入神经网络。
认知学家曾经做过一个实验,即从小教一个黑猩猩学习语言,发现黑猩猩在语言学习上远远不能达到人类的高度。这说明我们人类大脑有先天的神经结构能够让我们容易学习语言,这种先天结构即为先验知识。作为对比,当前的神经网络基本上没有先验知识,都得从头学起。
那么我们是否可以借鉴大脑积累先验知识的机制,来设计人工神经网络呢?从符号计算到语义理解。目前的自然语言处理系统训练的材料是语料,纯粹是文字或符号。
以中文屋(Chinese Room)实验为例,里面纯粹是做一些非常简单的信息处理工作,只是一个符号到符号的处理过程,并没有真正理解内在的含义。因此NLP的研究,若想克服这个问题,未来必然需要向大脑学习。有监督的分类训练到无监督的重构和预测。
当前,训练好的做分类任务的神经网络在复杂环境下往往性能并不好。但对比一下,人类的视觉系统并没有使用监督信号去训练分类任务,例如小孩学习识别物体,完全是靠自监督的方式看这个世界的。因此,真正的强人工智能可能并不是现在这种端到端的有监督训练,而是采用类脑的分阶段的、包含无监督或自监督的训练方式。最近机器学习领域的进展,也说明了这一策略正逐渐受到人们的关注。
余山研究员总结道,虽然我们对于大脑的了解尚不完备,生物脑和人工神经网络的结构也有很大的差异,但是这并不是开展类脑计算研究的本质障碍。
神经科学和认知科学的研究已经发现了大脑的很多机制性原理,这些知识足够指导我们不断改善智能系统的设计,最终有望实现在不同层面上受脑启发的更加强大和高效的人工智能系统。
(雷锋网)、(雷锋网)、(雷锋网)