了。他们俩最初都是心理学家,但他们对符号处理器感到失望并共同研制了处理单词的“相 互作用激励器”的模型。在克里斯托夫·朗格特-希金斯(Christopher Longuet--Higgins)的 另一位学生杰弗里·希尔顿(Geoffrey Hinton)的鼓励下,他们着手研究一个更加雄心勃勃 的“联结主义”方案。他们采纳了平行分布式处理这个术语,因为它比以前的术语一一联想 记忆②一一的覆盖面更广。 在人们发明网络的初期,一些理论家勇敢地开始了尝试。他们把一些仍显笨拙的小型电子 回路(其中常包括有老式继电器)连接在一起来模拟他们的非常简单的网络。现在已发展出 了复杂得多的神经网络,这得益于现代计算机的运算速度得到了极大的提高,也很便宜。现 在可以在计算机(这主要是数字计算机)上模拟检验关于网络的新思想,而不必像早期的研 究那样仅靠粗糙的模拟线路或是用相当困难的数学论证。 1986年出版的《平行分布式处理》一书从1981年底开始经过了很长时间的酝酿。这很幸 运,因为它是一个特殊算法的最新发展(或者说是它的复兴或应用),在其早期工作基础上, 很快给人留下了深刻的印象。该书的热情读者不仅包括脑理论家和心理学家,还有数学家、 物理学家和工程师,甚至有人工智能领域的工作者。不过后者最初的反应是相当敌视的。最 终神经科学家和分子生物学家也对它的消息有所耳闻。 该书的副标题是“认知微结构的探索”。它是某种大杂烩,但是其中一个的特殊的算法产 生了惊人的效果。该算法现在称作“误差反传算法”,通常简称为“反传法”。为了理解这 个算法,你需要知道一些关于学习算法的一般性知识。 在神经网络有些学习形式被称作是“无教师的”。这意味着没有外界输入的指导信息。对 任何连接的改变只依赖于网络内部的局部状态。简单的赫布规则具有这种特点。与之相反, 在有教师学习中,从外部向网络提供关于网络执行状况的指导信号。 无教师学习具有很诱人的性质,因为从某种意义上说网络是在自己指导自己。理论家们设 计了一种更有效的学习规则,但它需要一位“教师”来告诉网络它对某些输入的反应是好、 是差还是很糟。这种规则中有一个称作“δ律”。 训练一个网络需要有供训练用的输入集合,称作“训练集”。很快我们在讨论网络发音器 (NETtalk)时将看到一个这样的例子。这有用的训练集必须是网络在训练后可能遇到的输 入的合适的样本。通常需要将训练集的信号多次输入,因而在网络学会很好地执行之前需要 进行大量的训练。其部分原因是这种网络的连接通常是随机的。而从某种意义上讲,脑的初 始连接是由遗传机制控制的,通常不完全是随机的。 网络是如何进行训练的呢?当训练集的一个信号被输入到网络中,网络就会产生一个输 出。这意味着每个输出神经元都处在一个特殊的活动状态。教师则用信号告诉每个输出神经
了。他们俩最初都是心理学家,但他们对符号处理器感到失望并共同研制了处理单词的“相 互作用激励器”的模型。在克里斯托夫·朗格特-希金斯(Christopher Longuet-Higgins)的 另一位学生杰弗里·希尔顿(Geoffrey Hinton)的鼓励下,他们着手研究一个更加雄心勃勃 的“联结主义”方案。他们采纳了平行分布式处理这个术语,因为它比以前的术语——联想 记忆②——的覆盖面更广。 在人们发明网络的初期,一些理论家勇敢地开始了尝试。他们把一些仍显笨拙的小型电子 回路(其中常包括有老式继电器)连接在一起来模拟他们的非常简单的网络。现在已发展出 了复杂得多的神经网络,这得益于现代计算机的运算速度得到了极大的提高,也很便宜。现 在可以在计算机(这主要是数字计算机)上模拟检验关于网络的新思想,而不必像早期的研 究那样仅靠粗糙的模拟线路或是用相当困难的数学论证。 1986 年出版的《平行分布式处理》一书从 1981 年底开始经过了很长时间的酝酿。这很幸 运,因为它是一个特殊算法的最新发展(或者说是它的复兴或应用),在其早期工作基础上, 很快给人留下了深刻的印象。该书的热情读者不仅包括脑理论家和心理学家,还有数学家、 物理学家和工程师,甚至有人工智能领域的工作者。不过后者最初的反应是相当敌视的。最 终神经科学家和分子生物学家也对它的消息有所耳闻。 该书的副标题是“认知微结构的探索”。它是某种大杂烩,但是其中一个的特殊的算法产 生了惊人的效果。该算法现在称作“误差反传算法”,通常简称为“反传法”。为了理解这 个算法,你需要知道一些关于学习算法的一般性知识。 在神经网络有些学习形式被称作是“无教师的”。这意味着没有外界输入的指导信息。对 任何连接的改变只依赖于网络内部的局部状态。简单的赫布规则具有这种特点。与之相反, 在有教师学习中,从外部向网络提供关于网络执行状况的指导信号。 无教师学习具有很诱人的性质,因为从某种意义上说网络是在自己指导自己。理论家们设 计了一种更有效的学习规则,但它需要一位“教师”来告诉网络它对某些输入的反应是好、 是差还是很糟。这种规则中有一个称作“δ律”。 训练一个网络需要有供训练用的输入集合,称作“训练集”。很快我们在讨论网络发音器 (NETtalk)时将看到一个这样的例子。这有用的训练集必须是网络在训练后可能遇到的输 入的合适的样本。通常需要将训练集的信号多次输入,因而在网络学会很好地执行之前需要 进行大量的训练。其部分原因是这种网络的连接通常是随机的。而从某种意义上讲,脑的初 始连接是由遗传机制控制的,通常不完全是随机的。 网络是如何进行训练的呢?当训练集的一个信号被输入到网络中,网络就会产生一个输 出。这意味着每个输出神经元都处在一个特殊的活动状态。教师则用信号告诉每个输出神经
元它的误差,即它的状态与正确之间的差异,δ这个名称便来源于这个真实活动与要求之间 的差异(数学上δ常用来表示小而有限的差异)。网络的学习规则利用这个信息计算如何调 整权重以改进网络的性能。 Adaline网络是使用有教师学习的一个较早的例子。它是1960年由伯纳德威德罗(Bernard widrow)和霍夫(ME.Hoff)设计的,因此δ律又称作威德罗-霍夫规则。他们设计规则使 得在每一步修正中总误差总是下降的。①这意味着随着训练过程网络最终会达到一个误差的 极小值。这是毫无疑问的,但还不能确定它是真正的全局极小还是仅仅是个局域极小值。用 自然地理的术语说就是,我们达到的是一个火山口中的湖,还是较低的池塘。海洋,还是像 死海那样的凹下去的海(低于海平面的海)? 训练算法是可以调节的,因而趋近局域极小的步长可大可小。如果步长过大,算法会使网 络在极小值附近跳来跳去(开始时它会沿下坡走,但走得太远以致又上坡了)。如果步子小, 算法就需要极长的时间才能达到极小值的底端。人们也可以使用更精细的调节方案。 反传算法是有教师学习算法中的一个特殊例子。为了让它工作,网络的单元需要具有一些 特殊性质。它们的输出不必是二值的(即,或0,或者十1或-1),而是分成若干级。它通 常在0到+1之间取值。理论家们盲目地相信这对应于神经元的平均发放率(取最大发放率 为十1),但他们常常说不清应该在什么时候取这种平均。 如何确定这种“分级”输出的大小呢?像以前一样,每个单元对输入加权求和,但此时不 再有一个真实的阈值。如果总和很小,输出几乎是0。总和稍大一些时,输出便增加。当总 和很大时,输出接近于最大值。图54所示的S形函数(sigmoid函数)体现了这种输入总和 与输出间的典型关系。如果将一个真实神经元的平均发放率视为它的输出,那么它的行为与 此相差不大。 这条看似平滑的曲线有两个重要性质。它在数学上是“可微的”,即任意一处的斜率都是 有限的:反传算法正依赖于这个特性。更重要的是,这条曲线是非线性的,而真实神经元即 是如此。当(内部)输入加倍时输出并不总是加倍。这种非线性使得它能处理的问题比严格 的线性系统更加广泛。 现在让我们看一个典型的反传网络。它通常具有三个不同的单元层(见图55)。最底层 是输入层。下一层被称作“隐单元”层,因为这些单元并不直接与网络外部的世界连接。最 顶层是输出层。最底层的每个单元都与上一层的所有单元连接。中间层也是如此。网络只有 前向连接,而没有侧向连接,除了训练以外也没有反向的投射。它的结构几乎不能被简化。 训练开始的时候,所有的权重都被随机赋值,因而网络最初对所有信号的反应是无意义的。 此后给定一个训练输入,产生输出并按反传训练规则调节权重。过程如下:在网络对训练产
元它的误差,即它的状态与正确之间的差异,δ这个名称便来源于这个真实活动与要求之间 的差异(数学上δ常用来表示小而有限的差异)。网络的学习规则利用这个信息计算如何调 整权重以改进网络的性能。 Adaline 网络是使用有教师学习的一个较早的例子。它是 1960 年由伯纳德·威德罗(Bernard widrow)和霍夫(M.E.Hoff)设计的,因此δ律又称作威德罗-霍夫规则。他们设计规则使 得在每一步修正中总误差总是下降的。①这意味着随着训练过程网络最终会达到一个误差的 极小值。这是毫无疑问的,但还不能确定它是真正的全局极小还是仅仅是个局域极小值。用 自然地理的术语说就是,我们达到的是一个火山口中的湖,还是较低的池塘。海洋,还是像 死海那样的凹下去的海(低于海平面的海)? 训练算法是可以调节的,因而趋近局域极小的步长可大可小。如果步长过大,算法会使网 络在极小值附近跳来跳去(开始时它会沿下坡走,但走得太远以致又上坡了)。如果步子小, 算法就需要极长的时间才能达到极小值的底端。人们也可以使用更精细的调节方案。 反传算法是有教师学习算法中的一个特殊例子。为了让它工作,网络的单元需要具有一些 特殊性质。它们的输出不必是二值的(即,或 0,或者+1 或-1),而是分成若干级。它通 常在 0 到+1 之间取值。理论家们盲目地相信这对应于神经元的平均发放率(取最大发放率 为+1),但他们常常说不清应该在什么时候取这种平均。 如何确定这种“分级”输出的大小呢?像以前一样,每个单元对输入加权求和,但此时不 再有一个真实的阈值。如果总和很小,输出几乎是 0。总和稍大一些时,输出便增加。当总 和很大时,输出接近于最大值。图 54 所示的 S 形函数(sigmoid 函数)体现了这种输入总和 与输出间的典型关系。如果将一个真实神经元的平均发放率视为它的输出,那么它的行为与 此相差不大。 这条看似平滑的曲线有两个重要性质。它在数学上是“可微的”,即任意一处的斜率都是 有限的;反传算法正依赖于这个特性。更重要的是,这条曲线是非线性的,而真实神经元即 是如此。当(内部)输入加倍时输出并不总是加倍。这种非线性使得它能处理的问题比严格 的线性系统更加广泛。 现在让我们看一个典型的反传网络。它通常具有三个不同的单元层(见图 55)。最底层 是输入层。下一层被称作“隐单元”层,因为这些单元并不直接与网络外部的世界连接。最 顶层是输出层。最底层的每个单元都与上一层的所有单元连接。中间层也是如此。网络只有 前向连接,而没有侧向连接,除了训练以外也没有反向的投射。它的结构几乎不能被简化。 训练开始的时候,所有的权重都被随机赋值,因而网络最初对所有信号的反应是无意义的。 此后给定一个训练输入,产生输出并按反传训练规则调节权重。过程如下:在网络对训练产