首页 > 其他 > 详细

DAY 2(BP神经网络)

时间:2019-07-19 22:55:11      阅读:98      评论:0      收藏:0      [点我收藏+]

 

 

技术分享图片

如图:第一层是输入层,包含两个神经元i1,i2,和截距项b1;第二层是隐含层,包含两个神经元h1,h2和截距项b2,第三层是输出o1,o2,每条线上标的wi是层与层之间连接的权重,激活函数我们默认为sigmoid函数。

关于sigmoid函数:技术分享图片 图形:技术分享图片   导数:技术分享图片

 

OK ,继续 

输入及目的:

                  输入数据  i1=0.05,i2=0.10;

     输出数据 o1=0.01,o2=0.99;

     初始权重  w1=0.15,w2=0.20,w3=0.25,w4=0.30;

           w5=0.40,w6=0.45,w7=0.50,w8=0.55

                                  b1=0.35,b2=0.60

 目标:给出输入数据i1,i2(0.05和0.10),使输出尽可能与原始输出o1,o2(0.01和0.99)接近。

Step 1:前向传播(各个层次之间是全连接的)

1.输入层------>隐含层

h1的输入加权和为:neth1=w1*i1+w2*i2+b1*1=0.15*0.05+0.20*0.10+0.35*1=0.3775

h1的输出为:outh1=s(neth1)=0.593269992

同理得: outh2=0.596684378

2.隐含层——>输出层

得 : neto1=w5*outh1+w6*outh2+b2=1.105905967

         outo1=0.75136507

         outo2=0.772928465

前向传播结束,得到输出值为(0.75136507,0.772928465),与实际值【0.01,0.99】相差较大,现在进行反向传播,更新权值。重新计算

step2 :反向传播

1.计算总误差

  总误差:(square error)

        技术分享图片有两个输出,分别计算o1和o2的误差,为这两者之和

技术分享图片

 

 技术分享图片

 

 技术分享图片

2.隐含层————>输出层得权值更新

以w5为例,如果想知道w5对整体误差的影响,可以用整体误差对w5求偏导:(链式法则)

技术分享图片

技术分享图片对于这张图的理解,从total开始,链式法则如此total->outo1->neto1->w5

分别计算每个式子

计算技术分享图片技术分享图片

计算技术分享图片技术分享图片

就是sigmol函数的求导,上边已经写过

计算技术分享图片 技术分享图片

 

DAY 2(BP神经网络)

原文:https://www.cnblogs.com/APINKE/p/11215828.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!