1、主 讲:谢 榕 武汉大学国际软件学院车牌识别手写体识别人脸识别采用何种技术?神经网络技术在模式识别中的应用神经网络技术在模式识别中的应用神经计算神经计算u作为动态系统辨识、建模和控制的一种新的、令人感兴趣的工具,人工神经网络在过去十多年中得到大力研究并取得重要进展。u神经计算神经计算是以神经网络为基础的计算。第五章第五章 计算智能(计算智能(1 1) 神经计算神经计算内容提要:人工神经网络的结构人工神经网络的基本特性和类型人工神经网络的主要学习算法反向传播学习的实现:以数字识别为例人工神经网络研究的发展u生物神经网络生物神经网络是由动物的中枢神经系统(脑和脊髓)及周围神经系统(感觉神经、运动神
2、经、交感神经、副交感神经等)所构成的错纵复杂的神经网络。u负责对动物肌体各种活动的管理。u其中最重要的脑神经系统。生物神经网络生物神经网络生物神经元的结构生物神经元的结构u生物神经元生物神经元就是通常说的神经细胞,是构成生物神经系统的最基本单元,简称神经元神经元(Neuron) 。u脑神经生理科学研究结果表明:人的大脑含有1011 1012个神经元,每个神经元约束103 104个突触。神经元通过突触形成网络,传递神经元之间的兴奋与抑制。大脑的全部神经元构成极其复杂的拓扑大脑的全部神经元构成极其复杂的拓扑网络群体,用于实现记忆与思维网络群体,用于实现记忆与思维。u神经元主要包括:p细胞体p轴突p
3、树突u人脑内含有极其庞大的神经元(有人估计约为一千几百亿个),它们互连组成神经网络,并执行高级的问题求解智能活动。u特点p每个神经元具有单一输出,并且能够与其它神经元连接。p存在许多(多重)输出连接方法。人脑神经元的结构人脑神经元的结构1.1.人工神经网络的结构人工神经网络的结构u人工神经网络人工神经网络(Artificial Neural Nets,ANN)是由大量处理单元(即神经元)经广泛互连而组成的人工网络,用来模拟脑神经系统的结构和功能。神经元及其特性神经元及其特性u每个构造网络神经元模型模拟一个生物神经元。j 神经元单元的偏置(阈值)wji 连接权系数(激发状态,wji0; 抑制状态
4、,wji0)n 输入信号数目yj 神经元输出t 时间f() 输出变换函数u连接机制结构的基本处理单元与神经生理学类比称为神经元神经元。u神经元单元由多个输入xi和一个输出y组成。中间状态由输入信号加权和表示,输出为:图: 神经元模型uf()为神经输入、输出关系函数,有时叫做激发或激励激励函数函数。几种常见的神经元模型几种常见的神经元模型图: 常见的神经模型u根据激励函数的不同,相应地有不同的神经元模型。p二值函数 pSigmoid形函数(简称S型)p双曲线正切函数 2.2.人工神经网络的基本特性和类型人工神经网络的基本特性和类型u人工神经网络是一种具有下列特性的有向图:p对于每个节点i存在一个
5、状态变量xi;p从节点j至节点i,存在一个连接权系数wji;p对于每个节点i,存在一个阈值i;p对于每个节点i,定义一个变换函数fi(xi,wji,i),ij;对于最一般的情况,此函数为如果将多个神经元按某种的拓扑结构连接起来,就构成神经网络神经网络。人工神经网络的类型人工神经网络的类型u人工神经网络的类型基本上分为两类:p递归(反馈)网络p前馈网络递归网络递归网络u递归网络中,多个神经元互连以组织一个互连神经网络。有些神经元的输出被反馈至同层或前层神经元。因此,信号能够从正向和反向流通。uHopfield网络,Elmman网络和Jordan网络是递归网络有代表性的例子。Vi节点的状态Xi 节
6、点的输入(初始)值Xi收敛后的输出值i=1,2,.,nu递归网络又叫做反馈网络。前馈网络前馈网络u前馈网络具有递阶分层结构,由一些同层神经元间不存在互连的层级组成。从输入层至输出层的信号通过单向连接流通;神经元从一层连接至下神经元从一层连接至下一层,不存在同层神经元间的连接一层,不存在同层神经元间的连接。实线指明实际信号流通虚线表示反向传播。u前馈网络的例子p 多层感知器()p 学习矢量量化()网络p 小脑模型联接控制()网络p 数据处理方法()网络等3.3.人工神经网络的学习算法人工神经网络的学习算法u有师学习u无师学习u强化学习3.3.人工神经网络的学习算法人工神经网络的学习算法u有师学习
7、有师学习p需要有个老师或导师来提供期望或目标输出信号。p通过计算网络的输出并将该输出与给定数据输出与给定数据的期望结果的期望结果进行比较,能识别出误差并据此调整相应的权值。p例:Delta规则、广义Delta规则或反向传播算法、LVQ算法等3.3.人工神经网络的学习算法人工神经网络的学习算法u无师学习无师学习p不需要知道期望输出。p在训练中,只要向神经网络提供输入模式,神经网络就能自动适应连接权自动适应连接权,以便按相似特征把输入模式分组聚集。p例:Kohonen算法、Carpenter-Grossberg自适应谐振理论(ART)3.3.人工神经网络的学习算法人工神经网络的学习算法u强化学习强
8、化学习p强化(增强)学习是有师学习的特例。p不需要老师给出目标输出。p强化学习算法采用一个“评论员”来评价评价与给定输入相对应的神经网络输出的优度输出的优度(质量因数)。p强化学习算法的一个例子是遗传算法(GA)。表: 一些著名的神经网络模型 最流行的学习算法之一,用来训练针对各种不同应用的神经网络。反向传播学习反向传播学习(Back Propagation, BP)(Back Propagation, BP)1( )1xf xe BP网络的拓扑结构为分层前馈网络。 神经元的特性函数为Sigmoid型(S型)函数,一般取为 输入为连续信号量(实数)。 学习方式为有导师学习。 学习算法为推广的学
9、习规则,称为误差反向传播算法,简称BP学习算法。反向传播学习反向传播学习(Back Propagation, BP)(Back Propagation, BP)u一种分层前馈神经网络u对于一个训练集,每个输入在多层感知器中前向传播,以计算输出。u计算误差,即期望输出与实际输出的差。u通过调整所有权值在网络中反向传播该误差,即从输出层的权值开始,结束于输入层的权值。反向传播算法反向传播算法u隐层单元的误差函数u计算每一个输出层和隐层结点的误差u利用这些误差调整相应节点的权值u给定误差E和激活值(单元输出ui),把它们和学习率相乘,然后加到当前的全值上,使该单元的误差减小,同时使输出单元激活值更接
10、近期望输出。u - 给定单元的输出Y - 期望的输出结果w - 连接隐层单元至输入 层单元的权值g - 激活函数E - 结点的误差u输出单元的误差函数NY4.4.反向传播学习的实现:以数字识别为例反向传播学习的实现:以数字识别为例车牌识别手写体识别l目标:用训练集训练好的一个神经网络能推广其先前训练所得的结果,从而正确地分类先前未见过的数据。反向传播学习的实现反向传播学习的实现u训练数字识别神经网络的样本位图u引入带噪声的模式训练神经网络。u网络是全互连接的,输入层和隐层之间有350个连接,隐层和输出层之间有100个连接,总共有450个权值。u图像的单元作为输入训练神经网络,激活代表识别模式的
11、10个输出单元中的一个。用于模式识别问题的神经网络拓扑结构u网络输入层有35个单元,代表图像输入的每一个像素,隐层有10个单元,输出层有10个单元,代表每一个潜在的分类。反向传播算法反向传播算法u输出单元的误差函数u隐层单元的误差函数u计算每一个输出层和隐层结点的误差u利用这些误差调整相应节点的权值u给定误差E和激活值(单元输出ui),把它们和学习率相乘,然后加到当前的全值上,使该单元的误差减小,同时使输出单元激活值更接近期望输出。神经网络的表示神经网络的表示( (输入激活和权值输入激活和权值) )l 存储输入值、隐层的当前激活值、输出层的当前激活值/输入值、偏置单元/隐层的当前激活值、偏置单
12、元/输出层的当前激活值/隐层的权值/输出层的权值应用应用feed_forwardfeed_forward函数计算出激活值函数计算出激活值l 计算输出单元的激活值,其中sigmoid函数用于将激活值压缩至0到1范围内反向传播算法中的权值更新反向传播算法中的权值更新l 计算输出层和隐层结点的误差l 输出单元的误差函数l 隐层单元的误差函数l 利用该误差、输入值及一个小的学习率更新权值训练和测试循环(主函数)训练和测试循环(主函数)l 主函数执行神经网络的训练和测试。pinit_network函数通过为每个权值设置一个小的随机值来初始化网络pset_network_inputs函数随机选择一个样本,
13、将输入值存入输入向量pfeed_fordward函数计算输出激活值p计算均方误差并检验循环的终止条件l 使用误差反向传播算法训练的神经网络的泛化能力。l 一旦一个神经网络训练完毕,就将网络中的权值保存起来供实际应用。l 过学习/过拟合现象:在一个数据集上训练时间过长,导致网络过拟合于训练数据,对未出现过的新数据没有推广性。l 反向传播算法的改进n 训练改进n 权值调整改进神经网络的应用神经网络的应用 神经网络是受到生物学的启发而建立起来的一种计算结构。 从概念上,神经网络结构模拟了人脑的构成。 一个高度连接的个体计算单元所组成的网络,聚集的个体计算单元能用于解决一些困难而又重要的问题。 经过训
14、练后,神经网络能触类旁通地解决具有相似特点的不同问题。u数据处理任务数据处理任务p 自适应信号处理u控制系统控制系统p非线性和不确定性u模式识别模式识别p 字符识别u分类任务分类任务p数据分类u任意函数的逼近任意函数的逼近p时间序列建模与预测5.5.人工神经网络研究的发展人工神经网络研究的发展u1943年,人工神经网络研究先锋McCulloch和Pitts提出“似脑机器似脑机器”思想,构造表示大脑基本组成部分的神经元模型,对逻辑操作系统表现出通用性。u60年代,关于学习系统的专用设计方法,Widrow等人提出自适应线性元自适应线性元Adaline (adaptive linear elemen
15、t);Steinbuch等人提出学习矩阵学习矩阵。u70年代,以生物学和心理学证据为基础,Grossberg提出非线性动态系统结构非线性动态系统结构;基于神经元组织自调整各种模式思想,Kohonen发展他在自组织映射方面自组织映射方面的研究工作。u80年代,作为一种前馈神经网络的学习算法,Parker和Rumelhart等人发现反向传播算法反向传播算法。国际上对神经网络的研究国际上对神经网络的研究u对现有对现有网络模型计算能力网络模型计算能力的研究和开发的研究和开发使神经网络应用范围进一步伸展到自然科学和社会科学的各个方面。u神经网络的具体实现,即神经网络的具体实现,即神经网络计算机的研制神经
16、网络计算机的研制运用超大规模集成电路技术,已研制出多种高度分布式并行的模拟、数字以及模数混合的神经网络系统。u神经网络的新结构模型及其计算方法的研究神经网络的新结构模型及其计算方法的研究人们提出并开始研究新的神经网络模型以及相应新的神经网络模型以及相应的新算法的新算法。小结:人工神经网络的特性小结:人工神经网络的特性u并行分布处理并行分布处理 对信息的并行处理能力和快速性,适于实时控制和动力学控制。u非线性映射非线性映射 具有固有的非线性特性,为非线性控制带来新的希望。u通过训练进行学习通过训练进行学习 可通过训练获得学习能力,解决用数学模型或规则描述难以处理或无法处理的控制过程。u适应与集成
17、适应与集成 有很强自适应能力和信息综合能力,可同时处理大量不同类型控制输入,特别适用于复杂系统、大系统和多变量系统的控制。u神经网络由于并行分布处理、非线性映射、通过训练进行学习、适应与集成等能力,因而具有用于智能系统的潜力。u神经网络在模式识别、信号处理、系统辨识和优化等方面的应用,已有广泛研究。u在控制领域,已经作出许多努力,把神经网络用于控制系统,处理控制系统的非线性和不确定性以及逼近系统的辨识函数等。 1. 人工神经元由哪几部分组成?其激励函数主要有哪几种形式? 2. 神经元的互连形态有哪几种? 3. 人工神经网络有哪些主要的学习方法? 4. 人工神经网络具有哪些主要特征?课堂练习课堂
18、练习u1. 人工神经元由哪几部分组成?其激励函数主要有哪几种形式? 输入信号xi 连接权系数wi 输出变换函数f 进行变换时的阈值或偏值图: 神经元模型激励函数通常为非线性的,常用的激励函数有如下几种形式。(1)二值函数 (2)Sigmoid形函数(3)双曲线正切函数 u2. 神经元的互连形态有哪几种?u神经元的互连形态决定了神经网络的拓扑结构,不同的拓扑结构可以产生不同的计算特性。u网络结构的不同主要反映在前馈还是后馈网络。u2. 神经元的互连形态有哪几种?u前馈网络前馈网络p 神经元之间的连接是单向的,没有环路。p 神经元分层排列,分别形成输入层、中间层和输出层p 每一层的神经元只接收来自前一层神经元的输入,同一层中的神经元之间没有连接,也没有跳层连接。u反馈网络反馈网络p 神经元之间的连接没有限制,可以形成多种形式的拓扑结构。u3. 人工神经网络有哪些主要的学习方法?u神经网络的学习问题就是网络权值的确定或调整问题。u神经网络的连接权值的确定方式: 有师学习需要有个老师或导师来提供期望或目标输出信号。 无师学习无师学习算法不需要知道期望输出。 强化学习采用“评论员”评价神经网络输出的优度。u4. 人工神经网络具有哪些主要特征?u能较好地模拟人的形象思维u具有大规模并行协同处理能力u具有较强的学习能力u是一个大规模自组织、自适应的非线性动力系统