• 大小: 58KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-06-04
  • 语言: Matlab
  • 标签: matlab  

资源简介

纯手写三层神经网络,有数据,无需其他函数,直接运行,包括batchBP和singleBP。

资源截图

代码片段和文件信息

function [ w count data] = batchBP( x z yh w t param )
%BATCHBP 此处显示有关此函数的摘要
%   批量BP算法
Nh = param.Nh;
Nx = param.Nx;
Nd = param.Nd;
Ny = param.Ny;
eta = param.eta;
theta = param.theta;

flag = 0;
count = 0;
res = [0 0 0];
resid = 1;
m = 0;
data = zeros(300001);
q = 1;
while(flag == 0)
    Wh = w{1};
    Wy = w{2};
    sj = zeros(NxNy);
    sh = zeros(NxNh);
    deltaj = zeros(NhNy);
    deltah = zeros(NdNh);
    for k = 1:Nx
        for j = 1:Ny
            sj(kj) = z(kj)*(1-z(kj))*(t(kj)-z(kj));
            for h = 1:Nh
                deltaj(hj) = eta*sj(kj)*yh(kh) + deltaj(hj);
            end
        end
        for h = 1:Nh
            sh(kh) = (1-yh(kh)^2)*(Wy(h:)*sj(k:)‘);
            for i = 1:Nd
                deltah(ih) = eta*sh(kh)*x(ki) + deltah(ih);
            end
        end
    end
    Wy = Wy + deltaj;
    Wh = Wh + deltah;
    w{1} = Wh;
    w{2} = Wy;
    [ J z yh ] = forward( x w t param );
    JJ = sum(abs(J));
    data(q) = JJ;
    q = q + 1;
    [ out ] = test( w x t );
    res(resid) = JJ;
    resid = resid + 1;
    if resid == 4
        resid = 1;
    end
    if sum(abs(J)) < theta || isnan(JJ) || (round(res(1)3) == round(res(2)3) && round(res(1)3) == round(res(3)3))
        flag = 1;       
    end
    count = count + 1;
    disp([‘batch迭代第‘ num2str(count) ‘次,正确率为:‘ num2str(out*100) ‘% loss为:‘ num2str(JJ)]);

end
end


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-09-12 09:41  三层神经网络模型\
     文件        1498  2017-11-26 17:47  三层神经网络模型\batchBP.m
     文件         546  2017-11-25 19:47  三层神经网络模型\forward.m
     文件        1391  2017-11-26 18:05  三层神经网络模型\run_BP.m
     文件         212  2017-11-26 16:56  三层神经网络模型\sigmoid.m
     文件        1581  2017-11-26 17:48  三层神经网络模型\singleBP.m
     文件         239  2017-11-26 12:01  三层神经网络模型\tan_h.m
     文件         291  2017-11-26 13:36  三层神经网络模型\test.m
     文件     2822454  2017-11-26 17:55  三层神经网络模型\图.bmp

评论

共有 条评论