线性分数函数:\(f=Wx + b\)
2层神经网络: \(f = W_2max(0,W_1x + b_1) + b_2\)
在这里,更精确地来说,应该叫做全连接神经网络(FC)
在两层神经网络中,使用了非线性激活函数ReLU。如果不使用非线性激活函数的话,最后会变为 在这种情况下,设 因此,实质上还是单层神经网络,不管有几个W,还是不能摆脱线性。
并且,由于许多点是我们无法用线性函数来划分区域的。因此,需要用非线性来画出我们想要的边界。当然,正则项也十分重要,reg越大,边界越会变为线性
ReLU函数往往是默认使用的函数。其他函数会在之后的章节中提到优缺点。
隐藏的层数和每层神经元的数目需要自己来确定。
由于如果直接从损失函数计算梯度,会十分复杂。特别是到了卷积神经网络和神经图灵机上,
因此,可以采用链式法则来更好地计算出梯度。
需要记住的是,函数对本层参数的梯度 = 上游梯度 * 本地梯度
采用这种计算图的表示可以更加方便地求出我们想要的梯度。
由于标量对标量的导数求导是十分简单的,但到了标量对向量、向量对向量的求导就比较复杂了。
需要明白矩阵的shape是什么样的。 行是分子的元素个数,列是分母的元素个数。
至于如何确定相乘的顺序和是否需要转置,我的想法是只需要让他们的shape匹配就可以了(线性代数知识的匮乏
原文:https://www.cnblogs.com/QingYuAn-Wayne/p/14682865.html