首页 > 其他 > 详细

CS231N Lecture 4 神经网络和反向传播

时间:2021-04-20 23:14:43      阅读:22      评论:0      收藏:0      [点我收藏+]

Lecture 4: 神经网络和反向传播

神经网络

线性分数函数:\(f=Wx + b\)

2层神经网络: \(f = W_2max(0,W_1x + b_1) + b_2\)

在这里,更精确地来说,应该叫做全连接神经网络(FC)

在两层神经网络中,使用了非线性激活函数ReLU。如果不使用非线性激活函数的话,最后会变为 在这种情况下,设 因此,实质上还是单层神经网络,不管有几个W,还是不能摆脱线性。

并且,由于许多点是我们无法用线性函数来划分区域的。因此,需要用非线性来画出我们想要的边界。当然,正则项也十分重要,reg越大,边界越会变为线性

技术分享图片

激活函数

技术分享图片

ReLU函数往往是默认使用的函数。其他函数会在之后的章节中提到优缺点。

隐藏的层数和每层神经元的数目需要自己来确定。

技术分享图片

反向传播 Backpropagation

由于如果直接从损失函数计算梯度,会十分复杂。特别是到了卷积神经网络和神经图灵机上,

技术分享图片

因此,可以采用链式法则来更好地计算出梯度。

需要记住的是,函数对本层参数的梯度 = 上游梯度 * 本地梯度

技术分享图片

采用这种计算图的表示可以更加方便地求出我们想要的梯度。

由于标量对标量的导数求导是十分简单的,但到了标量对向量、向量对向量的求导就比较复杂了。

技术分享图片

需要明白矩阵的shape是什么样的。 行是分子的元素个数,列是分母的元素个数。

技术分享图片

至于如何确定相乘的顺序和是否需要转置,我的想法是只需要让他们的shape匹配就可以了(线性代数知识的匮乏

技术分享图片

\[\begin{array}{r}2 \cdot h_{1}^{T} \cdot \hat{y} \\2 X^{T} \cdot \hat{y} \cdot W_{2}^{T}\end{array} \]

CS231N Lecture 4 神经网络和反向传播

原文:https://www.cnblogs.com/QingYuAn-Wayne/p/14682865.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!