根据 Andrew Ng 关于反向传播的注释 ( page 9 ),仅计算隐藏层(n-1 到 2)的增量值。然后累积这些增量并用于更新权重矩阵。
但是,注释没有提及如何更新第一层的权重矩阵。
- 一般来说,第一层的矩阵是否从未通过反向传播进行更新?
- 第一层的矩阵是否已更新?
最佳答案
最后一层的权重更新方式与后续权重层的更新方式相同:
#Excerpt from my code at github
dW_matrix = -learning_rate * np.dot( delta, input_signals ).T
weight_matrix += dW_matrix
其中delta
是在上面的层中计算的增量。
将为层计算增量:[1, ->]
。不需要计算层 0
的增量,因为没有其他层可以将增量向下传播到。权重始终会更新(使用上面层的增量)。
关于machine-learning - 反向传播:更新第一个权重层,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35964760/