相对于电脑中的CPU芯片,人工智能系统中的神经元达到了什么水平?

0

计算机在海外的华文里被翻译成电脑,而电脑核心是CPU芯片,它至少是由二十亿只晶体管组成,这个CPU芯片也可以把它看成是一个巨大的电子网络。而人工智能系统的核心是计算机神经元,它是由各种不同结构的神经元网络组成。在比较这二者的计算能力和网络规模之前,我们先介绍一下什么是人工智能系统。

“人工智能”(Artificial Intelligence)这个名词正式出现,最早可以追溯到 1955 年 8 月 31 日由美国计算机科学家 John McCarthy 和他的同事 Marvin Minsky、Nathaniel Rochester 和 Claude Shannon 提出的,那是确立了人工智能这一研究领域的 Dartmouth 学院暑期人工智能研讨项目经典提议的一部分,这个提议名为《2 个月,10 人人工智能研究》(2 month, 10 man study of artificial intelligence)。

1956 年 Dartmouth 会议被后世广泛承认为人工智能诞生的标志。会议上提出的断言之一是“学习或者智能的任何其他特性的每一个方面都应能被精确地加以描述,使得机器可以对其进行模拟。”这次会议上人工智能的名称和任务得以确定,同时出现了最初的成就和最早的一批研究者。但在后来的30年,人工智能的发展并不顺利。这期间,有两个分支发展迅速,一个是机器人(Robotics)和专家系统(Expert Systems)原因是这个两个系统更加贴近应用。人工智能和专家系统最大的区别在于机器学习。

在上个世纪九十年代初,计算机神经元网络(NN,Neural Networks)兴起,这概念是从人体大脑中的神经元仿生而来,利用人体的神经元触发方式,每一个神经元都有自己输入和输出,如下图所示,这里的输入就是树突出,而输出则是轴突出。当然,人体大脑中的神经元要比计算机模拟的神经元复杂得多。在人体大脑中,每一个神经元就是一个节点,在计算机神经元中通常定义为一层,当然有不少神经元是重复的。现在估计人体的大脑中至少有200亿个神经元。

早期的计算机神经元都是很简单的,不超过三层,如下图所示,

相比人脑的神经元,这种计算机神经元网络连一岁小孩的智力都不如。而且当时的输入和输出都是采用二进制,所有数据都是在0和1之间的变换。在90年代时,上图中的隐藏层(hidden layer)就是一个转换函数(transfer function)。当然,输入可以有很多,不限于三个,同样,输出也不限于两个,转换函数的设计成为当时神经元网络是否有效的核心部件。因为当时电脑计算能力太有限,如果在内部再增加一层神经元网络,计算任务就会呈指数增加,这是当时的电脑计算能力无法完成的任务。所以,那一代的研究者把大部分精力放在设计转换函数,而不是在设计神经元网络本身。

1998年纽约大学的计算机系教授杨立昆 (Yann LeCun),2018年图灵奖获得者,发明了卷积神经元网络(CNN,Convolutional Neural Networks),此举改变了整个人工智能的方向。别看他取了一个很通俗的中国人名字,但他是法国人。他的这个贡献让所有在人工智能领域研究者把重点由原来的设计转换函数,集中到神经元网络结构的设计。这之后,不断有新的神经元网络结构产生。如,DNN,RNN等等。

比如说,2012年获奖的AlexNet就是一个深度卷积神经元网(8层神经元网络),DCNN, Deep Convolutional Neural Networks, 在2012年的视觉识别(visual recognition)的大赛中脱颖而出。继AlexNet之后,这种个性化的神经元网络层出不穷,不管各种深度学习用的人工智能网络结构如何变化,但作为人工智能学习网络的基本单元,计算机神经元网络(NN)始终不变。现在最复杂的人工智能系统中的神经元网络的单元(Neuron)数在几十万数量级,还没有达到百万级。相比人的大脑200亿的数量级,今天的计算机人工智能系统离人类大脑的智能相差的不是一点点。

回到最开始提出的问题,如何比较电脑和人工智能系统二者的计算能力和网络规模,我们先来介绍一下芯片的发展历程。

自1948年发明晶体管,到1974年发明集成电路,当时集成电路规模也就是几十个乃至几百个晶体管的规模,所以叫做小规模集成电路。那时候集成电路分两种,一种是模拟的,另一种是数字的,无论是模拟电路中的运算放大器,还是数字电路中的J-K触发器等都是在几十个到上百个晶体管的规模。等到第一代个人计算机出现,如因特尔的Intel 8080,那时的总晶体管数也是在2000个左右,这种电路称之为中规模集成电路。等到因特尔Intel 80386 CPU出来时,一个CPU里有27.5万晶体管,这种电路称之为大规模集成电路;等到因特尔的奔腾系列Intel 80586 CPU出来时,已经是310万晶体管,这种电路称之为超大规模集成电路。到了今天,无论是因特尔系列,还是ARM系列的CPU,它们的晶体管数量都在20至40亿左右。

说到这里,大家应该明白了吧,今天的人工智能系统的计算能力大约相当于上个世纪90年代个人电脑386芯片的水平,还在几十万神经元的规模,未来还有很长的路要走。不过,即便是386电脑的计算水平,在当时,这种系统也是能为企业的办公自动化,工业过程控制,金融证券管理,企业培训,个人游戏等领域做出很大贡献。今天人工智能系统同样会在很多领域大有作为。而现在人工智能应用的难度在于,很多人只能停留在别人设计好的神经元网络的应用,如人脸识别,一旦谷歌提供了一个设计好的人脸识别网络模型,刷脸的应用无处不在。而其他谷歌想不到的应用,比如中医的号脉,这个人工智能的应用就显得很落后。这就好像当时在386电脑时代,大部分人只会使用别人写好的应用软件,不会自己写应用软件,这可能才是目前中国在人工智能领域急需解决的问题。关于这一点,我们将另有文章介绍。

 

 

 

 

 

Loading

Leave a Reply