第三章:感知器

上传人:豆**** 文档编号:240716674 上传时间:2024-05-02 格式:PPT 页数:62 大小:1,021.50KB
返回 下载 相关 举报
第三章:感知器_第1页
第1页 / 共62页
第三章:感知器_第2页
第2页 / 共62页
第三章:感知器_第3页
第3页 / 共62页
点击查看更多>>
资源描述
第三章:感知器第三章:感知器单个感知器模型与解决问题的能力单个感知器模型与解决问题的能力单层感知器模型与解决问题的能力单层感知器模型与解决问题的能力单层感知器的学习算法单层感知器的学习算法单层感知器的局限性问题单层感知器的局限性问题多层感知器的设计方法多层感知器的设计方法有关的几个问题的讨论有关的几个问题的讨论单层感知器的单层感知器的MATLAB设计与实现设计与实现第三章:感知器网络第三章:感知器网络概述概述由美国学者由美国学者Rosenblatt在在1957年首次提出年首次提出学习算法是学习算法是Rosenblatt在在1958年提出的年提出的包含一个突触权值可调的神经元包含一个突触权值可调的神经元属于前向神经网络类型属于前向神经网络类型只能区分线性可分的模式只能区分线性可分的模式IEEE设立以其名字命名的奖项设立以其名字命名的奖项 第三章:感知器第三章:感知器人的视觉人的视觉是重要的感觉器官,人通过视觉接受是重要的感觉器官,人通过视觉接受的信息占全部信息量的的信息占全部信息量的8085%。感知器感知器是模拟人的视觉,接受环境信息,并由是模拟人的视觉,接受环境信息,并由神经冲动进行信息传递的神经网络。神经冲动进行信息传递的神经网络。感知器分感知器分单层单层与与多层多层,是,是具有学习能力具有学习能力的神经的神经网络。网络。本章的重点:本章的重点:本章的重点:本章的重点:感知器的结构、表达能力、学习算法。感知器的结构、表达能力、学习算法。本章的难点:本章的难点:本章的难点:本章的难点:感知器的表达能力感知器的表达能力。第三章:感知器第三章:感知器3.1 3.1 单个感知器模型与解决问题的能力单个感知器模型与解决问题的能力 图2-3-1 单层感知器布尔函数的布尔函数的M-P神经元表示神经元表示:利用带阈值的M-P人工神经元可以很方便地实现布尔代数中的许多功能。在布尔代数中,and、or、Not、xoR关系如下表1所示:第三章:感知器第三章:感知器3.1 3.1 单个感知器模型与解决问题的能力单个感知器模型与解决问题的能力andor )xoR0000110010110110010111111000Not(Not(第三章:感知器第三章:感知器3.1 3.1 单个感知器模型与解决问题的能力单个感知器模型与解决问题的能力且、,模型来建立,可以将图用与、之间的关系:上面几个人工神经元都满足M-P模型。第三章:感知器第三章:感知器3.1 3.1 单个感知器模型与解决问题的能力单个感知器模型与解决问题的能力根据各个图及M-P模型,我们有(1)(2)第三章:感知器第三章:感知器3.1 3.1 单个感知器模型与解决问题的能力单个感知器模型与解决问题的能力(3)显然是符合逻辑运算要求。第三章:感知器第三章:感知器3.1 3.1 单个感知器模型与解决问题的能力单个感知器模型与解决问题的能力 权系数和阈值不是权系数和阈值不是0、1的的M-P模型模型 若,则M-P模型比只允许取-1,1要灵活(或1,0),(或1,0),则对于这个M-P人工神经元来说:的多,但此时仍限制但与相比并无多大改进。第三章:感知器第三章:感知器3.1 3.1 单个感知器模型与解决问题的能力单个感知器模型与解决问题的能力例:例:试说明下列两个M-P人工神经元是等价的。分析:对于(a)第三章:感知器第三章:感知器3.1 3.1 单个感知器模型与解决问题的能力单个感知器模型与解决问题的能力对与(b)第三章:感知器第三章:感知器3.1 3.1 单个感知器模型与解决问题的能力单个感知器模型与解决问题的能力此时感知器人工神经元结构及其数学描述如下:当当M-P人工神经元的输入人工神经元的输入X可以在可以在R上取值时上取值时离散感知器离散感知器(简称感知器简称感知器)若M-P人工神经元的输入,而其输出值为或模型就改进为离散感知器(因为其输出还是离散的),简称为感知器。则此时的M-P第三章:感知器第三章:感知器3.1 3.1 单个感知器模型与解决问题的能力单个感知器模型与解决问题的能力 用图所示 二输入/单输出单层感知器,输入输出描述:=-+=0,00,1)()(2211fuwuwfyq 即 qq+=22112211,0,1uwuwuwuwy 可见:输入输出为线性可分集合,一定可找到一条直线,将输入模式分为两类,此直线方程:ywuw u=+-=1 1220q 则 uwwwu22121=-q 见图,此直线与 权值及阈值有关。第三章:感知器第三章:感知器3.1 3.1 单个感知器模型与解决问题的能力单个感知器模型与解决问题的能力 用图所示三输入用图所示三输入/单输出的单层感知器,输入输出:单输出的单层感知器,输入输出:=-+=0,00,1)()(332211fuwuwuwfyq即即 qq+=332211332211,0,1uwuwuwuwuwuwy可见可见,输入输出为线性可分集合,一定可找到一个平面,输入输出为线性可分集合,一定可找到一个平面,将输入模式分为两类,平面方程:将输入模式分为两类,平面方程:0332211=-+=quwuwuwy则则 23213133uwwuwwwu-=q此平面与此平面与权值及阈值权值及阈值有关有关,见图。见图。第三章:感知器第三章:感知器3.1 3.1 单个感知器模型与解决问题的能力单个感知器模型与解决问题的能力感知器的分类定义感知器的分类定义 作为数学模型,我们对感知器作出如下归纳:作为数学模型,我们对感知器作出如下归纳:1.感知器是一个多输入、单输出的运算系统,表示一个神经元感知器是一个多输入、单输出的运算系统,表示一个神经元的运算特性,它的输入状态向量记为:的运算特性,它的输入状态向量记为:权向量权向量:2.感知器的状态值可以为感知器的输出值感知器的状态值可以为感知器的输出值 3.以以为分界线,实现对输入的分类为分界线,实现对输入的分类连续感知器连续感知器(简称感知器简称感知器)第三章:感知器第三章:感知器3.1 3.1 单个感知器模型与解决问题的能力单个感知器模型与解决问题的能力连续感知器人工神经元结构及其数学描述如下:若取,则其成为一类最简单的连续人工感知神经元。激活函数:第三章:感知器第三章:感知器3.1 3.1 单个感知器模型与解决问题的能力单个感知器模型与解决问题的能力是不连续的:或都在0,1或-1,1上取值,的每个向量定义:定义:a)如果且激活函数那么这个感知神经元被成为M-P模型。是离散的,那么这个b)如果,但激励函数感知神经元被称为离散感知器常简称为感知器。是连续函数,那么这个感知且C)如果神经元称为连续感知器。由相应的感知神经元组成的网络就称为相应神经网络,如M-P神经网络、感知器神经网络、连续感知器神经网络。例例 线性不可分集合。线性不可分集合。二维平面上的两类模式二维平面上的两类模式异或(异或(XOR)问题)问题,见表。,见表。二维平面中不存在一条直线,将输入模式分为两类,此输入模二维平面中不存在一条直线,将输入模式分为两类,此输入模式称式称线性不可分集合线性不可分集合,见图。,见图。可见可见:单层感知器不能解决:单层感知器不能解决异或问题异或问题。第三章:感知器第三章:感知器3.1 3.1 单个感知器模型与解决问题的能力单个感知器模型与解决问题的能力结论:单个感知器不能对线性不可分问题实现两类分类。结论:单个感知器不能对线性不可分问题实现两类分类。结论:单个感知器不能对线性不可分问题实现两类分类。结论:单个感知器不能对线性不可分问题实现两类分类。单层感知器工作原理单层感知器工作原理对于只有两个输入的判别边界是直线(如下式对于只有两个输入的判别边界是直线(如下式所示)所示),选择合适的学习算法可训练出满意的选择合适的学习算法可训练出满意的和和,当它用于两类模式的分类时,相当于在高维样本空当它用于两类模式的分类时,相当于在高维样本空间中,用一个超平面将两类样本分开。间中,用一个超平面将两类样本分开。第三章:感知器第三章:感知器3.1 3.1 单个感知器模型与解决问题的能力单个感知器模型与解决问题的能力第三章:感知器第三章:感知器3.2 3.2 单层感知器模型与解决问题的能力单层感知器模型与解决问题的能力 在上一节中指出了线性单个感知神经网络只能实现两类分类,如果要进行多于两类的分类将怎么办?生物医学已经证明:生物神经系统是由一些相互联系的,并能互相传递信息的神经细胞互连构成。因此这就使我们自然地想到是否可将单个的感知神经元连成网络形成一个单层的网络?结构第三章:感知器第三章:感知器3.2 3.2 单层感知器模型与解决问题的能力单层感知器模型与解决问题的能力 例例 线性不可分集合。线性不可分集合。二维平面上的两类模式二维平面上的两类模式异或(异或(XOR)问题)问题,见表。,见表。二维平面中不存在一条直线,将输入模式分为两类,此输入模二维平面中不存在一条直线,将输入模式分为两类,此输入模式称式称线性不可分集合线性不可分集合,见图。,见图。可见可见:单层感知器不能解决:单层感知器不能解决异或问题异或问题。结论:单层感知器不能对线性不可分问题实现两类分类。结论:单层感知器不能对线性不可分问题实现两类分类。结论:单层感知器不能对线性不可分问题实现两类分类。结论:单层感知器不能对线性不可分问题实现两类分类。感知器的学习目标感知器的学习目标 感知机的基本功能是对外部信号进行“感知”与识别,这就是当外部n个刺激信号或来自其它n个神经元(的信号)处于一定的状态时,感知器就处于“兴奋”状态,而当外部n个信号或n个神经元的输出处于另一些状态时,感知器就呈现“抑制”状态。若用 表示感知器的运算函数关系,那么它们的运算目标就是:即一个感知神经元只能实现两类的划分,且其中A,B是 中互不相交的集合。第三章:感知器第三章:感知器3.3 3.3 单层感知器的学习算法单层感知器的学习算法定义:感知器的学习目标:我们称(A,B)为感知器的学习目标,如果A、B是感知器的学习目标感知器的学习目标 中两个互不相交的集合,且下面方程成立。即一个感知神经元只能实现两类的划分,且其中A,B是 中互不相交的集合。等价于如下描述:第三章:感知器第三章:感知器3.3 3.3 单层感知器的学习算法单层感知器的学习算法第三章:感知器第三章:感知器3.3 3.3 单层感知器的学习算法单层感知器的学习算法离散单个感知器的学习算法离散单个感知器的学习算法 设M-P模型的几何图形如右图:设为网络的广义权向量,为输入向量且是二值的,网络的训练样本集为M-PM-P神神经经元的元的权权(广(广义义的)的学的)的学习习的基本方式和原的基本方式和原则则如下:如下:若M-P神经元的权值为,则M-P神经元的输出为:的值与此时对应的 不一样,即如果的值与此时对应的一样,则说明此时权值将和正确分类;如果表示将此时的错误分类,则此时需要调整值。当时,说明此时实际值,即,说明计算得到的的值大小小于零,而实际上应该是大于零,对此修正权值为第三章:感知器第三章:感知器3.3 3.3 单层感知器的学习算法单层感知器的学习算法如此调整后使被减小了,故算法如下:增加了。否则,则表示实际,此时则取,调整后第三章:感知器第三章:感知器3.3 3.3 单层感知器的学习算法单层感知器的学习算法2.重复下列过程,直到训练完成:2.1对样本集中的每一个样本与实际样本中所有都一样,则2.1.1输入1.初始化权向量(一般在一定范围内取);,重复如下过程:2.1.2计算2.1.3如果计算得的退出;否则一一样时样时才可退出循才可退出循环环。这里需要注意的是:只有当所有样本计算得到的这里需要注意的是:只有当所有样本计算得到的与所有实际与所有实际第三章:感知器第三章:感知器3.3 3.3 单层感知器的学习算法单层感知器的学习算法一一样时样时才可退出循才可退出循环环。这里需要注意的是:只有当所有样本计算得到的这里需要注意的是:只有当所有样本计算得到的与所有实际与所有实际2.1.1.3如果计算得的与实际样本中所有都一样,则2.1.1.1输入2.重复下列过程,直到训练完成:2.1对样本集中的每一个样本n离散单层感知器的训练算法:离散单层感知器的训练算法:1.初始化权向量(一般在一定范围内取);,重复如下过程:2.1.1.2计算退出;否则2.1.1对每一个神经元i作以下操作用公式wij=wij+(yj-oj)xi取代离散单个感知器的学习算法 中的权值调整方法,可以得到如下连续单个感知器的学习算法:连续单个感知器的学习算法连续单个感知器的学习算法 第三章:感知器第三章:感知器3.3 3.3 单层感知器的学习算法单层感知器的学习算法2.重复下列过程,直到训练完成:2.1对样本集中的每一个样本与实际样本中所有都一样,则2.1.1输入1.初始化权向量(一般在一定范围内取);,重复如下过程:2.1.2计算2.1.3如果计算得的退出;否则wij=wij+(yj-oj)xi说明:说明:y yj j与与o oj j之间的差别对之间的差别对w wijij的影响由的影响由(y(yj j-o-oj j)x)xi i表现出来:表现出来:不仅使得算法的控制在结构上更容易理解,而且还使得它的不仅使得算法的控制在结构上更容易理解,而且还使得它的适应面更宽适应面更宽 。连续单层感知器的学习算法连续单层感知器的学习算法 第三章:感知器第三章:感知器3.3 3.3 单层感知器的学习算法单层感知器的学习算法2.1.1.3如果计算得的与实际样本中所有都一样,2.1.1.1输入2.重复下列过程,直到训练完成:2.1对样本集中的每一个样本1.初始化权向量(一般在一定范围内取);,重复如下过程:2.1.1.2计算2.1.1对每一个神经元i作以下操作则退出;否则wij=wij+(yj-oj)xi1.用适当的小伪随机数初始化权矩阵用适当的小伪随机数初始化权矩阵W;2.初置精度控制参数初置精度控制参数,学习率学习率,精度控制变量精度控制变量d=+1;3.While d do 3.1 d=0;3.2 for 每个样本(每个样本(X,Y)do3.2.1 输入输入X(X X=(x1,x2,xn)););3.2.2 求求O=F(XW););3.2.3 修改权矩阵修改权矩阵W:for i=1 to n,j=1 to m dowij=wij+(yj-oj)xi;3.2.4 累积误差累积误差for j=1 to m dod=d+(yj-oj)2连续单层感知器的学习算法连续单层感知器的学习算法 第三章:感知器第三章:感知器3.3 3.3 单层感知器的学习算法单层感知器的学习算法1、程序实现:、d、i、j、n、m为简单变量来表示,W为n行m列的二维数组。样本集(X,Y)是二维数组。2、Minsky在1969年证明,有许多基本问题是感知器无法解决的。3、很难从样本数据集直接看出问题是否线性可分。4、未能证明,一个感知器究竟需要经过多少步才能完成训练。连续单层感知器的学习算法连续单层感知器的学习算法 第三章:感知器第三章:感知器3.3 3.3 单层感知器的学习算法单层感知器的学习算法第三章:感知器第三章:感知器3.4 3.4 单层感知器网络的局限性单层感知器网络的局限性结论结论结论结论1 1:单个感知器不能对线性不可分问题实现两类分类。:单个感知器不能对线性不可分问题实现两类分类。:单个感知器不能对线性不可分问题实现两类分类。:单个感知器不能对线性不可分问题实现两类分类。结论结论结论结论2 2:单层感知器不能对线性不可分问题实现多类分类。:单层感知器不能对线性不可分问题实现多类分类。:单层感知器不能对线性不可分问题实现多类分类。:单层感知器不能对线性不可分问题实现多类分类。第三章:感知器第三章:感知器3.4 3.4 单层感知器网络的局限性单层感知器网络的局限性从前面的结论:从前面的结论:从前面的结论:从前面的结论:“单层感知器不能对线性不可分问题实现分单层感知器不能对线性不可分问题实现分单层感知器不能对线性不可分问题实现分单层感知器不能对线性不可分问题实现分类。类。类。类。”可以看出单层感知器是有局限性的。可以看出单层感知器是有局限性的。可以看出单层感知器是有局限性的。可以看出单层感知器是有局限性的。变量变量函数及其值函数及其值xyf1f2f3f4f5f6f7f8f9f10f11f12f13f14f15f16000000000011111111010000111100001111100011001100110011110101010101010101第三章:感知器第三章:感知器3.4 3.4 单层感知器网络的局限性单层感知器网络的局限性单层感知器的二维分类能力如下表:单层感知器的二维分类能力如下表:单层感知器的二维分类能力如下表:单层感知器的二维分类能力如下表:第三章:感知器第三章:感知器3.4 3.4 单层感知器网络的局限性单层感知器网络的局限性单层感知器的高维分类能力如下表:单层感知器的高维分类能力如下表:单层感知器的高维分类能力如下表:单层感知器的高维分类能力如下表:R.O.Windner1960年年 自变量个数自变量个数函数的个数函数的个数线性可分函数的个数线性可分函数的个数144216143256104465,536188254.3*10994,57261.8*10195,028,134u用多个单级网组合在一起,并用其中的一个去综合其它单级网的结果,我们就可以构成一个两级网络,该网络可以被用来在平面上划分出一个封闭或者开放的凸域来u一个非凸域可以拆分成多个凸域。按照这一思路,三级网将会更一般一些,我们可以用它去识别出一些非凸域来。第三章:感知器第三章:感知器3.5 3.5 多层感知器的设计方法多层感知器的设计方法当wij=1,=1,右图可实现“与”运算,当wij=1,=n,右图可实现“或”运算,第三章:感知器第三章:感知器3.5 3.5 多层感知器的设计方法多层感知器的设计方法 本章第三节中讨论了单层的感知器网络,本章第四节中指出了单层感知神经网络的局限性,如果要实现非线性数据分类,有必要构造多层感知器网络。第三章:感知器第三章:感知器3.5 3.5 多层感知器的设计方法多层感知器的设计方法例100u1u2yW1=1,-1;-1 11=0.5;-0.5W2=1,12=1.5例3.1:假设某压力设备的正常与不正常运行状态是由设备内部的压力P和温度T决定的。当P和T位于图3.1的阴影部分(包括边界)时设备运行正常,否则该设备不正常。问能否用感知器网络来实现该设备运行状态的识别(即运行正常与运行不正常的分类)。P(Mpa)T()4503900.20.5第三章:感知器第三章:感知器3.5 3.5 多层感知器的设计方法多层感知器的设计方法第三章:感知器第三章:感知器3.6 3.6 有关的几个问题有关的几个问题 M-P M-P模型在人工神经网络中的地位模型在人工神经网络中的地位 首先M-P模型是所有人工神经元中第一个被建立起来的,它在多个方面都显示出生物神经元所具有的基本特性。其次,目前其它形式的人工神经元已有很多,但大多数都是在M-P模型的基础上经过不同的修正,改进变换而发展起来。因此M-P人工神经元是整个人工神经网的基础。1、神经元的内部改造:对不同的人工神经元取不同的非线性函数F();对人工神经元的输入和输出做不同的限制:离散的(某些离散点)和连续的(整个实数域)。2、人工神经元之间的联接形式上进行改造神经网络的结构上的改造。3、在人工神经网络权值和阈值取求的方法上改造算法的改进。4、其它形式的改造,譬如(1)与(2)结合起来改进;(2)与(3)结合起来改进等等。第三章:感知器第三章:感知器3.6 3.6 有关的几个问题有关的几个问题对对M-PM-P人工神经元进行改进的主要方式人工神经元进行改进的主要方式1、单神经元(M-P模型、单感知器、单连续感知机);2、单层前向连接的神经网络;3、多层前向连接的神经网络(BP、RBF);4、单层带有反馈连接的神经网络(Hopfield网);5、多层回归(递归)神经网络;6、局部连接的人工神经网络(细胞神经网、小脑模型等)。第三章:感知器第三章:感知器3.6 3.6 有关的几个问题有关的几个问题人工神经网络常见的连接形式有:方式人工神经网络常见的连接形式有:方式 MATLAB中单层感知器常用工具函数名称和基本功能 函 数 名功 能newp()生成一个感知器hardlim()硬限幅激活函数learnp()感知器的学习函数train()神经网络训练函数sim()神经网络仿真函数mae()平均绝对误差性能函数plotpv()在坐标图上绘出样本点plotpc()在已绘制的图上加分类线第三章:感知器第三章:感知器3.7 3.7 单层感知器的单层感知器的MATLABMATLAB设计与实现设计与实现newp()功能:创建一个感知器神经网络的函数功能:创建一个感知器神经网络的函数格式:格式:net=newp(PR,S,TF,LF)说明:说明:net为生成的感知机神经网络;为生成的感知机神经网络;PR为一个为一个R2的矩阵,由的矩阵,由R组输入向量中的最大值和最小值组成;组输入向量中的最大值和最小值组成;S表示神经元的个数;表示神经元的个数;TF表示感知器的激活函数,缺省值为硬限幅激活函数表示感知器的激活函数,缺省值为硬限幅激活函数hardlim;LF表示网络的学习函数,缺省值为表示网络的学习函数,缺省值为learnp hardlim()功能功能 硬限幅激活函数硬限幅激活函数格式格式 A=hardlim(N)说明说明 函数函数hardlim(N)在给定网络的输入矢量矩阵在给定网络的输入矢量矩阵N时,返回该时,返回该层的输出矢量矩阵层的输出矢量矩阵A。当。当N中的元素大于等于零时,返回的值为中的元素大于等于零时,返回的值为l;否则为;否则为0。也就是说,如果网络的输入达到阈值,则硬限幅。也就是说,如果网络的输入达到阈值,则硬限幅传输函数的输出为传输函数的输出为1;否则,为;否则,为0。learnp()功能功能 感知机的权值和阈值学习函数感知机的权值和阈值学习函数 第三章:感知器第三章:感知器3.7 3.7 单层感知器的单层感知器的MATLABMATLAB设计与实现设计与实现第三章:感知器第三章:感知器3.7 3.7 单层感知器的单层感知器的MATLABMATLAB设计与实现设计与实现train()功能功能 神经网络训练函数神经网络训练函数格式格式 net,tr,Y,E,Pf,Af=train(NET,P,T,Pi,Ai,VV,TV)说明说明 net为训练后的网络;为训练后的网络;tr为训练记录;为训练记录;Y为网络输出矢量;为网络输出矢量;E为误差矢量;为误差矢量;Pf为训练终止时的输入延迟状态;为训练终止时的输入延迟状态;Af为训练终止时为训练终止时的层延迟状态;的层延迟状态;NET为训练前的网络;为训练前的网络;P为网络的输入向量矩阵;为网络的输入向量矩阵;T表示网络的目标矩阵,缺省值为表示网络的目标矩阵,缺省值为0;Pi表示初始输入延时,缺省表示初始输入延时,缺省值为值为0;Ai表示初始的层延时,缺省值为表示初始的层延时,缺省值为0;VV为验证矢量(可为验证矢量(可省略);省略);TV为测试矢量(可省略)。网络训练函数是一种通用的为测试矢量(可省略)。网络训练函数是一种通用的学习函数,训练函数重复地把一组输入向量应用到一个网络上,学习函数,训练函数重复地把一组输入向量应用到一个网络上,每次都更新网络,直到达到了某种准则,停止准则可能是达到最每次都更新网络,直到达到了某种准则,停止准则可能是达到最大的学习步数、最小的误差梯度或误差目标等。大的学习步数、最小的误差梯度或误差目标等。第三章:感知器第三章:感知器3.7 3.7 单层感知器的单层感知器的MATLABMATLAB设计与实现设计与实现sim()功能功能 对网络进行仿真对网络进行仿真格式格式(1)Y,Pf,Af,E,perf=sim(NET,P,Pi,Ai,T)(2)Y,Pf,Af,E,perf=sim(NET,Q TS,Pi,Ai,T)(3)Y,Pf,Af,E,perf=sim(NET,Q,Pi,Ai,T)说明说明 Y为网络的输出;为网络的输出;Pf表示最终的输入延时状态;表示最终的输入延时状态;Af表示最表示最终的层延时状态;终的层延时状态;E为实际输出与目标矢量之间的误差;为实际输出与目标矢量之间的误差;perf为为网络的性能值;网络的性能值;NET为要测试的网络对象;为要测试的网络对象;P为网络的输入向量为网络的输入向量矩阵;矩阵;Pi为初始的输入延时状态(可省略);为初始的输入延时状态(可省略);Ai为初始的层延为初始的层延时状态(可省略);时状态(可省略);T为目标矢量(可省略)。式为目标矢量(可省略)。式(1)、(2)用于用于没有输入的网络,其中没有输入的网络,其中Q为批处理数据的个数,为批处理数据的个数,TS为网络仿真为网络仿真的时间步数。的时间步数。第三章:感知器第三章:感知器3.7 3.7 单层感知器的单层感知器的MATLABMATLAB设计与实现设计与实现 mae()功能功能 平均绝对误差性能函数平均绝对误差性能函数格式格式 perf=mae(E,w,pp)说明说明 perf表示平均绝对误差和,表示平均绝对误差和,E为误差矩阵或向量为误差矩阵或向量(网络的目标向量与输出向量之差网络的目标向量与输出向量之差),w为所有权值和偏为所有权值和偏值向量值向量(可忽略可忽略),pp为性能参数为性能参数(可忽略可忽略)。plotpv()功能功能 绘制样本点的函数绘制样本点的函数格式格式 (1)plotpv(P,T)(2)plotpv(P,T,V)说明说明 P定义了定义了n个个2或或3维的样本,是一个维的样本,是一个2n维或维或3n维的矩阵;维的矩阵;T表示各样本点的类别,是一个表示各样本点的类别,是一个n维的向量;维的向量;V=x_min x_max y_min y_max,为一设置绘图坐标值范围的向量。利用,为一设置绘图坐标值范围的向量。利用plotpv()函数可在坐标图中绘出给定的样本点及其类别,不同的类别函数可在坐标图中绘出给定的样本点及其类别,不同的类别使用不同的符号。如果使用不同的符号。如果T只含一元矢量,则目标为只含一元矢量,则目标为0的输入矢的输入矢量在坐标图中用符号量在坐标图中用符号o表示:表示:目标为目标为1的输入矢量在坐标的输入矢量在坐标图中用符号图中用符号+表示。如果表示。如果T含二元矢量,则输入矢量在坐含二元矢量,则输入矢量在坐标图中所采用的符号分别如下:标图中所采用的符号分别如下:0 0用用o表示;表示;0 1用用+表示:表示:1 0用用*表示;表示;1 1用表示。用表示。第三章:感知器第三章:感知器3.7 3.7 单层感知器的单层感知器的MATLABMATLAB设计与实现设计与实现第三章:感知器第三章:感知器3.7 3.7 单层感知器的单层感知器的MATLABMATLAB设计与实现设计与实现使用使用MATLAB实现神经网络的步骤如下:实现神经网络的步骤如下:第一步 根据应用创建一个神经网络;第二步 设定神经网络的训练参数,利用给定样本对创建的神经网络进行训练;第三步 输入测试数据,测试训练好的神经网络的性能。clearclffigure(gcf)%setfsize(300,300);echo on%NEWP 建立一个感知器神经元%INIT 对感知器神经元初始化%TRAIN 训练感知器神经元%SIM 对感知器神经元仿真pause%敲任意键继续clc%P为输入矢量P=-0.5-0.5+0.3+0.0;-0.5+0.5-0.5+1.0;第三章:感知器第三章:感知器3.7 3.7 单层感知器的单层感知器的MATLABMATLAB设计与实现设计与实现Example 3.1%T为目标矢量T=1 1 0 0;pauseclc%绘制输入矢量图plotpv(P,T);pauseclc第三章:感知器第三章:感知器3.7 3.7 单层感知器的单层感知器的MATLABMATLAB设计与实现设计与实现第三章:感知器第三章:感知器3.7 3.7 单层感知器的单层感知器的MATLABMATLAB设计与实现设计与实现%定义感知器神经元并对其初始化 net=newp(-0.5 0.5;-0.5 1,1);net.initFcn=initlay;net.layers1.initFcn=initwb;net.inputWeights1,1.initFcn=rands;net.layerWeights1,1.initFcn=rands;net.biases1.initFcn=rands;net=init(net);echo offk=pickic;%选择训练方式if k=2 net.iw1,1=-0.8161 0.3078;net.b1=-0.1680;endecho onplotpc(net.iw1,1,net.b1)pause%训练感知器神经元net=train(net,P,T);net.iw1,1net.bpause%绘制结果分类曲线plotpv(P,T)plotpc(net.iw1,1,net.b1);pause第三章:感知器第三章:感知器3.7 3.7 单层感知器的单层感知器的MATLABMATLAB设计与实现设计与实现第三章:感知器第三章:感知器3.7 3.7 单层感知器的单层感知器的MATLABMATLAB设计与实现设计与实现%利用训练完的感知器神经元分类p=-0.5;0;a=sim(net,p)echo offp=-0.5;0;a=sim(net,p)a=1第三章:感知器第三章:感知器3.7 3.7 单层感知器的单层感知器的MATLABMATLAB设计与实现设计与实现选择参数1计算机设置初始值%利用训练完的感知器神经元分类p=-0.5;0;a=sim(net,p)a=1第三章:感知器第三章:感知器3.7 3.7 单层感知器的单层感知器的MATLABMATLAB设计与实现设计与实现clearfigure(gcf)echo onclc%NEWP 建立一个感知器%INIT 初始化感知器神经元%SIM 对感知器神经元仿真%TRAIN 训练感知器神经元pause%键入任意键继续P=-1+1-1+1-1+1-1+1;-1-1+1+1-1-1+1+1;-1-1-1-1+1+1+1+1;T=0 1 0 0 1 1 0 1;Example 3.2Example 3.2pause%敲任意键,绘制上述矢量plotpv(P,T);pause%敲任意键,建立一个感知器神经并对其初始化然后绘制初始分类曲线net=newp(-1 1;-1 1;-1 1,1);net.initFcn=initlay;net.layers1.initFcn=initwb;net.inputWeights1,1.initFcn=rands;net.layerWeights1,1.initFcn=rands;net.biases1.initFcn=rands;net=init(net);plotpc(net.iw1,1,net.b1)第三章:感知器第三章:感知器3.7 3.7 单层感知器的单层感知器的MATLABMATLAB设计与实现设计与实现pause%键入任意键,训练感知器神经元net.trainParam.show=1;net=train(net,P,T);net.iw1,1net.bpause%绘制结果分类曲线figure%setfsize(300,300)plotpv(P,T);plotpc(net.iw1,1,net.b1);第三章:感知器第三章:感知器3.7 3.7 单层感知器的单层感知器的MATLABMATLAB设计与实现设计与实现第三章:感知器第三章:感知器3.7 3.7 单层感知器的单层感知器的MATLABMATLAB设计与实现设计与实现pause%利用训练完的感知器神经元分类p=0.7;1.2;-0.2;a=sim(net,p)echo offnet.iw1,1net.iw1,1ans=1.4764 -1.6475 ans=1.4764 -1.6475 0.81140.8114net.bnet.bans=-0.1564ans=-0.1564p=0.7;1.2;-p=0.7;1.2;-p=0.7;1.2;-p=0.7;1.2;-0.2;0.2;0.2;0.2;a=sim(net,p)a=sim(net,p)a=sim(net,p)a=sim(net,p)a=0a=0a=0a=0本章结束,谢谢大家!本章结束,谢谢大家!结束语结束语谢谢大家聆听!谢谢大家聆听!62
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!