学习《机器学习100天》第29天 反向传播法究竟做什么? | 深度学习,第3章

github上的项目,跟着一起学习

项目地址    https://github.com/MLEveryday/100-Days-Of-ML-Code

Youtube频道3Blue1Brown关于神经网络的第3部分,这个视频主要介绍了偏导数和反向传播法。

B站视频在这里。(https://www.bilibili.com/video/av16577449)

    以下是视频笔记:

反向传播算法,是用来求上一期讲到的复杂到爆的梯度的

梯度向量每一项的大小,是在告诉大家,代价函数对每个参数有多敏感。

假设想要最后的输出为2,增加2的激活值(前一层所有激活值的加权和,加上一个偏置,再通过sigmoid这类的函数),

想增加激活值,有三个方法:增加偏置、增加权重,改变上一层的激活值

想要最后输出2,还需要最后一层其他数字的激活变弱,每个数字想激活变弱,就需要调整上一层,每个数字期待的上一层调整方式是不同的,把所有这些调整加起来。得到一串对倒数第二层改动的变化量。重复这一过程,改变影响倒数第二层神经元激活值的相关参数。

从后一层到前一层,一直循环到第一层

放眼大局,我们只是在讨论,单个训练样本对所有权重偏置的影响

如果我们只关注“2”的要求,会导致把所有数字识别为2,所以需要对其他所有的训练样本,同样地过一遍反向传播,记录下每个样本想怎样修改权重与偏置,求平均值,微调大小,不严格来说,是上期中的代价函数的负梯度

样本太多,梯度下降每迈出一步,用到所有样本太慢,所以把样本分成minibatch(含有一部分样本),计算一个minibatch来作为梯度下降的一步。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值