-
大小: 2KB文件類型: .m金幣: 1下載: 0 次發(fā)布日期: 2021-06-02
- 語言: Matlab
- 標(biāo)簽: matla??神經(jīng)網(wǎng)??
資源簡介
matlab當(dāng)中使用循環(huán)進(jìn)行bp神經(jīng)網(wǎng)絡(luò)的編程,不使用工具箱加深對于神經(jīng)網(wǎng)絡(luò)的理解
代碼片段和文件信息
clc??????????????????????????
clear?all;?
close?all;
%定義相關(guān)參數(shù)
Epochs=300;???????????%最多訓(xùn)練次數(shù)????????????????????????????????????
u1=0.001;?????????????????%學(xué)習(xí)速率
%生成訓(xùn)練樣本
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=[];??????????%測試輸出矩陣
%生成各層權(quán)值和閾值
w1=0.5*rands(23);???????%隱藏層權(quán)重????
b11=0.5*rands(21);???
b12=0.5*rands(21);
b13=0.5*rands(21);???????%隱藏層閾值
w2=0.5*rands(13);??????%輸出層權(quán)重
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個節(jié)點(diǎn)輸出
????????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個節(jié)點(diǎn)輸出
????????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個節(jié)點(diǎn)輸出
????????
????????g1=f1*w2(1)+b2(1);
評論
共有 條評論