资源简介
matlab当中使用循环进行bp神经网络的编程,不使用工具箱加深对于神经网络的理解
代码片段和文件信息
clc
clear all;
close all;
%定义相关参数
Epochs=300; %最多训练次数
u1=0.001; %学习速率
%生成训练样本
for i=1:10
u(i)=logsig(i);
end
yd(1)=0.5;
for i=2:10
yd(i)=yd(i-1)/(1+yd(i-1)^2)+u(i)^3;
yd(i)=logsig(yd(i));
end
ErrorMatrix=[]; %误差矩阵
OutlayerOut=[]; %测试输出矩阵
%生成各层权值和阈值
w1=0.5*rands(23); %隐藏层权重
b11=0.5*rands(21);
b12=0.5*rands(21);
b13=0.5*rands(21); %隐藏层阈值
w2=0.5*rands(13); %输出层权重
b2=0.5*rands(13); %输出层阈值
yo(1)=0.5;
for i=1:Epochs
ErrorHistory=[];
for j=2:10
f11=yo(j-1)*w1(1)+u(j)*w1(2)+b11(1);
f12=yo(j-1)*w1(1)+u(j)*w1(2)+b11(2);
f1=logsig(f11+f12); %隐层第1个节点输出
f21=yo(j-1)*w1(3)+u(j)*w1(4)+b12(1);
f22=yo(j-1)*w1(3)+u(j)*w1(4)+b12(2);
f2=logsig(f21+f22); %隐层第2个节点输出
f31=yo(j-1)*w1(5)+u(j)*w1(6)+b13(1);
f32=yo(j-1)*w1(5)+u(j)*w1(6)+b13(2);
f3=logsig(f31+f32); %隐层第3个节点输出
g1=f1*w2(1)+b2(1);
相关资源
- matlab_OFDM调制解调(来自剑桥大学)
- Matlab路面裂缝识别69319
- 高灵敏度GPS接收机MATLAB仿真,附捕获
- 基于MATLAB的质点弹道计算与外弹道优
- 阵列天线的matlab仿真
- MATLAB 经典程序源代码大全
- MATLAB小波软阈值去噪代码33473
- 天线阵的波束形成在MATLAB仿真程序及
- 非线性SVM算法-matlab实现
- 《MATLAB 智能算法超级学习手册》-程序
- 组合导航matlab程序
- 读取txt文件内容matlab代码实现
- Matlab实现基于相关的模板匹配程序
- matlab优化工具箱讲解
- 基于MATLAB的快速傅里叶变换
- 光纤传输中的分布傅立叶算法matlab实
- 基于matlab的图像处理源程序
- matlab 椭圆拟合程序
- 算术编码解码matlab源代码
- optical_flow 光流法 matlab 实现程序
- 引导图像滤波器 Matlab实现
- 分形几何中一些经典图形的Matlab画法
- OFDM系统MATLAB仿真代码
- SVM工具箱(matlab中运行)
- 图像小波变换MatLab源代码
- LU分解的MATLAB实现
- 冈萨雷斯数字图像处理matlab版(第三
- 替代数据法的matlab程序
- 用matlab实现的多站定位系统性能仿真
- 通过不同方法进行粗糙集属性约简m
评论
共有 条评论