深度神经网络优化算法之旅

概述用于训练深度神经网络的最流行优化算法。从随机梯度下降到 Adam、AdaBelief 和二阶优化

来源:AI夏令营

优化无疑是深度学习的核心。基于梯度下降的方法已成为训练深度神经网络的既定方法。

正如 Wikipedia 中所述:

优化是从一组可用替代方案中选择最佳元素(关于某些标准)。

优化是从一组可用替代方案中选择最佳元素(关于某些标准)。

在最简单的情况下,优化问题包括通过系统地从允许集合中选择输入值并计算函数值来最大化或最小化实函数。

在机器学习的情况下,优化是指通过系统地更新网络权重来最小化损失函数的过程。从数学上来说,这表示为 w’=argminwL(w)w’ = argmin_w{L(w)}w’=argminw​L(w),给定损失函数 LLL 和权重 www

优化是指通过系统地更新网络权重来最小化损失函数的过程 w’=argminwL(w)w’ = argmin_w{L(w)}w’=argminw​L(w) w’=argminwL(w)w’ = argmin_w{L(w)}w’=argminw​L(w) w’=argminwL(w)w’ = argmin_w{L(w)} w’=argminwL(w)w’ = argmin_w{L(w)} w’=argminwL(w)w’ = argmin_w{L(w)} w'=argminwL(w)w' = argmin_w{L(w)} w'=argminwL(w) w ' = a r g m i nw n w L(w) L ( w ) w’ = argmin_w{L(w)} w’=argminw​L(w) w’= w ' = argminw​L(w) a r g m i nw​ n w​ w​ > w​ w w w w ​ L(w) L ( w ) LLL LLL LL LL L L L L L L www www ww ww w w w w w w w w w w 直观地看,可以将其视为下降高维景观。如果我们可以在二维图中投影它,那么景观的高度将是损失函数的值,横轴将是我们的权重 w 的值。最终,目标是通过迭代探索我们周围的空间到达景观的底部。 梯度下降 w=w−learning_rate⋅∇wL(w)w = w - \texttt{learning\_rate} \cdot \nabla_w L(w)w=w−learning_rate⋅∇w​L(w) w=w−learning_rate⋅∇wL(w)w = w - \texttt{learning\_rate} \cdot \nabla_w L(w)w=w−learning_rate⋅∇w​L(w) w=w−learning_rate⋅∇wL(w) w = w − learning_rate ⋅ ∇w ∇ w L ( w ) w= w = w​ w w w w L(w) L ( w ) LLL LLL LL LL L L L L L L www www ww ww w w w w w w w

w

w

w 直观地看,可以将其视为下降高维景观。如果我们可以在二维图中投影它,那么景观的高度将是损失函数的值,横轴将是我们的权重 w 的值。最终,目标是通过迭代探索我们周围的空间到达景观的底部。 梯度下降 w=w−learning_rate⋅∇wL(w)w = w - \texttt{learning\_rate} \cdot \nabla_w L(w)w=w−learning_rate⋅∇w​L(w) w=w−learning_rate⋅∇wL(w)w = w - \texttt{learning\_rate} \cdot \nabla_w L(w)w=w−learning_rate⋅∇w​L(w) w=w−learning_rate⋅∇wL(w) w = w learning_rate ∇w w L ( w )w=w=