自己的视频笔记,不构成任何学习建议。谨慎观看,默默从宽
ref1 backpropagation explain part1: 直观感受
https://www.youtube.com/watch?v=XE3krf3CQls&list=PLZbbT5o_s2xq7LwI2y8_QtvuXZedL6tQU&index=26
notes
Xnip2021-08-29_14-25-23.jpg 完整的 反向传播.png 总结math
- chain rule
ref part 2 下层的 数学标记
在继续 深入 back propagation 之前,我们应该理解 一些数学 的符号
https://www.youtube.com/watch?v=2mSysRx-1c0&list=PLZbbT5o_s2xq7LwI2y8_QtvuXZedL6tQU&index=26
notes
视频内容:
框架开始部分
sgd
gradient
update weights
数学部分
标记 k用来标记上一层的nodes W_jk_superScript_L的意思 W_j_superScript_L的意思 Z_j_superScript_L的意思back propogation 是 一个 iteration 的过程
ref 3 back propogation part 3 Mathmetical observation
https://www.youtube.com/watch?v=G5b4jRBKNxw&list=PLZbbT5o_s2xq7LwI2y8_QtvuXZedL6tQU&index=27
这里是数学观察
三个目标- 如何 表达 loss function
- 如何表达 一个 节点 的 输入 输出
- 如何 区分 loss function
给你 图片 的 解释 overview
整体流程.pngnotes
lossC0的定义 zj作为 input L层的激励输出表达式 c_0作为函数了.png g也是函数?.png 好的,现在 z 也是 函数了把上面 的玩意 都变成 函数 之后:
image.png checkpoint备注: 实际上 ,你看到了 c0 aka loss ,就是 一个 依赖 了 很多 其他 东西 的东西
- 它 依赖了 activatin 函数,
- 依赖了输入
- 依赖 的权重
loss 的 计算 就可以 subject to weights 进行 导数 的计算
ref part 4 计算 渐变 / 梯度
https://www.youtube.com/watch?v=Zr5viAZGndE&list=PLZbbT5o_s2xq7LwI2y8_QtvuXZedL6tQU&index=28
notes
你已经知道 ,上一届 的 主题,就是 用 数学 的方式 ,让你 理解 了 神经网路 的数学 表达
比如 激励函数, input ,权重,loss 函数的 表达
这里 这一届 我们 就 计算 gradient
大纲:
大纲differentiate the loss
咱们 先从 一个 node 开始 举例
看看这两个 nodes 吧那咱们 关注 的 W_12 这个 权重 的 loss C_0 就是:
C_0 的 loss 表达式于是,我们得出 一个 终极 的 等式:
终极等式,loss关于weight12 的导数计算 公式解释一下 来由:
来由然后我们 详细 看看:这个复杂的等式
从第一个 部分开始:
第一个部分即将被计算出来了如下计算即可:
关于 a1 的导数备注: 的导数 就是
你把 上面 的 a1 换成 X ,就能理解 最后 那个
这你能理解吧?
了吧
接着 看 第二个 term
第二个 term;激励a对输入z的导数.png 就这样算.png上面 吧 j 换成 1 了
还有就是 F(x) 对 x 求道 ,就是 ,
所以 你看到 对 求道 ,就是
注意 这里 的 g 就是 activation function 的数学表示而已,是一个函数
流程里面的g函数是激励函数好,现在搞 第三个 term:输入 对 目标权重
第三个 term.png输入 是 多个 前一层网络 的 许多 权重 连线 ,连过来的,但是我 就关心: 这一个 权重,这也就导致 其他 权重连线过来的 值,并不会 对 求导得到什么东西,只会得到 0; 所以下图 ,说: 就他有用,其他的都没用
搞 出来了.png三个 都成了
现在 回头看看 overall result
overall object一个 sample ,say 0 吧, 对 weight 12 的 更新 效果。
然后 是 n 个sample , 批发给 wieght 12 进行 loss 计算,是如下的:
n个 sample都上来之后,对于 weight 12 计算 loss好,上面 就是 n 个 sample 计算 某个 weight ,这里 是 weight 12 ,
但是 同样的操作 , 会 对 所有的 weight 进行 重复,不只是 weight 12 这样被搞,整个 weights 都会被搞 。
于是 ,整个网络 就被 你 的 back propogation 给搞更新了哈。
好的,到这里 ref 4 结束
你知道 如何 计算 loss 的细节了。
ref 5 final
https://www.youtube.com/watch?v=xClK__CqZnQ&list=PLZbbT5o_s2xq7LwI2y8_QtvuXZedL6tQU&index=29
notes
image.png现在我们的重心,在于计算 中间层 的 loss, 或者说,中间层 的 那些 weights 如何影响 最后 的 output 我们很关心。
计算方式 和 之前 很像 ,但是 有所不同:
image.png在等式 的 右边 ,第 2,3 项 都和以前一样地计算;
但是 第一项 ,计算方式 就是 不同的了
我们很关心 第一项 的计算:
image.png因为:
image.png开始 搞把
不是输出层的那些 点,其 权重更新,会比 output layer 的权重更新更加复杂
我们关注 的点:倒数第二层,2 号点,其激励函数, 这样表示:
关注他.png然后 他的 损失 的 导数 ,就是 这样表示
他对应的导数表达式子.png把它 展开,我们就得到:
展开后还记得上一届 的 loss 求道 的 狮子 吗?
上一届 的 loss 求道 的 狮子.png上面 两者 很像吧
但是我指出 两个 不同:(还有个不同,天天认为是 求的 对象不同, 一个 是a 一个是w)
第一个就是 我们这一届 的有 sum 部分
为什么 有 sum 部分,就是因为 之前层 的 一个 激励函数 将会 影响 所有的输出nodes
之前层 的 一个 激励函数 将会 影响 所有的输出nodes所以,咱们现在 就必须 有 sum 的操作了。
上一届 我们已经 计算了 这两个:
他们已经在上一个 视频 计算过了所以就不说他们呢了
第二个 不同,就是 第三个
第三个项目继续看看我们要求的东西,在网络中的位置
红色,2号点,是关注的中心.png最后一层,第 j 个node 的输入:
最后一层,第 j 个node 的输入.png让这个 输入 对 前一层 的激励函数 求道 :
输入 对 前一层 的激励函数 求道.png记住,本层 的 输入,总是 由 前一层 所有 的nodes 经过 weights 打入的,前一层 有 k 个 nodes ,那么 weights 就会 有 k 个。 这个 公式 里面 的 k ,也就是 这个意思:前一层 有 k 个 nodes
算一下吧:
展开之
展开,使用power rule!!!!.png好的,回到 我们 最初的梦想,这里就是 输出 c0 loss 对于 L - 1 层 的 a2 激励函数 的导数:
对于激励函数的导数,出来了然后 是 权重,举个例子,L - 1 层 的 :
对于 权重的导数,也就出来了.png
网友评论