深度学习基础课:全连接层的前向和后向传播推导(中)

大家好~我开设了“深度学习基础班”的线上课程,带领同学从0开始学习全连接和卷积神经网络,进行数学推导,并且实现可以运行的Demo程序

线上课程资料:
本节课录像回放
加QQ群,获得ppt等资料,与群主交流讨论:106047770

本系列文章为线上课程的复盘,每上完一节课就会同步发布对应的文章

本文为第三节课:“全连接层的前向和后向传播推导(中)”的复盘文章

本课程系列文章可进入索引查看:
深度学习基础课系列文章索引

回顾相关课程内容

  • 第三节课:全连接层的前向和后向传播推导(上)
    • 神经元计算公式为什么要向量化?
    • 向量化后神经元的计算公式是什么?

主问题:如何推导全连接层的前向传播?

为什么要学习全连接层?

image

  • 什么情况下需要增加输入层的神经元个数?
    答:需要增加特征的值的个数的时候
  • 什么情况下需要增加隐藏层的神经元个数?
    答:需要增加神经网络的拟合能力,从而更快速的收敛的时候。
    因为隐藏层的神经元个数越多,权重数量就越多,方程的解的范围就越多,所以拟合能力就越强
  • 什么情况下需要增加输出层的神经元个数?
    答:需要增加输出的值的个数的时候
  • 什么情况下需要增加更多的隐藏层?
    答:需要大幅增加神经网络的拟合能力的时候,可参考如何确定神经网络的层数和隐藏层神经元数量

因此,本课推广判断性别Demo的三层神经网络为全连接层神经网络

主问题:如何推导全连接层的前向传播?

  • 什么是全连接层?
    答:image
    输入层、输出层各只有一层,隐藏层可以有任意多层;
    每层有任意多的神经元

我们仍然以三层神经网络为例来推导前向传播

image

  • 前向传播算法是什么?
    答:从隐藏层开始,依次计算每层神经元的输出,直到输出层结束
  • 隐藏层的前向传播计算公式是什么?
    答:image
  • 如何推导向量化?
    答:image
  • 输出层的前向传播计算公式是什么?
    答:image
  • 如何推导向量化?
    答:image

任务:实现全连接层的前向传播

let state = createState(2, 2, 1)

let feature = {
  weight: 50.,
  height: 150.,
}

forward(state, feature)->Js.log
posted @ 2022-11-01 04:56  杨元超  阅读(108)  评论(0编辑  收藏  举报