⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 wh_bp_main.asv

📁 加了动量项和域值
💻 ASV
字号:
%clear;clc;
function wh_BP_main(Die_Dai_Shu,goal,Yin_1,Yin_2)
[X,y,T]=Creat_Original_Data;
%-------------------------------------------
%Die_Dai_Shu=3000;goal=0.01;Yin_1=5;Yin_2=5;
%-------------------------------------------
S_Rate_In=0.4;S_Rate_Yin=0.6;S_Rate_Out=0.8;
[LM,M]=size(X);%M=5;%输入点个数
[LP,P]=size(T);%P=5;%输出点个数
I=Yin_1;%第I曾神经元个数
J=Yin_2;%第J层神经元个数
N=Die_Dai_Shu;Goal=goal;
E=zeros(1,N);%误差能量
WMI=Creat_W_Matix(M,I);
WIJ=Creat_W_Matix(I,J);
WJP=Creat_W_Matix(J,P);
Chuan_Can=[M I J P S_Rate_In,S_Rate_Yin,S_Rate_Out];

for n=1:N
    Site=randperm(LM);
    for i=1:LM
        [VI,VJ,y(Site(i),:)]=Cal_Parameter_Forward(WMI,WIJ,WJP,X(Site(i),:),Chuan_Can);
        for p=1:P  
            E(n)=E(n)+0.5*(T(Site(i),p)-y(Site(i),p))^2;  
        end
        [WMI,WIJ,WJP]=Cal_Parameter_Back(WMI,WIJ,WJP,Chuan_Can,VI,VJ,y(Site(i),:),X(Site(i),:),T(Site(i),:));
    end 
    E(n)=E(n)/LM;
    if (E(n)<Goal) break; end
end

save('W','WMI','WIJ','WJP');

if E(n)<Goal
    disp('该网络收敛');
else
    disp('该网络不收敛');
end

for i=1:n
    EE(i)=E(i);
end
Space=1:1:n;
plot(Space,EE,'-r');

X
y
T



% Space=1:1:5;
% for i=1:M
% figure(i)
% hold on
% plot(Space,1,'-*b');
% plot(Space,T(i,:),'-*b');
% plot(Space,y(i,:),'-*r');
% hold off
% end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -