资源简介
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神经网络对几种字体0-9的数字识
- 基于BP神经网络的盲均衡算法 C程序(
- 基于BP神经网络的语音情感识别系统
- BP神经网络解决手写数字识别问题 m
- BP神经网络实现手写数字识别matlab实现
- 应用BP神经网络逼近非线性函数
- 基于BP神经网络的无线传感器定位算法
- BP神经网络在隧道基坑工程中的实际运
- 利用BP神经网络实现手写体数字识别
- 利用BP神经网络对图像提取的MATLAB代码
- 基于MATLAB的BP神经网络应用绝对好资源
- 基于Matlab的遥感影像BP神经网络分类算
- matlab基于BP神经网络的人脸识别13953
- 基于BP神经网络的水上交通事故预测及
- zw_qq_15023225-7501331-S函数的BP神经网络
- BP神经网络MATLAB.zip
- 基于BP神经网络的人脸识别源码matla
- BP神经网络用于蚊子分类
- BP神经网络的人脸识别matlab代码77617
- BP神经网络人脸识别MATLAB.zip
- 基于BP神经网络的手写数字识别matla
- 基于BP神经网络的人脸识别代码
- bp神经网络 matlab代码 识别0到10的数字
- 基于BP神经网络的人脸识别系统_安大
- 基于MATLAB的BP神经网络的人脸朝向识别
- 基于S函数的BP神经网络PID控制器及S
- 基于bp神经网络字符识别系统 matlab代
- 光伏太阳能功率预测基于BP神经网络
- BP神经网络 手写体
- 基于BP神经网络的验证码识别matlab
评论
共有 条评论