上一篇我们讲到了AI历史上的两位开创人物:
Marvin Minsky:发明了世界上第一个强化学习神经网络SNARC
Frank Rosenblatt:发明了世界上第一台感知器(Perceptron)实现AI历史上最初级的图像识别。
Marvin 和Frank二人也是高中校友,都出自鼎鼎大名的布朗克斯科学高中(美国以盛产诺贝尔奖著称的顶尖高中),两人也是学术好友。
图片
然而,随着时间的推移,两人在学术道路上分道扬镳。实际上,在AI诞生初期,实现智能的方式就分成了两派,符号主义和连接主义。
- 符号主义:可以简单的理解为通过”程序语言(符号)”来“教“会机器变得智能,也就是说,所有机器运行的规律都是通过程序注入规则而产生的智能。
- 连接主义:可以简单的理解为模拟人脑神经元的”连接“过程来让机器自己”学习“,达到智能的目的,也就是上一篇里讲到的以”感知器“为开始的神经网络算法。今天我们所熟知的ChatGPT ,AIGC 工具底层主要是用的连接主义算法。
图片
2. 符号主义诞生
符号主义诞生之初最具代表性的产物就是John McCarthy(1971年图灵奖得主) 的LISP 语言,学习过计算机语言的朋友提起LISP,就像是拜”祖师爷“一样,甚至在二零零几年的时候,还有一股LISP的”文艺复兴“,用一个类比来说,LISP之于计算机语言相当于几何学中的《几何原本》。Python, js 这些你熟知的语言最早都可以追溯到LISP.
图片
对象编程之父Alan Kay (2003年图灵奖得主)曾说,”他的面向对象编程灵感一部分来自于LISP“.(参考Alan Kay自述)。
图片
放在今天可能我们都很难理解LISP和人工智能有啥关系?甚至有一位朋友说觉得LISP语言像一个玩具一样。但在ACM(美国计算机协会)的官网上,我们可以看到,60年前 John Mcarthy创建LISP,就是为了研究人工智能而产生一个重要工具。
图片
假使John McCarthy穿越活到今天,他可能会拍着程序员的肩膀说:哥们,你现在做的可比我当年的“人工智能”厉害多了。
当然符号主义后来的发展也绝不仅仅是LISP 编程语言。广义上讲,在2010s以前,符号主义及其衍生出来的各种机器学习算法几乎占据了AI历史的大半江山,留给连接主义的发展空间只有”涓涓细流“。我们暂把符号主义一派搁置放在后面讲,先看看连接主义是如何遭受重创的。
3. 连接主义遭受重创
本来AI 在1956年诞生后,学术界分成两派也无可厚非,并且两派都拿到了美国军方的”赞助“经费,可以说在1960年代,两派的实力悬殊并不大。
[批注]当时《纽约时报》对上一篇提到的Frank Rosenblatt的”马克一号感知器“的报道标题是《新海军设备边做边学:心理学家展示旨在阅读和变得更聪明的计算机胚胎》(NEW NAVY DEVICE LEARNS BY DOING: Psychologist Shows Embryo of Computer Designed to Read and Grow Wiser),可见”马克一号感知器“是为军方研制的。而在Marvin Minsky晚年接受采访时也提及1970年以前美国国防高级研究计划局DARPA(Defense Advanced Research Projects Agency)对科研的投资力度很大,这一时期被称为“AI Golden Time”。
然而随着时间的推移,Marvin所在的符号主义阵营越来越强大,其中必须要提的三位大人物是:
- John McCarthy:他和Marvin是普林斯顿博士期间的同学,曾在麻省理工任教和Marvin是同事。McCarthy就是LISP 语言的发明者,后来在1971获得图灵奖。
- Allen Newell:创办了当今世界计算机排名前三的CMU(卡耐基梅隆大学),后来在1975获得图灵奖。
- Herbert Simon:和Allen Newell一起创办CMU(卡耐基梅隆大学),后来在1975与Allen Newell同获图灵奖,同时还是1978的诺贝尔经济学奖得主。
这三位加上Marvin Minsky可以说是当时AI界的四大领军人物,地位不亚于今天的深度学习三巨头(辛顿,本杰明,杨立昆)。而连接主义的Frank Rosenblatt这一边的研究主要在康奈尔大学,显得形单影只。
图片
这种实力悬殊在1969年以Marvin Minsky 的一本书《Perceptrons》(感知器)达到高潮,这本书虽然以Frank发明的“Perceptrons”命名,却并非为连接主义发声,书中Marvin Minsky 明确的提出连接主义的缺陷,这意思仿佛是说:“不是我不懂,而是我懂所以我觉得不行”。而同一年Marvin Minsky 获得了计算机界的最高奖项图灵奖。
图片
可以想象,当时还仅仅在学术界处于“孕育”阶段,尚未走向市场的人工智能,有几个搞科研的人能石头碰鸡蛋去与图灵奖得主斗争,估计发一篇连接主义的论文,审稿人都会直接拒绝。
祸不单行,1970年,“连接主义之父”Frank在一次事故中意外去世,连接主义仅剩的“辩手”也是巨星陨落,预示着连接主义即将到来的寒冬。
图片
4. 连接主义的缺陷?
先抛开学术阵营,我们来看看Marvin Minsky反对连接主义的理由。在Marvin Minsky的《Perceptrons》,提到连接主义连一个最简单异或问题都无法解决,接下来就以异或问题为例看看Marvin的观点。
4.1 什么是异或
异或是一种逻辑计算,用数学符号表示是:A (XOR) B。举个例子,在判卷时,机器会拿着标准答案与考生答案做对比,二者不一致则判错,二者一致则判对。为了简单,我们拿判断题(答案为Y或者N)为例,如下图所示:
图片
我们把这个逻辑来建模,输入有两个值:
- X1 是标准答案
- X2是考生答案
输出有一个值:
- 当X1和X2相同,则输出正确,用0表示
- 当X1和X2不同,则输出错误,用1表示
我们将Y用1表示,N用0表示,那么对应的输入输出就有以下四种可能性:
X1(Input) |
X2(Input) |
Y=XOR(X1,X2) |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
这是一个非常简单的案例,但是当我们试着用连接主义的方法来解的时候,似乎不是那么容易。
4.2 用连接主义能解决异或问题吗?
按照上一篇讲的神经元模型:假设有两个输入,
- 当时,输出为1;
- 当 时,输出为0 。
我们把放在坐标系里,连接主义的观点是,神经元可以学习到权重参数,使我们可以划出一条线,能将进行分类,比如下图中:
- 位于位于直线上方的区域,神经元输出为1;
- 位于位于直线下方的区域,神经元输出为0;
图片
但是,当我们像刚才一样把异或运算的两个输入值画在的坐标系里,我们期待一条直线,能把异或的四对输入值(0,0), (0,1),(1,0),(1,1)分成两类,其中
- (0,0)和(1,1)为一类,他们对应神经元的输出为0,如下图红色点所示。
- (0,1)和(1,0)为一类,他们对应神经元的输出为1,如下图绿色点所示。
请问你是否可以找到一条线将红绿点分开?答案是不能。
图片
这样看起来,似乎感知器真的不能很简单的解决这样的异或问题。这也是Marvin 在挑战连接主义时经常举的例子。难道模拟人类神经网络的连接主义真的如此不堪一击吗?