跳转至

最优化基础

机器学习训练通常写成经验风险最小化:

\[ \min_\theta\;\frac{1}{n}\sum_{i=1}^n \mathcal L(f_\theta(x_i),y_i)+\lambda\Omega(\theta). \]

第一项衡量数据拟合程度,\(\Omega(\theta)\) 是正则项,\(\lambda\) 控制二者的权衡。

极小值与凸性

若函数在任意两点之间都满足:

\[ f(tx+(1-t)y)\le tf(x)+(1-t)f(y),\qquad t\in[0,1], \]

则称其为凸函数。可微凸函数的任意局部极小值都是全局极小值。线性回归的平方损失是凸的,而深度神经网络的目标通常是非凸的。

\(\nabla f(\theta)=0\) 只说明 \(\theta\) 是驻点,它还可能是极大值或鞍点;不能仅凭梯度为零断言已经找到最优解。

梯度下降与随机梯度

基本梯度下降更新为:

\[ \theta_{t+1}=\theta_t-\eta_t\nabla f(\theta_t). \]

学习率过大会导致震荡或发散,过小则收敛缓慢。小批量随机梯度用部分样本估计全数据梯度,降低单次更新成本,但引入了采样噪声。

Momentum 通过累积历史方向减少震荡;Adam 为不同参数维护一阶、二阶矩估计并自适应调整步长。优化器改善训练过程,但不能替代合理的数据、模型和损失设计。

正则化

L2 正则化使用 \(\Omega(\theta)=\lVert\theta\rVert_2^2\),倾向于让参数整体较小;L1 正则化使用 \(\lVert\theta\rVert_1\),更容易产生稀疏参数。详见正则化方法。

早停、数据增强和 Dropout 也能降低过拟合,但它们不一定以显式参数范数的形式出现。

参数与超参数

  • 参数由训练数据和优化算法更新,例如权重 \(W\)、偏置 \(b\);
  • 超参数由训练流程外部设定,例如学习率、批量大小、网络深度和正则化系数;
  • 超参数应使用验证集选择,测试集只用于最终一次无偏评估。

自测

  1. 凸目标中的局部极小值为什么也是全局极小值?
  2. 学习率过大和过小分别会产生什么现象?
  3. 参数、超参数和模型输出三者有什么区别?