前言

机器学习基本知识——卷积网络基础补充
参考内容来自b站up主:https://space.bilibili.com/18161609


一、误差计算

以三层神经网络为例

L1 loss 卷积神经网络 卷积神经网络loss多大正常_Soft


经过Softmax输出,所有输出节点概率之和为1

L1 loss 卷积神经网络 卷积神经网络loss多大正常_Soft_02

交叉熵损失(Cross Entropy Loss)

  1. 针对多分类问题(Softmax输出,所有输出和概率为1)
  2. 针对二分类问题(Sigmoid输出,每个输出节点互不相干)

    其中,L1 loss 卷积神经网络 卷积神经网络loss多大正常_自适应_03为真实标签值,L1 loss 卷积神经网络 卷积神经网络loss多大正常_L1 loss 卷积神经网络_04为预测值,默认log是以e为底(ln)

对于该三层网络,其误差的计算公式则为
L1 loss 卷积神经网络 卷积神经网络loss多大正常_自适应_05


二、误差反向传播

L1 loss 卷积神经网络 卷积神经网络loss多大正常_Soft_06


处理完之后,相当于把所得到的误差反向传播到了每一个节点,得到了每一个节点的损失梯度。


三、权重更新

如果进行更新参数,则按照以下进行就ok了

L1 loss 卷积神经网络 卷积神经网络loss多大正常_Soft_07


即新的值等于旧的值减去学习率(自己设置的)乘损失梯度。

然而,我们所求的损失梯度的值不一定是全局最优的方向,在实际应用中我们会分批次进行训练。

L1 loss 卷积神经网络 卷积神经网络loss多大正常_反向传播_08


这时候需要引入优化器的概念,优化器是为了使网络得到更快的收敛。

常见的优化器有:SGD优化器、Agagrad优化器、Adam优化器等。

  • SGD优化器
    SGD全称为随机梯度下降优化器。
    其缺点是:1、容易受到噪声的影响;2、容易陷入局部最优解
    解决办法:采用SGD+Momentum(动量)优化器。
  • Agagrad优化器
    全称为自适应学习率优化器。
    其缺点是学习率下降的太快,可能还没有收敛就停止训练。
    解决办法:RMSProp优化器(自适应学习率),控制衰减速度。
  • Adam优化器
    Adam = RMSProp+Momentum
    既能适应稀疏梯度(即自然语言和计算机视觉问题),又能缓解梯度震荡的问题。

优化器具体内容参考各种优化器Optimizer的总结与比较