【机器学习】神经网络及BP推导

参考 https://www.zybuluo.com/Feiteng/note/20154

1 前向传播

这里的推导都用矩阵和向量的形式,计算单个变量写起来太麻烦。矩阵、向量求导可参见上面参考的博客,个人觉得解释得很直接很好。

前向传播每一层的计算如下:

z(l+1)=W(l,l+1)a(l)+b(l,l+1)(1.1)

a(l+1)=f(z(l+1))(1.2)

f 是激活函数。一般有sigmoid、tanh、relu等。

这里写图片描述

2 反向传播

为了得到好的模型,我们要更新参数 W,b ,这里就用到了反向传播。

我们将神经网络的损失函数记为 J(W,b) ,这里的 W,b 是指网络中所有的参数。损失函数可以是均方误差、交叉熵等等。总之是衡量网络输出的结果与真实标记之间的差异。

之后,就要计算 J(W,b) 对每一层 W,b 的梯度,对 W,b 进行更新。所有参数更新完成后,再进行前向传播。循环往复,直到达到要求为止。

反向传播之所以和正向传播这么对比着说,是因为反向传播也是一层一层地计算。首先看最后一层(假设最后一层没有激活):

JW(n1,n)=Jz(n)
  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值