nullnull第五章 典型人工神经网络null第5.1节 感知器null第5.1节 感知器5.1.2多层感知器模型和学习算法5.1.3多层感知器应用实例null5.1.1 感知器模型和用途1. 结构和数学模型神经元输入:神经元输出:向量形式:感知器输入输出函数为:null5.1.1 感知器模型和用途神经元输入:神经元输出:说明:(1) 原始感知器模型采用阈值函数类型的激励函数(2) 现常用Sigmoid函数作为激励函数(3) 针对阈值函数讨论其用途null5.1.1 感知器模型和用途2. 两种理解方式(用途)(1) 模式识别器(分类器)(2) 逻辑函数解决只有2类模式的识别问
题
快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题
只能识别具有线性边界的识别问题二值逻辑元,实现布尔代数的某些运算,包括:“与”、“或”和“非”不能实现“异或”P119 图5.1.2P120 图5.1.3nullx1x2xnw1w2wn..X0 = 1w0 M-P感知机是一个多输入单输出的模型,虽然结构简单,但具有一定的计算能力。 通过学习(权重),它能够正确地分类样本(二分类),但只能线性分类。 单一人工神经元——单层感知机null与
逻
辑或
逻
辑分类能力
分析
定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析
null异
或
逻
辑andorxor单层感知机单层感知机 通过适当的选择权重,单层感知机能够实现and, or, not布尔逻辑。单层感知机找不到相应的权重来实现XOR逻辑
单层感知机不具备非线性分类能力!null第5.1节 感知器5.1.1 感知器模型和用途5.1.3多层感知器应用实例null结构特征:
在输入层和输出层之间嵌入一层或多层隐含层。
隐含单元既可以与输入输出单元相连,也可以与其它隐含单元相连。
分类:
含一个隐含层前向传播网络
L+1层前向传播网络多层感知器模型结构特点:5.1.2 多层感知器模型和学习算法null5.1.2 多层感知器模型和学习算法含一个隐层的感知器模型null数学描述nullL+1层前向传播网络null多层感知器模型的功能:5.1.2 多层感知器模型和学习算法说明: (1) 激励函数只要求连续、光滑、单增、上下有界的非线性函数即可 (2) 为简化计算,输出层常采用线性神经元 null前向传播网络实质上表示的是一种从输入空间到输出空间的映射。
网络的训练实质上是对突触权阵的调整,以满足当输入为Xp时其输出应为Yd。
思想:前向计算得到网络的输出, 反向计算得到误差的积累,由梯度下降法调整权值。学习算法5.1.2 多层感知器模型和学习算法null学习算法结构图5.1.2 多层感知器模型和学习算法null性能指标null学习算法null学习算法(续)null学习算法(续)null学习算法(续)null学习算法(续)null学习算法(续)null对每个样本重复下述过程,直到收敛:学习算法描述null学习算法描述(续)null算法基本
流程
快递问题件怎么处理流程河南自建厂房流程下载关于规范招聘需求审批流程制作流程表下载邮件下载流程设计
null权系数的初值:
随机选较小的值,尽量均匀覆盖权值空间,避免出现初始权值相同的情况。
学习方式:
增量型学习
方法
快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载
效果好;累积型学习方法速度快。
激励函数:
非减可微函数。可通过调节Sigmoid函数的斜率或采用其它激励函数来改善网络的学习性能。
学习速率:
学习速率小,训练速度慢;学习速率大,训练速度快,可能出现振荡现象。影响BP学习算法的因素null非线性优化的局部极小,或振荡不收敛;
收敛速度很慢;
新样本的加入会影响已学习过的老样本。BP学习算法的局限性null选用不同的作用函数、性能指标;
解决局部极小问题
选用不同的初值迭代;激励函数加入斜率因子;模拟退火方法;分解子网。
加快收敛速度
采用不同的激励函数;变学习率方法;利用激励函数的二阶导数;最速下降法;组合学习方法;权值修正引入动量因子;遗传算法;等等。BP学习算法的改进null准则:
检查权值的修正值是否真正降低了误差函数,如果确实如此,则说明所选取的学习速率值小了,可以对其增加一个量;
若不是这样,而产生了过调,那么就应该减
小学
小学生如何制作手抄报课件柳垭小学关于三违自查自纠报告小学英语获奖优质说课课件小学足球课教案全集小学语文新课程标准测试题
习速率的值。自适应变学习率方法null在修正其权值时,不仅考虑误差在梯度上的作用,而且考虑在误差曲面上变化趋势的影响。利用附加动量的作用则有可能滑过局部极小值。
该方法是在反向传播法的基础上,在每一个权值的变化上加上一项正比于前次权值变化量的值,并根据反向传播法来产生新的权值变化。动量因子,一般取0.95左右附加动量法null网络的层数
隐含层的神经元数
初始权值的选取
学习速率的选取
期望误差的选取BP网络的设计null理论上已经证明:至少一个S型隐含层加上一个线性输出层的网络,能够逼近任何有理函数。
增加层数主要可以更进一步的降低误差,提高精度,但同时也使网络复杂化,从而增加了网络权值的训练时间。
一般情况下,应优先考虑增加隐含层中的神经元数。
能不能仅用具有非线性激活函数的单层网络来解决问题呢?结论是:没有必要或效果不好。BP网络的层数null网络训练精度的提高,可以通过采用一个隐含层,而增加其神经元数的方法来获得。这在结构实现上,要比增加更多的隐含层要简单得多。
在具体设计时,比较实际的做法是通过对不同神经元数进行训练对比,然后适当地加上一点余量。 BP网络隐含层的神经元数初始权值的选取一般取初始权值在(-1,1)之间的随机数。 null学习速率决定每一次循环训练中所产生的权值变化量。
大的学习速率可能导致系统的不稳定。
小的学习速率导致较长的训练时间,可能收敛很慢,不过能保证网络的误差值不跳出误差表面的低谷而最终趋于最小误差值。
所以在一般情况下,倾向于选取较小的学习速率以保证系统的稳定性。学习速率的选取范围在0.01-0.8之间。BP网络学习速率的选取null在设计网络的训练过程中,期望误差值也应当通过对比训练后确定一个合适的值。
这个所谓的“合适”,是相对于所需要的隐含层的节点数来确定,因为较小的期望误差值是要靠增加隐含层的节点,以及训练时间来获得的。
一般情况下,作为对比,可以同时对两个不同期望误差值的网络进行训练,最后通过综合因素的考虑来确定采用其中一个网络。BP网络期望误差的选取null例5.1.1 P128 BP网络训练
5.1.3 多层感知器应用实例nullMatlab 命令窗口输入 “Help 函数名” 可得到相关函数的详细介绍;
补充:感知器神经网络工具箱函数输入 Demop1
利用具有2个神经元
的感知器实现对5个
输入数据的两分类
null补充:感知器神经网络工具箱函数常用指令: P175 表7.2.2
P180 例7.2.1
% 感知器网络实验
X=[-0.5 -0.5 0.3 -0.1 0.2 0.6 0.8 0.6;
-0.5 0.5 -0.5 1 0.5 -0.9 0.8 -0.6]
T=[1 1 0 1 1 0 1 0]
[w,b]=initp(X,T)
[w,b,epochs,erros]=trainp(w,b,X,T)
Y=simup(X,w,b)
testX=[-0.5 0.3 -0.9 0.4 -0.1 0.2 -0.6 0.8 0.1 0.4;
-0.3 -0.8 -0.4 -0.7 0.4 -0.6 0.1 -0.5 -0.5 0.3]
y=simup(testX,w,b)
figure
plotpv(testX,y)
plotpc(w,b)null误差曲线分类结果null补充:BP网络工具箱函数 BP网络演示函数 nnd11nf - Network function demonstration.
nnd11bc - Backpropagation calculation demonstration.
nnd11fa - Function approximation demonstration.
nnd11gn - Generalization demonstration.BP网络相关指令 P181 表7-2-3Initff
Simuff
Trainbpx
例7.2.2 方法一newff
train
Sim
例7.2.2 方法二过程:
输入训练样本 X,T;
利用相关指令初始化网络;initff; newff
设置相关参数;见P189-P190;P191
训练网络;trainbpx;train
查看训练结果;simuff;sim
输入测试数据;
查看仿真结果; simuff;simnull单神经元PID控制