神经网络
Last updated
Last updated
感知机是激活函数是sign,输出1或-1,一层感知机是没法表达异或的,但是多层又无法求导。后来sigmoid函数用上之后,才有了现在的神经网络。
梯度消失、非凸极值和初值敏感、深层网络浅层梯度几乎为0、计算量大,需要很多样本
一个细节,很多资料上都草草而过,有的资料甚至写错了。
一批样本m个, 先一个个的前向传播,算出误差。然后反向求导,求出每个参数的偏导数,即整体的梯度。 然后拿这m个梯度,平均一下, 然后再更新参数。
跟Andrew Ng的线性回归课一样,先举一个样本,求梯度,梯度下降更新参数。然后对于m个样本,用的是梯度平均来更新参数的。
反向求导,不是对输出求导,而是对误差函数求导。
此图来自 BP 算法之一种直观的解释
人工神经网络之几何原理(Geometric principle of Artificial Neural Networks)
神经网络浅讲:从神经元到深度学习 Neural Networks, Manifolds, and Topology 神经网络、 流形和拓扑介绍及相关讨论 神经网络训练中的Tricks之高效BP(反向传播算法)
Little Explanations #1 -神经网络与模型压缩