BP神经网络及简单示例
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
x=[1.24 1.80;1.28 1.84;1.40 2.04]'; y0=sim(net,p)
y=sim(net,x)
Thanks !
Pi:初始输入延迟,默认为0; Ai:初始的层延迟,默认为0; T:网络目标,默认为0.
clear p1=[1.24,1.27;1.36,1.74;1.38,1.64;1.38,1.82;1.38,1.90; 1.40,1.70;1.48,1.82;1.54,1.82;1.56,2.08]; p2=[1.14,1.82;1.18,1.96;1.20,1.86;1.26,2.00 1.28,2.00;1.30,1.96]; p=[p1;p2]'; pr=minmax(p);
层内有互相结合的前向网络:
特点:可以实现同一层内神经元之间的横 向抑制或兴奋作用
相互结合型网络:
特点:任意两个神经元之间都可能有 联系
BP神经网络
多层前馈神经网络,信号向前传播,误差向后传播。
输入层
中间层
j
输出层
i
k
输入层
i
中间层 j
输出层
k
xi
ji
中间层:
输入
输出
p
kj
u j xi ji
1 s (Ti f ( ( f ( ( xi ji )) kj ))) 2 i、s j 1 i 1
使得E(w)最小的
n
p
ji、kj
作为所需的权值
传递函数(激活函数)
logsig(S型函数):
MATLAB按此函数计算:
2 f ( x) 2 x 1 e
调用格式:A=logsig(N)
Vk f ( ( f ( ( xi ji )) kj ))
j 1 i 1 n p
思路:
1、触角长和翼长作为输入信息,分别记为x1,x2。 目标输出:(0,1) 、(1,0)。 Af类记为 (1,0),Apf类记为(0,1)。
输入层
中间层
j
输出层
i
k
xi
ji
kj
Vk f ( ( f ( ( xi ji )) kj )) 0或1
神经网络仿真函数sim 调用格式为:
[Y,Pf,Af,E,perf]=sim(net,P,Pi,Ai,T)
其中,
Y:函数返回值,网络输出;
Pf:函数返回值,最终输出延迟; Af:函数返回值,最终的层延迟;
E:函数返回值,网络误差;
perf:函数返回值,网络性能; net:待仿真的神经网络;
P:网络输入;
如:
n=-10:0.1:10 a=tansig(n) plot(n,a)
1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 -10
grid on
如右图所示
-8
-6
-4
-2
0
2
4
6
8
10
常用函数
newff
net=newff net=newff(PR,[S1 S2 …SN1],{TF1 TF2…TFN1},BTF,BLF,PF) 其中,
net=newff :用于在对话框中创建一个BP网络
PR :由每组输入(共有R组输入)元素的最大值和最小值组成的R×2维的矩 阵; Si :第i层的长度,共计N1层 TFi:第i层的传递函数,默认为“tansig” BTF:BP网络的训练函数,默认为“trainlm”; BLF:权值和阈值的BP学习算法,默认为“learngdm” PF:网络的性能函数,默认为“mse”
xj为输入信号, i 为阈值, ij表示与神经元 xj 连接的权值
yi表示输出值
传递函数
阈值型
线性型
1 f (x) 0
1 f ( xi ) axi b 0
xi 0
xi 0
x1 xi x2
xi x1
xi x2
S型
f ( xi )
1 1 e
神经网络
——浅尝
数学建模工作室 张敏
神经网络浅尝
• 神经网络基础知识
• 常用函数介绍
• 案例——蠓虫分类
神经网络基础知识
构成:大量简单的基本元件——神经元相互连接
工作原理:模拟生物的神经处理信息的方式
功能:进行信息的并行处理和非线性转化
特点:比较轻松地实现非线性映射过程
具有大规模的计算能力
医学:疾病识别
i 1
v j f (u j )
输入层
i
中间层 j
输出层
k
xi
ji
输出层:
kj
输入
输出
U k v j kj
j 1
n
Vk f (U k )
输入层
i
中间层 j
输出层
k
xi
ji
n p j 1 i 1
kj
U k ( f ( ( xi ji )) kj )
如:
n=-10:0.1:10 a=logsig(n)
plot(n,a)
grid on
图形如下:
1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 -10
-8
-6
-4
-2
0
2
4
6
8
10
tansig(双曲正切S型传递函数):
f ( x)
2 1 2n 1 e
调用格式:A=tansig(n)
j 1 i 1
n
pLeabharlann Baidu
输入层
i
中间层
j
输出层
k
xi
ji
kj
ji、kj
2、通过已知样本训练出合适的权值 使输出为(0,1)或(1,0)。
3、将待区分的蠓虫数据输入网络,求值。
权值求法:向后传播法
理想输出 Af类(1,0),Apf类(0,1)记为 { Tis} 则有误差:
2 1 s E ( ) (Ti Vk ) 2 i、s
应用范围
图像:识别、去噪、增强、配准、 融合 金融:股票和有价证券的预测分 析、资本收益的预测和分析、风 险管理、信用评估等等
神经网络结构图
输入层 中间层 输出层
生物神经元结构:
突触
细胞体
细胞核 轴突 神经末梢
树突
神经元结构模型
x1
x2 x3
xj
ij
xn
i
yi
可以看出神经元一般表现为一个多输入、单输出的非线性器件
创建一个BP网络,其调用格式为:
train
其中,
用于对神经网络进行训练。调用格式为:
[net,tr,Y,E,Pf,Af]=train(NET,P,T,Pi,Ai)
NET:待训练的神经网络; P:网络的输入信号; T:网络的目标,默认值为0; Pi:初始的输入延迟,默认为0; Ai:初始的层次延迟,默认为0; net:函数返回值,训练后的神经网络; tr:函数返回值,训练记录(包括步数和性能); Y:函数返回值,神经网络的输出信号; E:函数返回值,神经网络的误差; Pf:函数返回值,最终输入延迟; Af:函数返回值,最终层延迟。
goal=[ones(1,9),zeros(1,6);zeros(1,9),ones(1,6)];
plot(p1(:,1),p1(:,2),'h',p2(:,1),p2(:,2),'o') net=newff(pr,[3,2],{'logsig','logsig'});
net = train(net,p,goal);
xi 2 ( ) c
神经网络的互连模式
前向网络: 神经元分层排列,分别组成输入层、中间层(也
叫隐含层,可以由若干层组成)和输出层。 输入层 中间层 输出层
特点:每层只接受前一层的信息,没有反馈。
如:感知器网络和BP神经网络
有反馈的前向神经网络:
特点:输出层对输入层有反馈信息。
如:认知机和回归BP网络。
y=sim(net,x)
Thanks !
Pi:初始输入延迟,默认为0; Ai:初始的层延迟,默认为0; T:网络目标,默认为0.
clear p1=[1.24,1.27;1.36,1.74;1.38,1.64;1.38,1.82;1.38,1.90; 1.40,1.70;1.48,1.82;1.54,1.82;1.56,2.08]; p2=[1.14,1.82;1.18,1.96;1.20,1.86;1.26,2.00 1.28,2.00;1.30,1.96]; p=[p1;p2]'; pr=minmax(p);
层内有互相结合的前向网络:
特点:可以实现同一层内神经元之间的横 向抑制或兴奋作用
相互结合型网络:
特点:任意两个神经元之间都可能有 联系
BP神经网络
多层前馈神经网络,信号向前传播,误差向后传播。
输入层
中间层
j
输出层
i
k
输入层
i
中间层 j
输出层
k
xi
ji
中间层:
输入
输出
p
kj
u j xi ji
1 s (Ti f ( ( f ( ( xi ji )) kj ))) 2 i、s j 1 i 1
使得E(w)最小的
n
p
ji、kj
作为所需的权值
传递函数(激活函数)
logsig(S型函数):
MATLAB按此函数计算:
2 f ( x) 2 x 1 e
调用格式:A=logsig(N)
Vk f ( ( f ( ( xi ji )) kj ))
j 1 i 1 n p
思路:
1、触角长和翼长作为输入信息,分别记为x1,x2。 目标输出:(0,1) 、(1,0)。 Af类记为 (1,0),Apf类记为(0,1)。
输入层
中间层
j
输出层
i
k
xi
ji
kj
Vk f ( ( f ( ( xi ji )) kj )) 0或1
神经网络仿真函数sim 调用格式为:
[Y,Pf,Af,E,perf]=sim(net,P,Pi,Ai,T)
其中,
Y:函数返回值,网络输出;
Pf:函数返回值,最终输出延迟; Af:函数返回值,最终的层延迟;
E:函数返回值,网络误差;
perf:函数返回值,网络性能; net:待仿真的神经网络;
P:网络输入;
如:
n=-10:0.1:10 a=tansig(n) plot(n,a)
1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 -10
grid on
如右图所示
-8
-6
-4
-2
0
2
4
6
8
10
常用函数
newff
net=newff net=newff(PR,[S1 S2 …SN1],{TF1 TF2…TFN1},BTF,BLF,PF) 其中,
net=newff :用于在对话框中创建一个BP网络
PR :由每组输入(共有R组输入)元素的最大值和最小值组成的R×2维的矩 阵; Si :第i层的长度,共计N1层 TFi:第i层的传递函数,默认为“tansig” BTF:BP网络的训练函数,默认为“trainlm”; BLF:权值和阈值的BP学习算法,默认为“learngdm” PF:网络的性能函数,默认为“mse”
xj为输入信号, i 为阈值, ij表示与神经元 xj 连接的权值
yi表示输出值
传递函数
阈值型
线性型
1 f (x) 0
1 f ( xi ) axi b 0
xi 0
xi 0
x1 xi x2
xi x1
xi x2
S型
f ( xi )
1 1 e
神经网络
——浅尝
数学建模工作室 张敏
神经网络浅尝
• 神经网络基础知识
• 常用函数介绍
• 案例——蠓虫分类
神经网络基础知识
构成:大量简单的基本元件——神经元相互连接
工作原理:模拟生物的神经处理信息的方式
功能:进行信息的并行处理和非线性转化
特点:比较轻松地实现非线性映射过程
具有大规模的计算能力
医学:疾病识别
i 1
v j f (u j )
输入层
i
中间层 j
输出层
k
xi
ji
输出层:
kj
输入
输出
U k v j kj
j 1
n
Vk f (U k )
输入层
i
中间层 j
输出层
k
xi
ji
n p j 1 i 1
kj
U k ( f ( ( xi ji )) kj )
如:
n=-10:0.1:10 a=logsig(n)
plot(n,a)
grid on
图形如下:
1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 -10
-8
-6
-4
-2
0
2
4
6
8
10
tansig(双曲正切S型传递函数):
f ( x)
2 1 2n 1 e
调用格式:A=tansig(n)
j 1 i 1
n
pLeabharlann Baidu
输入层
i
中间层
j
输出层
k
xi
ji
kj
ji、kj
2、通过已知样本训练出合适的权值 使输出为(0,1)或(1,0)。
3、将待区分的蠓虫数据输入网络,求值。
权值求法:向后传播法
理想输出 Af类(1,0),Apf类(0,1)记为 { Tis} 则有误差:
2 1 s E ( ) (Ti Vk ) 2 i、s
应用范围
图像:识别、去噪、增强、配准、 融合 金融:股票和有价证券的预测分 析、资本收益的预测和分析、风 险管理、信用评估等等
神经网络结构图
输入层 中间层 输出层
生物神经元结构:
突触
细胞体
细胞核 轴突 神经末梢
树突
神经元结构模型
x1
x2 x3
xj
ij
xn
i
yi
可以看出神经元一般表现为一个多输入、单输出的非线性器件
创建一个BP网络,其调用格式为:
train
其中,
用于对神经网络进行训练。调用格式为:
[net,tr,Y,E,Pf,Af]=train(NET,P,T,Pi,Ai)
NET:待训练的神经网络; P:网络的输入信号; T:网络的目标,默认值为0; Pi:初始的输入延迟,默认为0; Ai:初始的层次延迟,默认为0; net:函数返回值,训练后的神经网络; tr:函数返回值,训练记录(包括步数和性能); Y:函数返回值,神经网络的输出信号; E:函数返回值,神经网络的误差; Pf:函数返回值,最终输入延迟; Af:函数返回值,最终层延迟。
goal=[ones(1,9),zeros(1,6);zeros(1,9),ones(1,6)];
plot(p1(:,1),p1(:,2),'h',p2(:,1),p2(:,2),'o') net=newff(pr,[3,2],{'logsig','logsig'});
net = train(net,p,goal);
xi 2 ( ) c
神经网络的互连模式
前向网络: 神经元分层排列,分别组成输入层、中间层(也
叫隐含层,可以由若干层组成)和输出层。 输入层 中间层 输出层
特点:每层只接受前一层的信息,没有反馈。
如:感知器网络和BP神经网络
有反馈的前向神经网络:
特点:输出层对输入层有反馈信息。
如:认知机和回归BP网络。