几乎成了的代名词,正在被应用于各种领域,包括影像识别、语音识别、自然语言处理、自动驾驶、讯号分析、大数据分析和游戏。
这是一个瞬息万变的世界,每年都有新的模型被更新,大量的开放原始码到处流传,专用芯片开发企业更是如雨后春笋般涌现。
因此全球研究人员正透过模仿人类大脑组织方式,积极开发类技术,虽然一直有突破性的进展,但是现阶段的神经网络,还是缺乏实时变化的灵活性,以及难以快速适应陌生的状况,使得神经网络技术普及实用化的进程还是相当遥远。
根据不同应用开发出的神经网络模型
神经网络是模仿人类神经细胞网络的模型,由输入层、中间层(隐藏层)和输出层的神经元,以及连接它们的突触组成。而机器学习就是在大量数据的基础上,自动构建连接和它们的权重。
深度学习是指,使用具有多个中间层的神经网络的机器学习。深度学习使计算机能够提取自己的特征量,作为发现模式和规则时应该注意些什么,同时也能进行识别和其他作业,因此促进了热潮。
模型根据应用的不同,又分为影像识别的深度神经网络(DNN)、卷积神经网络(CNN)、语音识别的循环神经网络(RNN)和自然语言处理的Transformer。模型可以在不同的应用中进行整合,也可为每个应用开发出新模型。
深度神经网络(DNN)
DNN的隐藏层由一个卷积层和一个池化层组成。卷积层利用过滤上一层附近的节点,而可得到一个特征图。池化层进一步缩小卷积层输出的特征图,得到新的特征图,同时可在保持影像特性的同时,可以极大地压缩影像中的信息量。例如,在2012年ILSVRC影像识别比赛中,以压倒性的优势获胜,采用八层结构的AlexNet就引发了深度学习的热潮,随后经过改进而来的ResNet,其层数就达到了152层。因此,透过导入简化处理块的Residual模块,即使是在高层数的结构下,也能达到高效学习。
循环神经网络(RNN)
具有自我回馈的递归网络RNN,是一个适合处理包括语音波形、视讯和文本文件(字符串)等等时间序列数据的神经网络。例如神经网络中为了处理如语音等,可变长时间序列数据,将隐藏层的值再次回馈输入到隐藏层。当存取很久以前的数据,或出现运算量爆炸等问题时,可透过应用于自然语言处理的LSTM(长短时记忆)来解决。
Transformer
在自然语言处理方面,既不是透过RNN,也不是CNN,而是据由深度学习的Transformer取得了重大进展:这是一个只使用Attention(表示要注意句子中哪些单词的分数)的Encoder-Decoder模型,也可透过并行化来减少学习时间。在后续的技术改进下也相继开发出的BERT、GPT-2、T5等,甚至已超过了人类的语言处理能力。
而Conformer是一个结合CNN的模型,可被应用于语音识别,其能力已经超过RNN的最高准确性。Conformer结合了善于提取长时空依赖关系的Transformer,和善于提取局部关系的CNN。此外,一个新的影像识别模型-Vision Transformer也被开发出来,在进行影像识别时,所需要的运算资源比CNN少更少。
大型数据处理业者相争投入开发AI芯片
神经网络中的讯号处理,相当于将神经元乘以权重的数值加在一起,再透过高速运算乘积之和的操作来模仿大脑行为(高速积和加速器)。最近的主流配置是尽可能多铺设必要数量的图砖(Tile)来进行AI运算,例如,一个图砖被用于终端传感器控制,4-16个图砖用于中等规模的边缘处理,64个或更多图砖用于数据中心等服务器。
人工智能芯片的功能大致可分为推理和学习。两者都需要相同的高速乘积运算,但与推理相比,学习需要进行大量的乘积和运算,因此各大数据处理业者正积极投入这方面的研发,例如,Google目前正积极开发TPU来作为本身数据中心的AI芯片。第一代(2017年)有8位定点操作,只能用于推理,但第二代有16位浮点运算,则可以应用在学习。接下来第三代的性能则是120Tops @ 250W,最新的第四代载板设计了4颗TPU,且采用液体冷却,指令周期更是上一代的2.7倍。这些电路板被安装在一个个机柜内,然后通过高速传输线相互连接。
用于推理的人工智能芯片要求体积小、功耗低和实时处理。例如,Gyrfalco销售一种形状像USB随身碟的AI棒。采用的AI芯片是一款具有矩阵处理引擎,利用PIM(内存中处理器)技术来进行神经网络模型的计算处理,这个架构可降低与内存和计算电路之间的数据存取的功耗,芯片内部有大约28000个节点和10M bytes的内存,据称能够将通用模型所需的所有性能都能整合到芯片中。
NTT与东大合作开发新型类脑学习算法
对于深度神经网络的运算,日本NTT与东京大学合作下,开发了一种不需要准确掌握物理系统信息,适用于物理神经网络的新算法-「扩展DFA(Detrended Fluctuation Analysis)」。
图一A是这种算法的概况和结果的定位,这是基于深入研究了一种名为直接回馈排列法的学习算法,是将反向传播算法(Back Propagation;BP)修改为在大脑信息处理更容易实现的形式,并将其扩展到可在物理神经网络中实现。
这个方法是将神经网络最后一层的输出与所需输出讯号(误差讯号)之间的差值,透过随机元素的矩阵的线性变换来更新学习参数。运算过程不需要测量物理系统的状态,也不需要像BP法需要利用微分响应的物理模拟进行近似运算。
此外,这个运算可以在包括光路等物理系统上执行,除了可以在物理系统上有效地运算推理,还可以进行学习。这种新的学习方法不仅适用于物理实现中实现的神经网络模型,也适用于各种机器学习模型,包括实际用于机器翻译和其他应用的高级深度神经网络模型。
因此NTT与东京大学构建了一个光学神经网络(图一 B),证明了以前难以进行的光学神经网络学习,可以利用光学计算辅助推理和学习运算的可行性。这一成果将解决人工智能的计算时,功耗和计算时间增加的问题。
图一 : 物理系统的计算被纳入学习部分来提高效率;以及实际设备应用的光学神经网络。(source:日本NTT;作者整理)
适用于物理神经网络的扩展DFA法
DFA法是受到大脑信息处理的启发,因而进一步扩展为适合在物理神经网络中实现的形式。如图二A所示,传统的DFA法是透过随机矩阵对最后一层的误差,进行线性变换来训练深度神经网络学习;尽管比BP法更适用于物理神经网络,但仍然需要计算物理神经网络时,使用的非线性变换及其导数。
而NTT与东大扩展了DFA法技术,使这部分可以由一个任意的非线性函数代替。这完全省去了对物理系统的状态测量、基于微分响应的物理模拟的近似值,以及基于这些近似值的顺序反向传播演算。学习过程已被大幅度简化,实现了用物理神经网络几乎不可能的学习。此外在对各种深度学习模型的适用性应用于各种深度学习模型时,也可以适用于广泛的深度神经网络模型,包括从实际用于影像识别,和其他应用的高级模型(图二B)。
图二 : A现有和新开发的学习方法概述;B各种模型的基准检验结果。(source:日本NTT;作者整理)
图三A是使用构建系统对图像处理基准任务性能的比较结果,光学神经网络可达到最高性能。图三B则是显示了每单位影像的学习时间对神经元数量的依赖性。在小规模网络模型的情况下,速率决定了信息传输到光学硬件的处理时间,因此效果不如光学计算的计算加速效果大。
但是随着神经元数量的增加,可以发现光学神经网络计算在指令周期上比传统的数字电子计算更有优势。此外,由于人工智能运算的功耗,是由效率和计算时间的积和所决定的,因此加速计算有助于降低功耗。
图三 : A使用光学神经网络进行影像辨识测试(手写字符辨识、衣服影像辨识;B 每单位影像的运算时间对神经元数量的依赖性。(source:日本NTT;作者整理)
灵感来自于线虫的液体神经网络技术
2020年,由麻省理工学院Ramin Hasani和Matthias Lechner所领导的一个研究小组,推出了一种液体神经网络(Liquid Neural Network)的新形态神经网络,其灵感来自微小的线虫。这项技术是以模仿具有细长的线状身体的「线性动物」为参考基础,来开发出神经网络技术,达到前所未有的速度和灵活性,来实现「质」的跨越性进步,足以在某些应用中取代传统网络。
据加州大学伯克利分校的机器人工程师Ken Goldberg表示,根据实验结果显示,比起需要透过随时间变化,来进行建立模型的「连续时间神经网络」,这款「液体神经网络技术」,要来得更快、更准确(图四)。
图四 : 麻省理工学院Ramin Hasani和Matthias Lechner开发出新形态的液体神经网络。(source:麻省理工学院Ramin Hasani博士)
Hasani和Lechner在思考如何能建立出一个够灵活,且能快速适应新状况的反应性神经网络时,发现线虫是一个非理想可参考的生物体。线虫是少数具有完全反射的神经系统的生物之一,可以透过一个大约1mm长的神经系统,来完成一系列复杂的行为,包括迁移、觅食、睡眠、交配,甚至从经验中不断的学习,而且在现实世界中,线虫无论在任何环境或状况下都具有相当优秀的适应能力。
液体神经网络技术与传统的神经网络有很大的不同,传统的神经网络只提供特定时刻的结果。而液体神经网络技术是一种非常特别的神经网络架构,可以将神经元都是联系在一起,并且透过彼此之间具有相互依赖的特性,来描述系统于任何特定时间下的状态。
此外,在处理突触的方式上也有所不同,突触是人工神经元之间的连接。在标准的神经网络中,突触连接的强度,可以用单一的数值来表示「权重(weight)」。而另一方面,在液体神经网络中,神经元之间的讯号交换是透过「非线性」函数控制的随机过程,这意味着不会传回与输入成比例的响应(图五)。
图五 : MIT的研究人员基于蠕虫的启发,发现了一种更灵活的机器学习方法-液体神经网络,可以实时转换其底层算法,达到前所未有的速度和适应性。(source:Quanta Magazine)
只需利用基本运算获得精确的近似解
传统的神经网络算法是利用在训练期间调整「权重」的最佳值,但在面对大量数据的环境下,液体神经网络的适应性会来得更强。因为液体神经网络可以根据观察到的输入改变基础程序。例如在对自动驾驶汽车操作进行测试时,传统的神经网络只能定期分析来自汽车摄影机的视觉数据,虽然液体神经网络仅由19个神经元和253个突触所组成,按机器学习标准来说这个能力根本是非常薄弱,但事实上,该模型是允许对例如蜿蜒的道路等,复杂的道路进行更频繁的采样,因此液体神经网络能比传统神经网络,表现出更高的反应能力。
不过,在突触和神经元的非线性方程式,通常需要计算机多次运算才能得出解决方案。因此这也是液体神经网络的死穴,因为液体神经网络的突触和神经元的软件,由于是单独进行计算,再加上所使用的突触和神经元数量不多,因此运行速度非常慢。不过,这样的困境也被克服了。
在2022年11月新发表的一篇论文中表示,研究团队提出了一种新网络架构,不必透过复杂困难的运算来解决非线性方程式。这个架构是只需要利用基本运算,就可以获得近乎精确的近似解,大幅度的减少运算时间和能量,以及明显地提高了处理速度。
目前这个小组正用一架无人机测试最新的液体神经网络,最初的测试是在森林中进行的,但希望将来能移到城市环境中,看看在面对新的环境条件时自我调适能力。
结语:过度投入将导致泡沫热潮
神经运算是人工智能热潮的基础技术,在许多业者和机构的投入下,从材料到设备、硬件、软件到应用,都呈现迅速地发展的态势。此外,还有全方位的开放架构,进入门坎相当低,尤其是从应用的角度来看,也有相当多的开发工具可使用。
以目前来看,但最大的障碍可能是收集所需要的大量学习数据,例如在某些领域,由于隐私和其他问题,数据收集是非常困难的。
另外,有些应用领域更是缺乏关于缺陷和故障的数据,如预测性故障和故障分析。由于神经运算是一个以归纳方式给出答案的系统,因此有些人会抱怨,这和诉诸理性的演绎法不同。
然而,无论如何神经运算已经开始启动了,也呈现出非要达到目标的势头。为了解决上述问题,仍然需要技术的创新,可以说所有的技术领域都有商业机会。因此更要冷静地分析形势,不要被繁荣的景象所引诱,而又出现另一个泡沫热潮。