神经网络的简单推导以及matlab实现

为了方便推导,利用此网络进行BP网络的推导。

https://img-blog.csdn.net/20170529221546800?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvenlxZHJhZ29u/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center

STEP 1

输入层到隐含层:

神经元h1的输出o1:(此处用到激活函数)

隐含层到输出层:

SETP 2

计算总误差

(累加,这里只计算一个输出)

隐含层到输出层的权值更新:

其中

利用 激活函数求导可得

*outh1

=

= *

更新权值

=

隐含层到隐含层的权值更新:

更新权值

重复以上过程,可设置迭代次数,直至满足误差要求

 

matlab code:

clear all
clc
close all

i1=0.05; i2=0.10;
o1=0.01; o2=0.99;
w1=0.15; w2=0.20;w3=0.25; w4=0.30; b1=0.35;
w5=0.40; w6=0.45;w7=0.50; w8=0.55; b2=0.6;

% alpha=38.9
% epoch=6000;

alpha=0.5
epoch=1000;

for k=1:epoch
%forward:hidden layers
net_h1=w1*i1+w2*i2+b1*1;
out_h1=1/(1+exp(-net_h1));
net_h2=w3*i1+w4*i2+b1*1;
out_h2=1/(1+exp(-net_h2));
%forward:outputlayer
net_o1=w5*out_h1+w6*out_h2+b2*1;
net_o2=w7*out_h1+w8*out_h2+b2*1;
out_o1=1/(1+exp(-net_o1));
out_o2=1/(1+exp(-net_o2));

% cost function
E_total(k)=((out_o1-o1)^2+(out_o2-o2)^2)/2;

% backward:output layer

dE_dw5=-(o1-out_o1)*out_o1*(1-out_o1)*out_h1;
dE_dw6=-(o1-out_o1)*out_o1*(1-out_o1)*out_h2;
dE_dw7=-(o2-out_o2)*out_o2*(1-out_o2)*out_h1;
dE_dw8=-(o2-out_o2)*out_o2*(1-out_o2)*out_h2;

% backward:hidden layer
dE_douto1=-(o1-out_o1);

douto1_dneto1=out_o1*(1-out_o1);
%dEo1_douth1=-(o1-out_o1)*out_o1*(1-out_o1)

dEo1_dneto1=dE_douto1*douto1_dneto1;
dEo1_douth1=dEo1_dneto1*w5;
dEo1_douth2=dEo1_dneto1*w6;
dE_douto2=-(o2-out_o2);
douto2_dneto2=out_o2*(1-out_o2);

%dEo1_douth1=-(o1-out_o1)*out_o1*(1-out_o1)
dEo2_dneto2=dE_douto2*douto2_dneto2;
dEo2_douth1=dEo2_dneto2*w7;
dEo2_douth2=dEo2_dneto2*w8;

 
dE_dw1=(dEo1_douth1+dEo2_douth1)*out_h1*(1-out_h1)*i1;
dE_dw2=(dEo1_douth1+dEo2_douth1)*out_h1*(1-out_h1)*i2;
dE_dw3=(dEo1_douth2+dEo2_douth2)*out_h2*(1-out_h2)*i1;
dE_dw4=(dEo1_douth2+dEo2_douth2)*out_h2*(1-out_h2)*i2;

w1=w1-alpha*dE_dw1;
w2=w2-alpha*dE_dw2;
w3=w3-alpha*dE_dw3;
w4=w4-alpha*dE_dw4;
w5=w5-alpha*dE_dw5;
w6=w6-alpha*dE_dw6;
w7=w7-alpha*dE_dw7;
w8=w8-alpha*dE_dw8;

end

v_E_total_k=E_total(k)
plot(E_total)

猜你喜欢

转载自blog.csdn.net/qq_41997920/article/details/84946530