人工神经网络PPT课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
人工神经元的一般模型
神经元模型及其简化模型如图所示,输入向
T p [ p , p , p ] 量 ,, w1, R ] 1 2 R 、权值矩阵 w [ w1,1 , w1,2 ,
与阈值的加权和(内积运算)送入累加器,形成
净输入
响应函数 y (s) 的基本作用:
i 1
n
y ( s)
与生物神经元的区别:
(1)生物神经元传递的信息是脉冲,而上述 模型传递的信息是模拟电压。 (2)由于在上述模型中用一个等效的模拟电 压来模拟生物神经元的脉冲密度,所以在 模型中只有空间累加而没有时间累加(可以 认为时间累加已隐含在等效的模拟电压之 中 )。 (3)上述模型未考虑时延、不应期和疲劳等。
二. 感知器
W11
X1 X2
W12 W21 W22
Y1
Y2
举例: 逻辑运算
7.3 人工神经网络的数学模型
人工神经网络的构成
单个神经元的功能是很有限的,人工神经 网络只有用许多神经元按一定规则连接构 成的神经网络才具有强大的功能。 神经元的模型确定之后,一个神经网络的 特性及能力主要取决于网络的拓扑结构及 学习方法。
第七章 人工神经网络
Artificial Neural Network (ANN)
7.1 引言
一. 产生的背景 非线性复杂数学问题求解的需求
股票预测 故障检测 气象与灾害(地震/水文/农业生产等)预报预测 函数逼近与非线性拟合 方案与决策: 排课表,生产调度等 各类模式识别问题: 语音/字符/图像/视频 人工智能(如打牌下棋麻将等)
二. 人脑思维及神经系统的研究进展
人脑:140亿神经元
三.人工神经网络研究进展
计算机科学的发展 1943 提出神经元模型 1949 提出学习算法及规则 1957 提出感知器-人工神经元模型 1969 <感知器>发表,串行计算机全胜 1982 建立人工神经网络模型 1986 提出BP神经网络算法
7.5 人工神经网络MATLAB工具箱
一. 引言 MATLAB 神经网络工具箱neural network toolbox提供了图形用户界面 (graph user interface , GUI) ,从而使用 户在图形界面上,通过与计算机的交互 操作设计和仿真神经网络,使得神经网 络的设计和仿真变得简单易学.
六. 神经网络工具箱的使用流程
nntool使用过程
<step.1>数据构造与预处理 <step.2>训练数据导入nntool <step.3>建立网络 <step.4>训练网络 <step.5>仿真网络 <step.6>输出与存储模拟结果 <step.7>加载先前仿真过的网络于nntool
●TrainingParameters :设置训练的各种参数, 这要根据具体训练和学习函数进行确定,相关内 容可参看各神经网络模型的训练和学习算法。 本例采用其默认值即可。
epochs:训练的最大循环次数 goal:性能目标 max_fail:最大验证数据失败的次数 mem_reduc:降低内存需求的系数 min_grad:最小性能梯度 mu:动量的初始值 mu_dec:动量减少系数 mu_inc:动量增加系数 mu_max:动量最大值 show:每格多少训练循环次数会 显示训练过程 time:最大的训练所须时间, 单位为秒
<step.1>数据构造与预处理
<step.2>训练数据导入nntool 根据数据的多少,数据文件的格式等获取样本 数据的方法有: 1)直接输入数据:通过采用元素列表方式输 入。适用于样本数目较少时。New…按钮 2)Import from Matlab Workspace:Import… 按钮。 3)Load from disk file:适合从M-file 文件中 读取数据。 Import…按钮。
<step.5>仿真 Network/Data Manager窗口中选中network1, 双击或Open…。 在Simulate中,见图,
将仿真数据选择为testX,仿真结果选择为 network1_outputs_sim;Targets选为TestY, 误差errors为network1_errors_sim。 单击Simulate Network按钮,则在Network/ Data Manager窗口的Outputs和Errors区域分 别显示出相应的仿真结果,选中变量名,单击该 窗口的Open按钮,弹出数据窗口,在该窗口可以 查看仿真结果的具体数据,如图 所示。
trainbp:最慢; trainbpx:次之; trainlm:速度最快,但需要更多的存储空间。
learnbp:
学习规则
自组织网络
初始化:initsm 仿真: simuc 训练: trainc:利用竞争规则训练 trainsm:利用Kohonen规则训练
反馈网络(Hopfield网络)
一. 基本结构
1.前向网络
网络的结构如图所示。网 络中的神经元是分层排列 的,每个神经元只与前一 层的神经元相连接。最右 一层为输出层,隐含层的 层数可以是一层或多层。 前向网络在神经网络中应 用很广泛,例如,感知器 就属于这种类型。
2. 反馈前向网络
网络的本身是前向型 的,与前一种不同的 是从输出到输入有反 馈回路。
7.2 人工神经元与感知器
一.人工神经元模型
图中,xi(i=1,2,…,n)为加于输入端(突触)上的 输入信号;ωi为相应的突触连接权系数,它是模拟 突触传递强度的—个比例系数, ∑表示突触后信号的 空间累加;θ表示神经元的阈值,σ表示神经元的响 应函数。该模型的数学表达式为:
s i xi
确定网络模型
选择模型的类型和结构,也可对原网络进行变形和扩充 确定输入输出神经元数目 选择合理的训练算法,确定合适的训练步数,指定适当的
训练目标误差
训练模型
利用训练样本进行机器训练,确定网络参数
网络测试
选择合适的测试样本进行实际测试
7.4 BP神经网络 (Error Back Propogation)
n
m ae
| t
k 1
k
ak |
n
(3)误差平方和sse(sum squared error)
n
sse (tk ak )
k 1
2
无教师学习(无监督学习)
P 输入 神经网络 (学习系统) a 输出
无教师监督学习方式
三. 应用神经网络求解问题的一般过程
确定信息表达方式
数据样本已知且数据样本之间相互关系不确定 输入数据按照模式进行分类 数据样本的预处理 将数据样本分为训练样本和测试样本
仿真: 设计: solvehop solvelin rands learnbp learnh learnp learnwh initlin initp initsm plotsm trainbp trainp trainwh trainsm
simuhop solvehop 设计Hopfield网络 设计线性网络 产生对称随机数 反向传播学习规则 Hebb学习规则 感知层学习规则 Widrow-Hoff学习规则 线性层初始化 感知层初始化 自组织映射初始化 绘制自组织映射图 利用反向传播训练前向网络 利用感知规则训练感知层 利用Widrow-Hoff规则训练线性层 利用Kohonen规则训练自组织映射
Import from Matlab Workspace
Load from disk file
<step.3>建立网络 Network/Data
Manager窗口中New… 打开Create Network or Data,如右图。 Name:定义网络名为 network1 选择Input/Target Data, 设置训练函数等参数。 View:查看模型
<step.4>训练网络 Network/Data Manager窗口中选中network1, 双击或Open…。打开如下图 在Train中,见下页图,
可以看出,该窗口为一个多页面对话框,在 Train 页面有2个子页面: ●Training :训练数据(Training Data)的输 入向量(Inputs )选择为p,目标向量(Targets) 选择为t;训练结果(Training Results)的输出 变量(outputs ) 和误差性能变量(Errors)采用 系统自动生成的network1 _ output,和 network1 _ errors,当然它们也可以由用户 重新定义。
1、控制输入对输出的激活作用; 2、对输入、输出进行函数转换; 3、将可能无限域的输入变换成指定的有限范 围内的输出。
根据响应函数的不同,人工神经元 有以下几种类型:
阈值单元
响应函数如图a所示,
线性单元
其响应函数如图b所示
非线性单元
常用响应函数为S型(Sigmoid)函数,如图c、 d所示
二. 图形用户界面简介 函数nntool 的详解见help文档。在 MATLAB 命令窗口(command window)输入nntool, 按Enter后即可打 network\data manager(网络/数据管 理器窗补如图1 所示。)(或点击 Start/Toolboxes/Neural Network)
见笔记
BP神经网络的训练步骤
1 设置权系数初始数值(一般是0~1之间的随 机数) 2 提供训练样本 3 从前向后计算各层各单元输出 4 计算输出层误差 5 判断是否满足终止条件:如满足,训练结束, 否则继续下一步骤 6 从后向前计算各隐层误差 7 计算并保存各权值修正量 8 修正各权值系数,返回步骤3.
3. 内层互连前馈网络
通过层内神经元之间的相 互连接,可以实现同一层 神经元之间横向抑制或兴 奋的机制,从而限制层内 能同时动作的神经数,或 者把层内神经元分为若干 组,让每组作为一个整体 来动作。一些自组织竞争 型神经网络就属于这种类 型。
4. 互连网络
互连网络有局部互连和全 互连两种。全互连网络中 的每个神经元都与其他神 经元相连。局部互连是指 互连只是局部的,有些神 经元之间没有连接关系。 Hopfield网络和Boltzmann 机属于互连网络的类型。
图1 图形用户界面
三.
四.
五.MATLAB工具箱中的常用函数
线性神经网络函数 初始化: 设计: 仿真: 离线训练: 在线自适应训练: 学习规则:
initlin solvelin simulin trainwh adaptwh learnwh
BP网络函数:
initff: 初始化不超过3层的前向网络; simuff:仿Байду номын сангаас不超过3层的前向网络; trainbp,trainbpx,trainlm:训练BP
以上过程完成后,单 击该页面的Train Network按钮,开始训 练,其训练过程如图9 所示。
Algorithms:相关参数 Progress:终止条件(只要 一个满足则停止) Plots:各种图形曲线
图9 训练误差性能曲线
训练完成后,在Network/Data Manager窗口 可以看到,在Outputs区域显示出输出变量名 network1 _outputs,在Errors区域显示出误差 性能变量名network1 _ errors。选中变量名,单 击该窗口的Open按钮,则弹出数据(Data)窗口, 在该窗口可以查看到该所选中变量的具体数据。
二.神经网络的学习与训练方式
有教师学习(监督学习)
P 输入 神经网络 (学习系统) e 误差信号 实际输出
误差分析 t 有教师监督学习方式
误差信号的不同定义:
(1)均方误差mse(mean squared error)
m se E[e]
(t
k 1
n
k
ak ) n
2
(2)平均绝对误差mae (mean absolute error)