您的位置:首页 > 理论基础 > 计算机网络

神经网络(持续更新)

2017-04-19 18:46 309 查看

1、什么是神经网络?

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

1.神经网络是通过学习过程从外界环境中获取知识的。

2.互连神经元的连接强度,即突触权值,用于存储获取的知识

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

2、神经网络的优点

神经网络的大规模并行分布式结构;

神经网络的学习能力以及由此而来的泛化能力。

泛化(generalization): 是指神经网络对未在训练(学习)过程中遇到的数据可以得到合理的输出。

神经网络具有以下性质和能力:

非线性(nonlinearity): 人工神经元可以是线性或者是非线性的。由非线性神经元互相连接而成的神经网络自身是非线性的,并且从某种特别意义上来说,非线性是分布于整个网络中的。非线性是一个非常重要的特性,特别是当产生输入信号(如语音信号)的内部物理机制是天生非线性的时候。

输入输出映射(input-ouput mapping): 称之为有教师学习(learning with a teacher)或监督学习(supervised learning)的关于学习的流行方法。它使用带标号的训练样例(training example)或任务样例(task example)对神经网络的突触权值进行修改。每个样例由一个唯一的输入信号(input signal)和相应的期望(目标)响应(desired (target) response)组成。从一个训练集中随机选取一个样例提供给网络,网络就调整它的突触权值(自由参数),以最小化期望响应和由输入信号以适当的统计准则产生的网络实际响应之间的差别。使用训练集中的很多样例来重复训练神经网络,直到网络大刀队突触权值没有显著修正的稳定状态为止。先前已经使用过的训练样例可能还要在训练期间以不同顺序重复使用。因此当对当前问题来说,神经网络是是通过简历输入输出映射来从样例中学习的。

自适应性(adaptivity):神经网络具有调整自身突触权值以适应外界环境变化的固有能力。特别是,一个在特定运行环境下接受训练的神经网络,在环境条件变化不大的时候可以很容易的进行重新训练。

证据响应(evidential response):在模式分类问题中,神经网络可以设计成不仅提供选择哪一个特定模式的信息,还提供关于决策的置信度信息。后者可以用来拒判那些可能出现的过于模糊的模式,从而进一步改善网络的分类性能。

上下文信息(contextual information):神经网络的特定结构和激发状态代表知识。网络中每一个神经元都受网络中所有其他神经元全局活动的潜在影响。因此,神经网络将很自然地能够处理上下文信息。

容错性(fault tolerance):一个以硬件形式实现的神经网络具有天生的容错性,或者说具有鲁邦计算的能力,在这种意义上其性能在不利的条件下是逐渐下降的。

VLSI实现(VLSI implementability):神经网络的大规模并行性使它具有快速处理某些任务的潜在能力。这一特性使得神经网络很适合使用超大规模集成(very-large-scale-integrated, VLSI)技术来实现。VLSI的一个特殊优点是可以提供一个以高度分层的方式来捕捉真实复杂行为的方法。

分析和设计的一致性:基本上,神经网络作为信息处理器具有通用性。我们这样说是因为设计神经网络应用的所有领域都是用同样的记号。这一特征以不同的方式表现出来:

** 神经元,不管形式如何,在所有的神经网络中都代表一种相同成分。

**这种共性使得在不同应用中的神经网络共享相同的理论和学习算法成为可能。

**模块化网络可以用模块的无缝集成来实现。

9.神经生物类比:神经网络的设计是由与人脑的类比引发的,人脑是一个容错的并行处理的实例,说明这种处理不仅在物理上是可实现的,而且还是快速、高效的。

3、Rosenblatt感知器

感知器是用于线性可分模式(即模式分别位于超平面所分隔开的两边)分类的最简单的神经网络模型。

基本上它是由一个具有可调突触权值和偏执的神经元构成。建立在一个神经元上感知器的模式分类被限制为只能完成了两类(假设)的模式分类。通过扩展感知器的输出(计算)层可以使感知器包括不止一个神经元,相应的可以进行多于两类的分类。但是,只有这些类是线性可分时感知器才能正常工作。

多层感知器的基本特征:

1、网络中每个神经元模型包含一个可微的非线性激活函数;

2、网络中包括一个或多个隐藏在输入和输出神经节点之间的层;

3、网络展示出高度的连接性,其强度是由网络的突触权值决定的。

训练多层感知器的一个流行方法是反向传播算法,这包含LMS算法作为一个特例。训练分为如下的两个阶段:

1.前向阶段:网络的突触权值是固定的,输入信号在网络中一层一层传播,直到到达输出端。因此,在这一阶段,输入信号的影响限制在网络中激活隐藏神经元和输出神经元上。

2.反向阶段:通过比较网络的输出和期望输出产生一个误差信号。得到的误差信号再次通过网络一层一层传播,但是这一次传播是在反向反向进行的。在这第二阶段,对于网络的突触权值进行不断的修正。对于输出层权值的修正计算是直接的,但是对于隐藏层来说则更有挑战性。

全连接网络:

任意层上的一个神经元与它之前的层上的所有节点/神经元都连接起来。

1、函数信号:

