购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

学习感知机的权重和阈值

与我之前描述的符号化的通用问题求解器不同的是:感知机中没有任何对其需要执行的任务进行描述的明确规则,感知机中的所有“知识”都被编码在由数字组成的权重和阈值中。罗森布拉特在他的多篇论文中,都展示了在给定正确的权重和阈值的情况下,图1-3(B)中的感知机可以很好地完成感知任务,例如,识别简单的手写数字。但是,我们如何为一个给定的任务准确地设定正确的权重和阈值呢?罗森布拉特再次给出了一个受大脑启发的答案:感知机应该通过自己的学习获得这些数值。

那么,它应该如何学习获得正确的数值呢?与当时流行的行为心理学理论一样,罗森布拉特的观点是:感知机应该通过条件计算(conditioning)来学习。这是受到了行为主义心理学家伯勒斯·斯金纳(Burrhus F. Skinner)的启发,斯金纳通过给老鼠和鸽子以正向和负向的强化来训练它们执行任务,罗森布拉特认为感知机也应该在样本上进行类似的训练: 在触发正确的行为时奖励,而在犯错时惩罚。 如今,这种形式的条件计算在人工智能领域被称为监督学习(supervised learning)。在训练时,给定学习系统一个样本,它就产生一个输出,然后在这时给它一个“监督信号”,提示它此输出与正确的输出有多大偏离,然后,系统会根据这个信号来调整它的权重和阈值。

监督学习的概念是现代人工智能的一个关键部分,因此值得更详细的讨论。监督学习通常需要大量的正样本(例如,由不同的人书写的数字8的集合)和负样本(例如,其他手写的、不包括8的数字集合)。每个样本都由人来标记其类别——此处为“8”和“非8”两个类别,这些标记将被用作监督信号。用于训练系统的正负样本,被称为“训练集”(training set),剩余的样本集合,也就是“测试集”(test set),用于评估系统在接受训练后的表现性能,以观察系统在一般情况下,而不仅仅是在训练样本上回答的正确率。

也许,计算机科学中最重要的一个术语就是算法了,它指的是计算机为解决特定问题而采取的步骤的“配方”。罗森布拉特对人工智能的首要贡献是他对一个特定算法的设计,即感知机学习算法(perceptron-learning algorithm),感知机可以通过这一算法从样本中得到训练,来确定能够产生正确答案的权重和阈值。下面,我们来介绍它的工作原理。最初,感知机的权重和阈值被设置为介于-1和1之间的随机数。在我们的案例中,第一个输入的权重可被设置为0.2,第二个输入的权重被设置为-0.6,而阈值则被设置为0.7。一个名为随机数生成器(random-number generator)的计算机程序可以轻松生成这些初始值。

接下来就可以开始训练了。首先,将第一个训练样本输入感知机,此时,感知机还不知道正确的分类标记。感知机将每个输入乘以它的权重,并对所有结果求和,再将求得的和与阈值进行比较,然后输出1或0,其中,输出1代表它的输入为8,输出0代表它的输入不是8。接下来,将感知机的输出和人类标记的正确答案(“8”或者“非8”)做比较。如果感知机给出的答案是正确的,则权重和阈值不会发生变化,但是如果感知机是错误的,其权重和阈值就会发生变化,以使感知机在这个训练样本上给出的答案更接近于正确答案。此外,每个权重的变化量取决于与其相关的输入值,也就是说,对错误的“罪责”的分配取决于哪个输入的影响更大或更小。例如,在图1-3(A)的“8”中,强度较低的像素(这里为黑色)影响较大,而强度为255的像素(这里为纯白色)则不会有任何影响(对此感兴趣的读者,可以查阅我在注释中介绍的一些数学细节 17 )。

下一个训练将重复上述整个过程。感知机会将这个训练过程在所有的训练样本上运行很多遍,每一次出错时,感知机都会对权重和阈值稍做修改。正如斯金纳在训练鸽子时发现的:通过大量试验循序渐进地学习,其效果更好,如果在一次试验中,权重和阈值的改动过大,系统就可能以学到错误的东西告终。例如,过度关注于8的上半部分和下半部分的大小总是完全相等的。在每个训练样本上进行多次重复训练之后,(我们希望)系统最终将获得一组能够在所有训练样本上都能得出正确答案的权重和阈值。此时,我们可以用测试样本对感知机进行评估,以观察它在未曾训练过的图像上的表现。

如果你只关心数字8,那么这个“8”探测器就很有用,但若要识别其他数字呢?其实很简单,我们只需将感知机扩展到10个输出,每个输出对应一个数字就可以了。给定一个手写数字样本,与该数字对应的输出应该是1,而其他所有输出都应该是0。这个扩展的感知机可以使用感知机学习算法来获得其所有的权重和阈值,只需为它提供足够多的训练样本即可。

罗森布拉特等人证明了感知机网络能够通过学习执行相对简单的感知任务,而且罗森布拉特在数学上证明了:对于一个特定(即便非常有限)的任务类别,原则上只要感知机经过充分的训练,就能学会准确无误地执行这些任务。至于感知机在更一般的人工智能相关任务中会如何表现,我们尚不清楚。然而,这种不确定性似乎并没有阻止罗森布拉特和他在海军研究实验室的资助者对他们的算法做出荒唐的乐观预测。《纽约时报》对罗森布拉特于1958年7月组织的一次新闻发布会的报道,做出了如下说明:

今天,美国海军公布了一款预计能走路、说话、看东西、写字、自我复制,并能够意识到自我存在的电子计算机的雏形。据估计,感知机不久后就将能够识人,并叫出他们的名字,还能将一种语言的语音即时翻译成另外一种语言的语音和文字 18

是的,即便是刚出现的时候,人工智能就已在面临炒作的问题。稍后我将多讨论一些由这种炒作造成的不好的结果。现在,我想用感知机来强调人工智能的符号方法和亚符号方法之间的主要区别。

感知机的“知识”由它所学到的权重和阈值这对数值组成,这一事实,意味着我们很难发现感知机在执行识别任务时使用的规则。感知机的规则不是符号化的,不像通用问题求解器的符号,如“LEFT-BANK”“MISSIONARIES”“MOVE”等。感知机的权重和阈值不代表特定的概念,这些数字也很难被转换成人类可以理解的规则。这一情况在当下具有上百万个权重的神经网络中变得更加复杂。

有人可能会将感知机和人脑做一个粗略的类比。如果我能打开你的大脑,并对其中上千亿个神经元中的一部分进行观察,我可能并不能清楚你的想法或者你做某个特定决定时所用的规则。然而,人类的大脑已经产生了语言,它允许你使用符号(单词和短语)来向我传达你的想法,或者你做某件事的目的。从这个意义上说,我们的神经刺激可以被认为是亚符号化的,而以它们为基础的我们的大脑不知何故却创造了符号。类比于大脑中的亚符号化的神经网络,感知机以及更复杂的模拟神经元网络,也被称作“亚符号”派。这一派的支持者认为:若要实现人工智能,类似语言的符号和控制符号处理的规则,不能像在通用问题求解器中那样直接进行编程,而必须以类似于智能符号处理从大脑中涌现的方式,从类似于神经元的结构中涌现出来。 XsFfjMjqmfldTePVCd7dXj1tUTGjphsRhKJQoWq7vX4hAoeHMmgXaqcI4IwGfZ+x

点击中间区域
呼出菜单
上一章
目录
下一章
×