符号人工智能最初是受到数学逻辑以及人们描述自身意识思考过程的方式的启发。相比之下,亚符号人工智能方法则从神经科学中汲取灵感,并试图捕捉隐藏在所谓的“快速感知”背后的一些无意识的思考过程,如识别人脸或识别语音等。亚符号人工智能程序不包含我们在前文的传教士和食人者的例子中看到的那种人类可理解的语言。与之相反,一个亚符号人工智能程序本质上是一堆等式——通常是一大堆难以理解的数字运算。我稍后将做简要解释:此类系统被设计为从数据中学习如何执行任务。
亚符号、受大脑启发的人工智能程序的一个早期例子是感知机,它由心理学家弗兰克·罗森布拉特于20世纪50年代末提出 16 。“感知机”这个词对于我们现代人来说,听起来可能有点儿像20世纪50年代科幻小说中的词(正如我们所看到的,随后很快就出现了“认知机”和“神经认知机”)。感知机是人工智能的一个重要里程碑,同时也催生了现代人工智能最成功的工具——DNN。
罗森布拉特发明感知机是受到人脑中神经元处理信息的方式的启发。一个神经元就是大脑中的一个细胞,它能够接收与之相连的其他神经元的电或化学输入信号。简单地说,一个神经元把它从其他神经元接收到的所有输入信号加起来,如果达到某个特定的阈值水平,它就会被激活。重要的是,一个给定的神经元与其他神经元的不同连接(突触)有不同的强度,当计算信号输入总和的时候,给定的神经元会给弱连接分配较少的权重,而将更多的权重分配给强连接的输入。神经科学家认为,弄明白神经元之间的连接强度是如何调整的,是了解大脑如何学习的关键。
对于计算机科学家或者心理学家来说,信息在神经元中的处理过程可以通过一个有多个输入和一个输出的计算机程序(感知机)进行模拟。神经元和感知机之间的类比如图1-1所示。图1-1(A)展示了一个神经元及其树突(为细胞带来输入信号的结构)、胞体和轴突(即输出通道);图1-1(B)展示了一个简单的感知机结构。与神经元类似,感知机将其接收到的输入信号相加,如果得到的和等于或大于感知机的阈值,则感知机输出1(被激活),否则感知机输出0(未被激活)。为了模拟神经元的不同连接强度,罗森布拉特建议给感知机的每个输入分配一个权重,在求和时,每个输入在加进总和之前都要先乘以其权重。感知机的阈值是由程序员设置的一个数字,它也可以由感知机通过自身学习得到,这一点我们接下来会讲到。
图1-1 大脑中的神经元(A)和一个简单的感知机(B)
简而言之,感知机是一个根据加权输入的总和是否满足阈值来做出是或否(输出1或0)的决策的简易程序。在生活中,你可能会以下面这样的方式做出一些决定。例如,你会从一些朋友那里了解到他们有多喜欢某一部电影,但你相信其中几个朋友对于电影的品位比其他人更高,因此,你会给他们更高的权重。如果朋友喜爱程度的总量足够大的话(即大于某个无意识的阈值),你就会决定去看这部电影。如果感知机有朋友的话,那么它就会以这种方式来决定是否看一部电影。
受大脑神经元网络的启发,罗森布拉特提出可以应用感知机网络来执行视觉任务,例如人脸和物体识别。为了了解感知机网络是如何开展工作的,我们接下来将探索一个感知机如何执行特定的视觉任务,比如,识别图1-2所示的手写数字。
图1-2 一些手写数字
我们将感知机设计为“8”探测器,也就是说,如果其输入是一幅数字8的图像,则输出1;如果输入图像的内容是其他数字,则输出0。设计这样一个探测器需要我们先弄清楚如何将图像转换为一组数值输入,再确定感知机的权重分配和阈值,以使感知机能够产生正确的输出(8为1,其他数字为0)。由于后续章节关于神经网络及其在计算机视觉中的应用的讨论中会出现许多与之相同的想法,因此我将在这里进行一些详细的介绍。