MATLAB神经网络工具箱中的神经网络模型
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
互连网络
互连网络有局部互连和全 互连两种。全互连网络中 的每个神经元都与其他神 经元相连。局部互连是指 互连只是局部的,有些神 经元之间没有连接关系。 Hopfield网络和Boltzmann 机属于互连网络的类型。
神经网络的学习方式
有教师学习(监督学习)
P 输入
神经网络 (学习系统)
实际输出
神经元模型及其简化模型如图所示,输入向
量 p [ p1, p2,
pR
]T、权值矩阵
w
[w 1,1
,
w1,2 ,,,
w1,R
]
与阈值的加权和(内积运算)送入累加器,形成
净输入,即:
人工神经元模型
图中,xi(i=1,2,…,n)为加于输入端(突触)上的 输入信号;ωi为相应的突触连接权系数,它是模拟 突触传递强度的—个比例系数, ∑表示突触后信号的 空间累加;θ表示神经元的阈值,σ表示神经元的响 应函数。该模型的数学表达式为:
Logsig:y= 1 1 ex
人工神经网络的构成
单个神经元的功能是很有限的,人工神经 网络只有用许多神经元按一定规则连接构 成的神经网络才具有强大的功能。
神经元的模型确定之后,一个神经网络的 特性及能力主要取决于网络的拓扑结构及 学习方法。
人工神经网络连接的基本形式:
1.前向网络 网络的结构如图所示。网
n1 IW1P b1
a1为第一层神经元的输出向量,大小为 S 1 1
,
a1 f 1 (IW 1P b1 )
神经网络的层数为神经元网络层的数目加1, 即隐层数目加1.
多层神经网络结构
a 2 f 2 (LW 2a1 b2 ) f 2[LW 2 f 1 (IW 1 p b1 ) b2 ]
iw1,1 s1 , R
说明:
输入层神经元的个数决定IW的行数,输入向 量元素的个数决定IW的列数,即S1行R列.
4.公式和图形中的变量符号在编程 代码中的表示方法
, ,
细胞矩阵:将多个矩阵 向量作为细胞矩阵的” 细胞”(Cell),细胞矩阵 的各个元素值为对应 细胞的大小和数值类
MATLAB神经网络工 具箱中的神经网络 模型
神经网络工具箱简介
MATLAB 7对应的神经网络工具箱的版本为 Version 4.0.3,它以神经网络理论为基础,利用 MATLAB脚本语言构造出典型神经网络的激活函 数,如线性、竞争性和饱和线性等激活函数,使设 计者对所选定网络输出的计算变成对激活函数的 调用。
初始化: initp 训练: trainp 仿真: simup 学习规则: learnp
线性神经网络函数
初始化: 设计: 仿真: 离线训练: 在线自适应训练: 学习规则:
initlin solvelin simulin trainwh adaptwh learnwh
神经网络例子
创建线性神经网络层
net = newlin([1 3;1 3],1); net.IW{1,1} = [1 2]; net.b{1} = 0; 设有数据集由4个向量组成 p1=[1 2]’ p2= [2 1]’ p3=[2 3]’ p4=[3 1]’
P=[1 2 2 3;2 1 3 1] A = sim(net,P) A= 5485
络中的神经元是分层排列 的,每个神经元只与前一 层的神经元相连接。最右 一层为输出层,隐含层的 层数可以是一层或多层。 前向网络在神经网络中应 用很广泛,例如,感知器 就属于这种类型。
2. 反馈前向网络
网络的本身是前向型 的,与前一种不同的 是从输出到输入有反 馈回路。
内层互连前馈网络
通过层内神经元之间的相 互连接,可以实现同一层 神经元之间横向抑制或兴 奋的机制,从而限制层内 能同时动作的神经数,或 者把层内神经元分为若干 组,让每组作为一个整体 来动作。一些自组织竞争 型神经网络就属于这种类 型。
自组织网络
初始化:initsm 仿真: simuc 训练: trainc:利用竞争规则训练
trainsm:利用Kohonen规则训练
反馈网络(Hopfield网络)
仿真: 设计: solvehop solvelin rands learnbp learnh learnp learnwh initlin initp initsm plotsm trainbp trainp trainwh trainsm
i1
R
则
,
a
f
(
wi pi b)
i 1
人工神经元的一般模型
由此构成人工神经元的一般模型,如下图所示。
上式可写成矩阵向量形式:a=f(Wp+b)
由S个神经元组成的单层网络
输入
S个神经元的层
p1
w1,1
n1 f a1
b1
p2
1 n2 f a2
p3
b2
1
pR
wS,R
ns f as bs
线性单元
其响应函数如图b所示
非线性单元
常用响应函数为S型(Sigmoid)函数,如图c、 d所示
Hardlim x>=0 y=1;x<0 y=0 Hardlims:x>=0 y=1; x<0 y=-1 Purelin :y=x Satlin:x<0 y=0;x>1 y=1;x>=0&&x<=1 y=x;
(2)下标变量以圆括号表示, ,
p1=p(1),
p12 p{1}(2)
p2 2,2
p{2}(2,2)
例:
iw12,,13 = iw{1,1}(2,3)
p1,(k1) p{1, k 1}
p 2Βιβλιοθήκη Baidu( k 1) 2
p{2, k
1}(2)
神经网络工具箱常用函数列表
重要的感知器神经网络函数:
接权.
lws22,1,s1表示……
bi si
表示…
第i个网络层的第 s i 个神经元的阈值
例:
输入
S个神经元的层
p1
w1,1
n1 f a1
b1
p2
1
n2 f a2
p3
b2
1
pR
wS,R
ns f as bs
1
输入
S个神经元的层
n1为第一层神经元的中间运算结果,即连接权向量 与阈值向量的加权和,大小为 S1 1 ,即
BP网络函数:
initff: 初始化不超过3层的前向网络;
simuff:仿真不超过3层的前向网络;
trainbp,trainbpx,trainlm:训练BP
trainbp:最慢;
trainbpx:次之;
trainlm:速度最快,但需要更多的存储空间。
learnbp:
学习规则
化形式 数据样本的预处理 将数据样本分为训练样本和测试样本
确定网络模型
选择模型的类型和结构,也可对原网络进行变形和扩充
网络参数的选择
确定输入输出神经元数目
训练模型的确定
选择合理的训练算法,确定合适的训练步数,指定适当的训练目标误 差
网络测试
选择合适的测试样本
人工神经元的一般模型
a 网 个络神层经输元出,a为: 输smm出, m为第m个网络层, s m为第 s m
输入层权值矩阵IW k,l ,网络层权值矩阵 LW k,l,其 中,上标k,l表示第l个网络层到第k个网络层的连 接权值矩阵向量
例:
iw1,1 s1,R
表示输入向量的第R个输入
元素到输入层的第 s1 个神经元的连
n
s i xi i1
y (s)
与生物神经元的区别:
(1)生物神经元传递的信息是脉冲,而上述 模型传递的信息是模拟电压。
(2)由于在上述模型中用一个等效的模拟电 压来模拟生物神经元的脉冲密度,所以在 模型中只有空间累加而没有时间累加(可以 认为时间累加已隐含在等效的模拟电压之 中)。
(3)上述模型未考虑时延、不应期和疲劳等。
响应函数 y (s) 的基本作用:
1、控制输入对输出的激活作用; 2、对输入、输出进行函数转换; 3、将可能无限域的输入变换成指定的有限范
围内的输出。
根据响应函数的不同,人工神经元 有以下几种类型:
阈值单元
响应函数如图a所示,
(3)误差平方和sse(sum squared error)
n
sse (tk ak )2 k 1
无教师学习(无监督学习)
P 输入
神经网络 (学习系统)
a 输出
无教师监督学习方式
MATLAB工具箱中的神经网络结构
1.人工神经元的一般模型
在
s
n
i xi
中,令 b , pi xi
1 2 a 3 4
1 2 c 3 4
1 2 3 b 4 5 6
5 6
型
m
a,
b
[2 [2
2double] 3double]
n
a b
[] c
[2 2double] [2 3double][3
simuhop
solvehop 设计Hopfield网络 设计线性网络 产生对称随机数 反向传播学习规则 Hebb学习规则 感知层学习规则 Widrow-Hoff学习规则 线性层初始化
感知层初始化 自组织映射初始化 绘制自组织映射图 利用反向传播训练前向网络 利用感知规则训练感知层 利用Widrow-Hoff规则训练线性层 利用Kohonen规则训练自组织映射
[] 2double]
1 2 访问元素:m{1}=n{1,1}= a 3 4
1 2 3 m{2}=n{2,1}= b 4 5 6
n{2,1}(4)=5
变量符号在MATLAB中的表示
(1)上标变量以细胞矩阵(Cell array)即大括 号表示p1={1}
多层网络简化形式
图中:
P p1, p2,... pR
b1 [b11,b21,...bs11 ]
I W 1,1
iw11,,11 iw12,,11
iw1s1,1,1
iw11,,12 iw12,,12
iw1,1 s1 , 2
...
iw11,,R1 iw12,,1R
例2:See P14 in textbook 例3:See P39 例4: See P40
数; 矩阵向量:大写黑体字母,如A,B,C等
权值矩阵向量W(t)
标量元素 wi, j (t) ,i为行,j为列,t为时间或迭代
函数 列向量 w j (t) 行向量 wi (t)
阈值向量b(t)
标量元素bi (t) ,i为行,t为时间或迭代函数
网络层符号
加 个权神和经元: ,nns为mm 加,m权为和第m个网络层, s m 为第
还可根据各种典型的修正网络权值规则,加上网 络的训练过程,利用MATLAB编写出各种网络设 计和训练的子程序,用户根据自己的需要去调用。
神经网络工具箱的主要应用
函数逼近和模型拟合 信息处理和预测 神经网络控制 故障诊断
应用神经网络工具箱求解问题的一般过程
确定信息表达方式
数据样本已知 数据样本之间相互关系不确定 输入/输出模式为连续的或者离散的 输入数据按照模式进行分类,模式可能会具有平移、旋转或伸缩等变
1
输入
S个神经元的层
P R×1
W
S×R
a
+ f n S×1
S×1
1
b
S
R
S×1
a=f(Wp+b)
简化表示
输入
S个神经元的层
MATLAB工具箱中的神经网络结构
多层网络的简化表示:
MATLAB神经网络工具箱中的神经 网络模型
基本概念: 标量:小写字母,如a,b,c等; 列向量:小写黑体字母,如a,b,c等,意为一列
e 误差信号
误差分析
t 有教师监督学习方式
误差信号的不同定义:
(1)均方误差mse(mean squared error)
n
(tk ak )2
mse E[e] k1 n
(2)平均绝对误差mae (mean absolute error)
n
| tk ak |
mae k1 n