首页 > 解决方案 > 关于增量和激活之间的乘法顺序的问题

问题描述

我一直在用 Michael Nielsen 的在线书籍学习深度学习。对于反向传播部分,他在下面写了一行代码:

nabla_w[-1] = np.dot(delta, activations[-2].transpose())

这段代码对我来说听起来不太清楚。从他的书中,∂/∂^_{} = ^{−1}_ * ^_,这个方程可以用链式法则来证明。所以,我假设了 activations[-2] * delta 的顺序,反之亦然。例如,假设 activations[-2] 是 3x1 矩阵,delta 是 2x1。由于它们的矩阵形式,activations[-2] * delta 是不可计算的,而 delta * activations[-2]^T 是 2x3 矩阵。∂/∂^_{} = ^{−1}_ * ^_你能告诉我 1)和之间根本没有区别∂/∂^_{} = ^_ * (^{−1}_k)^T吗?

标签: backpropagation

解决方案


推荐阅读