资源简介
BP神经网络的算法matlab代码,包括实验报告和源代码,可直接运行
代码片段和文件信息
%初始化两层BP算法的学习期(训练加权系数WkiWij)
lr=0.05; %lr为学习速率
err_goal=0.001; %err_goal为期望误差最小值
max_epoch=1000; %训练的最大次数
Pn=[3 6 6.142 3 2.5 4.5 1.8 5.5 2.5 2.7 2 2.9 5 0.7 2 3 0.5 4 1 1.9 160 260 62.328 200 700 1500 1500 2000 1200 2200 10 4 5 14 3 3 4 5 2 1 1 1 8 2 1 1 3 1 2 5 60 57 65 72 70 80 75 75 40 51 62 58 40 45 65 68 71 63 69 60]; %给定输入
Tn=[1 4 2 6 1 4 0 0 0 1 19 45 24 57 9 50 1 14 0 12 17 53 32 102 15 63 13 16 11 32 4 20 3 14 13 35 8 6 9 5]; %给定输出
%归一化处理
Pm=0.8*(Pn - min(Pn))/(max(Pn) - min(Pn))+0.1;
Tm=0.8*(Tn - min(Tn))/(max(Tn) - min(Tn))+0.1;
P=[Pm(1:10);Pm(11:20);Pm(21:30);Pm(31:40);Pm(41:50);Pm(51:60);Pm(61:70)];
T=[Tm(1:10);Tm(11:20);Tm(21:30);Tm(31:40)];
%提供10组7个神经元输入和4个神经元输出的训练集和目标值
%初始化WkiWij(M为输入节点j的数量,q为隐含层节点i的数量(最终确定隐层神经元个数为15),L为输出节点的数量,N为样本点的组数)
[MN]=size(P);q=15;[LN]=size(T);
Wij=rand(qM); %随机给定输入层与隐含层间的权值
Wki=rand(Lq); %随机给定隐含层与输出层间的权值
b1=zeros(q1);b2=zeros(L1); %随机给定隐含层、输出层的阈值
for epoch=1:max_epoch
Oi=tansig(Wij*Pb1); %计算网络隐含层的各神经元输出
Ok=logsig(Wki*Oib2); %计算网络输出层的各神经元输出
E=T-Ok; %计算网络误差
deltak=deltalin(OkE); %计算网络输出层的delta
deltai=deltatan(OideltakWki); %计算网络隐含层的delta
[dWkidb2]=learnbp(Oideltaklr); %调整输出层加权系数
Wki=Wki+dWki;b2=b2+db2;
[dWijdb1]=learnbp(Pdeltailr); %调整隐含层加权系数
Wij=Wij+dWij;b1=b1+db1;
%计算网络权值修正后的误差平方和
SSE=sumsqr(T-logsig(Wki*tansig(Wij*Pb1)b2));
if(SSE end
%BP算法的测试工作期(根据训练好的WkiWij和给定的输入计算输出)
P1n=[2.1 0.9 2200 11 8 60 73]; %给定测试输入
Pn1=0.8*(P1n - min(P1n))/(max(P1n) - min(P1n))+0.1; %归一化
P1=[Pn1(1);Pn1(2);Pn1(3);Pn1(4);Pn1(5);Pn1(6);Pn1(7)];
Oi=tansig(Wij*P1b1); %计算网络隐含层的各神经元输出
Ok=logsig(Wki*Oib2); %计算网络输出层的各神经元输出
Ok %显示网络输出层的实际输出
Y=[0.2901 0.8726 0.1400 0.4061] %测试样本值的实际输出
plot(1:4Ok‘r‘1:4Y‘b‘)
title(‘测试样本的实际输出和期望输出对照图‘)
xlabel(‘测试样本点‘)
ylabel(‘对应输出值(红色为实际输出,蓝色为预测输出)‘)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2323 2011-10-25 13:45 BP神经网络的算法matlab代码\BP.m
文件 133632 2011-10-25 14:13 BP神经网络的算法matlab代码\林雨辰-BP神经网络实验报告.doc
文件 1030144 2011-10-11 14:27 BP神经网络的算法matlab代码\第二章 BP网络设计与应用-例子.doc
目录 0 2018-05-31 15:30 BP神经网络的算法matlab代码
----------- --------- ---------- ----- ----
1166099 4
- 上一篇:实现DS证据理论的Matlab源码
- 下一篇:最小二乘法系统辨识matlab 程序
相关资源
- BP神经网络预测matlaB实现
- BP神经网络数据预测matlab代码.zip
- 4 BP神经网络信号拟合matlab程序.zip
- 一个基于bp神经网络的matlab 识别0-9数
- MATLAB之BP神经网络的汉字识别GUI,可换
- BP神经网络时间序列预测matlab代码ma
- matlab 遗传算法优化BP神经网络程序
- 基于BP神经网络的MATLAB回归程序
- PSO优化BP神经网络模型.zip
- 基于遗传算法的BP神经网络优化算法—
- BP神经网络预测模型
- 基于BP神经网络的函数逼近不使用任何
- 基于BP神经网络的PID控制器的Matlab仿真
- 利用bp神经网络实现0~9数字识别,
- MATLAB基于BP神经网络的手写数字识别代
- 小批量梯度下降实现BP神经网络.rar
- 粒子群训练bp神经网络的matlab程序
- BP神经网络预测实例
- bp神经网络预测
- pso优化bp神经网络
- BP神经网络的算法实现分类功能
- BP and ELM BP神经网络与ELM神经网络算法
- BP神经网络PID S函数
- Quantum GABP 自适应量子遗传算法优化
- bp神经网络的adp小程序
- 用matlab编写的BP神经网络用于预测房价
- BP神经网络在矿井通风机故障诊断中的
- 基于BP神经网络的煤矿矿井空调模糊控
- 基于PSO-BP的算法
- BP神经网络应用预测公路运输量matla
评论
共有 条评论