当前位置:   article > 正文

【跟马少平老师学AI】-【神经网络是怎么实现的】(三)神经网络是如何训练的

【跟马少平老师学AI】-【神经网络是怎么实现的】(三)神经网络是如何训练的

一句话归纳:训练即是用梯度下降法求损失函数取得最小值时神经网络的参数值。梯度下降法,即用梯度(斜率/导数)作为自变量的增量更新自变量,可以找到函数最小值。

1)训练过程,即是调整神经网络权重参数,使输入图片为猫时,猫对应输出接近1,狗对应输出接近0。

2)损失函数:

对于一个输入样本d,有M个输出,(表示神经网络的第k个实际输出值。表示期望输出值。

对于N个样本,,即损失函数,w是所有权重组成的向量。

3)训练,即是求得合适的w值,使损失函数最小。可参考仅有一个变量的函数求最小值问题。

4)一个变量的函数求最小值。

  • 对于凸函数( 函数在两点间图像一定在函数弦下方),在远离最小值的地方,斜率越大,靠近最小值的地方,斜率越小。
  • 同时,在远离最小值的地方,变量的增量可以较大,不会越界,在靠近最小值的地方,变量的增量应该较小,避免越过最小值点。
  • 因此,变量的增量与斜率(导数)相关。
  • 另外,在图像左半边,导数小于0,但变量增量需要大于0。在图像右半边则相反。因此,变量增量与导数相反数相关。
  • 调整振荡幅度,乘以步长,

5)求解损失函数E(w)的最小值。

其中,

6)常用的三种梯度下降法:

标准梯度下降法,用所有样本。

随机梯度下降法,每次用一个样本。

小批量梯度下降法,每次用一小部分样本。

7)用梯度下降法求解E(w)的最小值:

8)交叉熵损失函数(用于分类问题):

9)softmax激活函数:

输出在[0,1]区间内,所有输出累加为1。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/532678
推荐阅读
相关标签
  

闽ICP备14008679号