/ 17浏览

神经网络与机器学习 第 0 章 导言

0.1 什么是神经网络

自从认识到人脑计算与传统的数学计算机相比是完全不同的方式开始,关于人工神经网络(一般称为“神经网络”(neural network))的研究工作就开始了。人脑是一个高度复杂的、非线性的和并行的计算机器(信息处理系统)。人脑能够组织它的组成成分,即神经元,以比今天已有的最快的计算机还要快许多倍的速度进行特定的计算(如模式识别、感知和发动机控制)。例如,考虑人类视觉,这是一个信息处理任务。视觉系统的功能是为我们提供一个关于周围环境的表示,并且更重要的是提供我们与环境交互(interact)所需的信息。具体来说,完成一个感知识别任务(例如识别一张被嵌入陌生场景的熟悉的脸)人脑大概需要 100~200 毫秒,而一台高效的计算机却要花费比人脑多很多的时间才能完成一个相对简单的任务。

再举一个例子:考虑一只蝙蝠的声呐。声呐就是一个活动回声定位系统。除了提供目标(例如飞行的昆虫)有多远的信息外,蝙蝠的声呐可以搜集目标的相对速度、目标大小、目标不同特征的大小以及它的方位角和仰角的信息。所有这些信息都从目标回声中提取,而所有需要的复杂神经计算只在李子般大小的脑中完成。事实上,一只回声定位的蝙蝠可以灵巧地以很高的成功率追逐和捕捉目标,这一点足以以使雷达或声呐工程师们自叹不如。

那么,人脑或蝙蝠的脑是如何做到这一点的呢?脑在出生的时候就有很复杂的构造和具有通过我们通常称为的“经验”来建立它自己规则的能力。确实,经验是经过时间积累的,人脑在出生后头两年内发生了非常大的进化(即硬接线),但是进化将超越这个阶段并继续进行。

一个“进化中”的神经系统是与可塑的大脑同义的。可塑性(plasticity)允许进化中的神经系统适应(adapt)其周边环境。可塑性似乎是人类大脑中作为信息处理单元的神经元功能的关键,同样,它在人工神经元组成的神经网络中亦是如此。最普通形式的神经网络,就是对人脑完成特定任务或感兴趣功能所采用的方法进行建模的机器。网络一般用电子原件实现或者用软件在数学计算机上模拟。为了获得良好性能,神经网络使用一个很庞大的简单计算单元间的相互连接,这些简单计算单元称为“神经元”或者“处理单元”。据此我们给出将神经网络看作一种自适应机器的定义:

神经网络是由简单处理单元构成的大规模并行分布式处理器,天然地具有存储经验知识和使之可用的特性。神经网络在两个方面与大脑相似:

  1. 神经网络是通过学习过程从外界环境中获取知识的。
  2. 互连神经元的连接强度,即突触权值,用于存储获取的知识。

用于完成学习过程的程序称为学习算法​,其功能是以有序的方式改变网络的突触权值以获得想要的设计目标。

对突触权值的修改提供了神经网络设计的传统方法。这种方法和线性自适应滤波器理论很接近,而滤波器理论已经很好地建立起来并被成功地应用在很多领域(Widrow and Stearns,1985;Haykin,2002)。但是,受人脑的神经元会死亡以及新的突触连接会生长的事实所启发,神经网络修改它自身的拓扑结构也是可能的。

神经网络的优点

很明显,神经网络的计算能力可通过以下两点得到体现:第一,神经网络的大规模并行分布式结构;第二,神经网络的学习能力以及由此而来的泛化能力。泛化(generalization)​是指神经网络对未在训练(学习)过程中遇到的数据可以得到合理的输出。这两种信息处理能力让神经网络可以找到一些当前难以处理的复杂(大规模)问题的好的近似解。但在实践中,神经网络不能单独做出解答,它们需要被整合在一个协调一致的系统工程方法中。具体来说,一个复杂问题往往被分解​成若干个相对简单的任务,而神经网络处理与能力相符的子任务。但是,我们在建立一个可以模拟人脑的计算机结构(如果可能)之前还有很长的路要走,认识这一点是很重要的。

神经网络具有下列有用的性质和能力:

  1. 非线性(nonlinearity) ​:人工神经元可以是线性或者非线性的。由非线性神经元相互连接而成的神经网络自身是非线性的,并且从某种特别意义上来说非线性是分布于整个网络总共的。非线性是一个非常重要的特性,特别使当产生输入信号(如语音信号)的内部物理机制是天生非线性的时候。
  2. 输入输出映射(input-output mapping) ​:称之为有教师学习(learning with a teacher)​或监督学习(supervised learning)​的关于学习的流行方法。它使用带标号的训练样例(training example)​或任务样例(task example)​对神经网络的突触权值进行修改。每个样例由一个唯一的输入信号(input signal)​和相应的期望(目标)响应(desired(target)response)​组成。从一个训练集中随机选取一个样例提供给网络,网络就调整它的突触权值(自由参数),以最小化期望响应和由输入信号以适当的统计准则产生的网络实际响应之间的差别。使用训练集中的很多样例来重复训练神经网络,直到网络达到对突触权值没有显著修正的稳定状态为止。先前已经使用过的训练样例可能还要在训练期间以不同顺序重复使用。因此对当前问题来说,神经网络是通过建立输入输出映射来从样例中学习的。这样的方法使人想起了非参数统计推断(nonparametric statistical inference)​的研究,它使非模型估计统计处理的一个分支,或者从生物学角度看,称为白板学习(tabula rasa learning,German 等,1992)​。这里使用“非参数”这一术语表示的一个事实是,没有对输入数据的统计模型作任何先验假设。比如,考虑一个模式分类(pattern classification)​任务,这里的要求是把代表具体物体或事件的输入信号分类到几个预先分类好的类中去。关于这一问题的非参数方法中,要求利用样本集“估计”输入信号空间中模式分类任务的任意决策边界,并且不使用概率分布模型,而监督学习方法也隐含了类似的观点,这就提示在神经网络的输入输出映射和非参数统计推断之间存在相似的类比。
  3. 自适应性(adaptivity) ​:神经网络具有调整自身突触权值以适应外界环境变化的固有能力。特别是,一个在特定运行环境下接受训练的神经网络,在环境条件变化不大的使用可以很容易地进行重新训练。而且,它在一个不稳定(nonstationary)​环境(即它的统计特性随时间变化)中运行时,可以设计神经网络使得其突触权值随时间变化。用于模式分类