WZX's blog 海滩上捡贝壳的孩子

深层神经网络中的矩阵计算


深层神经网络其实与 浅层神经网络 类似,只是含有多个隐藏层,可以实现更复杂的功能

符号约定

  • :表示样本的个数
  • :矩阵 t 的形状
  • :表示第 l 层(第0层即输入层)的参数 t
  • :表示第 l 层的节点个数
  • : 表示第 i 个样本的参数 t
  • :表示预测值
  • :表示第 l 层的节点的输出值
  • :表示第 l 层的激活函数

正向传播

正向传播的实现比较简单,其实就是对 浅层神经网络的正向传播 的推广,寻求更一般化的公式

原理

逐层向后传播,由前一层的输出值 计算出当前层的输出值 。并保存当前层的 ,这用于反向传播的计算

公式

这里直接给出矩阵化后的公式,具体推导过程可以类比 浅层神经网络的正向传播

反向传播

这里的成本函数采用交叉熵成本函数

原理

逐层向前传播,由当前层的偏导数 计算出前一层的偏导数 ,并计算出当前层对参数 w,b 的偏导数 ,再对参数 w,b 进行更新

公式

这里直接给出矩阵化后的公式,具体推导过程可以类比 浅层神经网络的反向传播

这里稍微解释一下第二个式子
假设 L 为损失函数(关于 的函数),z 代表当前层的值,a 代表前一层的输出值,并且当前层有 个节点,前一层 有个节点

总结

demo

Deep Neural Network Demo


Comments

Content