Datawhale X 李宏毅苹果书AI夏令营——简单的笔记与心得总结

3.1 局部极小值与鞍点

3.1.1 临界点及其种类

我们所关注的梯度为零的点:局部最小值,局部最大值,鞍点
而:
局部极小值:一段邻域内是让因变量值最小的自变量选取点
鞍点:一段邻域内仍有可继续优化的点可选择。

3.1.2 判断临界值种类的方法

泰勒级数近似:
使用梯度和海森矩阵(Hessian matrix)判断损失函数形状。

在二次型与正负定的矩阵中,可知:
∀ x ⃗ ≠ 0 ⃗ , ∃ A ∈ M R ( n , n ) , x ⃗ T A x ⃗ > 0 ,则称矩阵 A 为正定矩阵 ∀ x ⃗ ≠ 0 ⃗ , ∃ A ∈ M R ( n , n ) , x ⃗ T A x ⃗ < 0 ,则称矩阵 A 为负定矩阵 \forall \vec{x} \neq \vec{0},\exist A \in MR(n,n),\vec{x}^T A \vec{x} > 0,则称矩阵A为正定矩阵 \\ \forall \vec{x} \neq \vec{0},\exist A \in MR(n,n),\vec{x}^T A \vec{x} < 0,则称矩阵A为负定矩阵 x =0 ,AMR(n,n),x TAx >0,则称矩阵A为正定矩阵x =0 ,AMR(n,n),x TAx <0,则称矩阵A为负定矩阵
其中 M R ( n , n ) MR(n,n) MR(n,n) n × n n \times n n×n大小矩阵组成的矩阵环。
正定矩阵与负定矩阵的判断还有顺序主子式,特征值判断等方法。下面对于临界点的判断,括号内即特征值判断法。
判断标准:
正定矩阵(所有特征值为正)表示局部极小值。
负定矩阵(所有特征值为负)表示局部极大值。
混合特征值(特征值有正有负)表示鞍点。

3.1.3 逃离鞍点的方法

说个是废话的废话:鞍点不常见,局部极小值少见。在我目前的学习与编程过程中,于智能优化算法上,matlab得到的局部最小值是经常有的事情,鞍点反倒是难以判断的。
书里有说实际遇到的多为鞍点而非局部极小值,这倒是让我对鞍点更为谨慎了。
另:高维空间(三维以上)中常有路径逃离鞍点。

海森矩阵的作用:
其特征向量可指引参数更新方向。而实际计算往往复杂,举个例子,不然牛顿迭代法也不会有许多简化运算的延伸。

3.2 批量和动量

批量(Batch):
实际计算梯度并非对所有数据一次性计算,而是将数据分成小批量进行梯度计算。像这样每个批量的处理称为一个回合(epoch)。

注意
1.计算出梯度所花费的时间会随着批量大小的增加而逐渐增长。
2.梯度下降法有:
批量梯度下降法(Batch Gradient Descent,BGD)
随机梯度下降法(Stochastic Gradient Descent,SGD)
前者全批量,无批量之分,使用整个数据集计算梯度;后者可以选择批量数,也会引入随机噪声,从而更容易脱离局部最小值。这是好理解的,用个不数学严谨的说法,随机噪声可以帮助陷入局部最小值的点更能随机移动,跑出局部最小值。
而综合上述两个方法有小批量梯度下降(Mini-Batch GD),它结合了两者的优点。

动量法(Momentum Method)是除梯度下降法外,另外一个可以对抗鞍点或局部最小值的方法,它通过引入动量项来加速梯度下降,模拟物理中的惯性,从而帮助优化,更有效地突破鞍点和局部极小值。

两个公式

  1. 基本梯度下降公式
    θ t = θ t − 1 − η ∇ L ( θ t − 1 ) \theta_t = \theta_{t-1} - \eta \nabla L(\theta_{t-1}) θt=θt1ηL(θt1)
  2. 动量法公式
    v t = λ v t − 1 − η ∇ L ( θ t − 1 ) v_t = \lambda v_{t-1} - \eta \nabla L(\theta_{t-1}) vt=λvt1ηL(θt1)
    θ t = θ t − 1 + v t \theta_t = \theta_{t-1} + v_t θt=θt1+vt

v t v_t vt是移动量,从参数 θ t − 1 \theta_{t-1} θt1 θ t \theta_{t} θt的向量。
λ \lambda λ 是动量系数(前一个方向的学习参数)
η \eta η 是学习率。

这种可以累积的动量,在积累了过去的梯度基础上,形成了惯性,可能帮助跨越诸如局部最小值的小障碍。

  • 6
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值