函数信号是从网络输入端而来的一个输入信号(刺激),通过网络(一个神经元接一个神经元)向前传播,到达网络输出端即成为一个输出信号。

我们把这样一个信号称为“函数信号”有两个原因。

首先,在网络输出端时假设它表现为有用的函数。

其次,在函数信号通过网络上每一个神经元处,该处信号都被当成输入以及与该神经元有关的权值的一个函数来计算的。

函数信号也被认为是输入信号。

2、误差信号:

一个误差信号产生于网络的一个输出神经元,并通过网络(一层接一层)反向传播。

我们称之为“误差信号”是因为网络的每一个神经元对它的计算都以这种或那种形式设计误差依赖函数。

多层感知器每一个隐藏层或输出层神经元的作用是进行两种计算:

1、计算一个神经元的输出处出现的函数信号。它表现为关于输入信号以及与该神经元相关联的突触权值的一个连续非线性函数。

2、计算梯度向量(即误差曲面对连接于一个神经元输出的权值的梯度)的一个估计,他需要反向通过网络。

隐藏神经元的功能:

隐藏神经元扮演着特征检测算子的角色;

它们在多层感知器的、运转中起着决定性作用。

随着学习过程通过多层感知器不断进行,隐藏神经元开始逐步“发现”刻画训练数据的突出特征。

它们是通过将输入数据非线性变换到新的称为特征空间的空间而实现的。

Cover定理

假设空间不是稠密分布的,将复杂的模式分类问题非线性地投射到高维空间将比投射到低维空间更可能是线性可分的。

反向传播学习的有点和局限:

反向传播算法是一个对于计算代价函数f(w)的梯度(即一阶导数)计算有效的技术。

代码函数由刻画多层感知器的可调参数(突触权值和偏置)的函数来表示。

算法的计算能力是由两个明显的性质而导出的:

反向传播算法是局部计算简单的

当算法是在线(逐次)学习时它实现权值空间的随机梯度下降。

连接机制

反向传播算法是依靠局部计算来发现神经网络信息处理能力的一个连接论者范例的例子。

计算限制的这种形式称为局部约束,它是指单个神经元实现的计算仅受那些与它有物理接触的神经元的影响。在(人工)神经网络的设计中提倡利用局部计算通常有三个主要的理由。

1.实现局部计算的神经网络常常被作为生物神经网络的类比来推举。

2.由于使用局部计算允许由于硬件错误引起的平稳的性能下降,因此为容错网络设计提供基础。

3.局部计算支持作为神经网络实现有效方法的并行体系结构。

人工神经网络模型

人工神经网络是由大量的神经元互连而成的网络,按其拓扑结构来分,可以分为两类。

1、层次网络模型

神经元分成若干层顺序连接。在输入层上加入输入(刺激)信息,通过中间各层,加权后传递到输出层后

输出。

其中,有的在同一层中的个神经元相互有连接。

有的从输出层到输入层有反馈。

2、互连网络模型

在这类模型中,任意两个神经元之间都有相互连接的关系,有的神经元之间是双向的,

有的是单向的,按实际情况决定。

若按神经网络的功能分类,目前常用的有如下分类:



神经网络的学习规则

学习和记忆是人类只能器官的最主要的功能,模拟人脑神经系统的学习功能是人工神经网络的核心任务。

由人工神经元相连结的神经网络系统的全部“知识”,主要体现为网络中全部神经元之间的连结权重。

通过一定的规则,根据神经元的输入状态(或活性度)、当时的连结权重及有无教师示教的信息来调整连接权重,这就是人工神经网络的学习过程。

这里所依据的规则,就称为学习规则,可以说有怎样的学习规则就有怎样的人工神经网络。

常用的学习规则有:

1、联想式学习—Hebb规则

2、误差传播式学习—Delta学习规则

3、概率式学习

4、竞争式学习

BP神经网络

BP神经网络,是一种按误差逆传播算法训练的多层前馈网络,在人工神经网络的应用中,80%-90%的人工神经网络模型采用BP网络或者它的变化形式,它也是前向网络的核心部分,体现了人工神经网络最精华的部分,BP神经网络由信息的正向传播和误差的反向传播两个过程组成。

输入层各神经元负责接收来自外界的输入信息,并传递给中间层各神经元;中间层是内部信息处理层,负责信息变换,根据信息变化能力的需求,中间层可以设计为单隐藏层或多隐藏层结构;最后一个隐层传递到输出层各神经元的信息,经过一步处理后完成一次学习的正向传播处理过程,由输出层向外界输出信息处理结果。

当实际输出与期望输出不符时,进入误差的反向传播阶段,误差通过输出层,按误差梯度下降的方式修正各层权值,向隐层、输入层逐层反传。周而复始的信息正向传播和误差反向传播过程,是各层权值不断调整的过程,也是神经网络学习训练过程,此过程一直进行到网络输出的误差减少到可以接受的程度,或者达到预先设定的学习次数为止。

BP网络主要应用于以下方面:

函数逼近: 用输入矢量和相应的输出矢量训练一个网络逼近一个函数

模式识别:用一个特定的输出矢量将它与输入矢量联系起来

分类:对输入矢量以所定义的合适方式进行分类

数据压缩:减少输出矢量维数以便于传输或存储
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: