基于随机逼近理论的序列随机拟牛顿法(Sequential Stochastic Quasi-Newton Method)基础题
字数 3457 2025-12-08 09:58:31

基于随机逼近理论的序列随机拟牛顿法(Sequential Stochastic Quasi-Newton Method)基础题

题目描述
考虑一个非线性规划问题,其中目标函数是光滑凸函数,但计算其精确梯度在每次迭代中计算成本很高,或者目标函数期望形式为 \(f(x) = \mathbb{E}_{\xi}[F(x, \xi)]\),其中 \(\xi\) 是随机变量。此时,适合使用序列随机拟牛顿法。该算法结合了随机逼近(用随机梯度估计代替精确梯度)和拟牛顿法(用近似Hessian矩阵加速收敛)的思想。本题要求:

  1. 描述序列随机拟牛顿法的基本框架。
  2. 推导Broyden族更新公式在随机情境下的应用。
  3. 给出算法步骤,并解释如何控制步长和近似Hessian矩阵的正定性。
  4. 讨论算法的收敛条件。

解题过程


1. 问题形式与算法框架

考虑无约束优化问题:

\[\min_{x \in \mathbb{R}^n} f(x) \]

其中 \(f\) 是凸函数,梯度 \(\nabla f(x)\) 存在但计算昂贵,或 \(f(x) = \mathbb{E}_{\xi}[F(x, \xi)]\)
算法框架迭代格式为:

\[x_{k+1} = x_k - \alpha_k B_k^{-1} g_k \]

其中:

  • \(g_k\)\(\nabla f(x_k)\) 的无偏随机估计(即 \(\mathbb{E}[g_k | x_k] = \nabla f(x_k)\))。
  • \(B_k\)\(\nabla^2 f(x_k)\) 的近似(正定矩阵)。
  • \(\alpha_k > 0\) 是步长。

2. 随机梯度和拟牛顿更新

2.1 随机梯度估计

假设在迭代 \(k\) 时,我们采样一个(或一小批)随机变量 \(\xi_k\),计算:

\[g_k = \nabla_x F(x_k, \xi_k) \]

满足 \(\mathbb{E}[g_k | x_k] = \nabla f(x_k)\)。为了减少方差,常用小批量(mini-batch)采样。

2.2 拟牛顿更新(Broyden族)

记:

\[s_k = x_{k+1} - x_k, \quad y_k = \nabla f(x_{k+1}) - \nabla f(x_k) \]

但精确梯度不可得,因此用随机梯度的差值近似:

\[\tilde{y}_k = g_{k+1} - g_k \]

注意:由于 \(g_k\) 是随机估计,\(\tilde{y}_k\) 是有噪声的,可能破坏拟牛顿条件 \(B_{k+1} s_k = y_k\)

Broyden族更新公式(确定型)为:

\[B_{k+1} = B_k - \frac{B_k s_k s_k^T B_k}{s_k^T B_k s_k} + \frac{y_k y_k^T}{s_k^T y_k} + \phi_k (s_k^T B_k s_k) v_k v_k^T \]

其中 \(v_k = \frac{y_k}{s_k^T y_k} - \frac{B_k s_k}{s_k^T B_k s_k}\)\(\phi_k \in [0,1]\) 是参数(\(\phi_k=0\) 对应BFGS,\(\phi_k=1\) 对应DFP)。

在随机情境下,用 \(\tilde{y}_k\) 代替 \(y_k\) 可能导致 \(s_k^T \tilde{y}_k\) 为负,破坏正定性。因此需要修正


3. 修正的随机拟牛顿更新

常用阻尼技术(damping)来保证正定性。定义修正的 \(\hat{y}_k\)

\[\hat{y}_k = \theta_k \tilde{y}_k + (1-\theta_k) B_k s_k \]

其中 \(\theta_k \in (0,1]\) 选择使得 \(s_k^T \hat{y}_k \geq \rho s_k^T B_k s_k\)\(\rho \in (0,1)\) 为常数)。常见选择是当 \(s_k^T \tilde{y}_k \geq \rho s_k^T B_k s_k\) 时取 \(\theta_k=1\),否则取:

\[\theta_k = \frac{(1-\rho) s_k^T B_k s_k}{s_k^T B_k s_k - s_k^T \tilde{y}_k} \]

这样能保证 \(s_k^T \hat{y}_k = \rho s_k^T B_k s_k > 0\),从而更新后的 \(B_{k+1}\) 保持正定。


4. 算法步骤

初始:选择初始点 \(x_0\),初始正定矩阵 \(B_0 = I\)(单位阵),步长序列 \(\{\alpha_k\}\),参数 \(\rho \in (0,1)\),批量大小 \(m\)

对于 \(k=0,1,2,\dots\) 执行

  1. 随机梯度估计:采样独立同分布的 \(\xi_{k,1}, \dots, \xi_{k,m}\),计算

\[ g_k = \frac{1}{m} \sum_{j=1}^m \nabla_x F(x_k, \xi_{k,j}) \]

  1. 更新迭代点\(x_{k+1} = x_k - \alpha_k B_k^{-1} g_k\)
  2. 计算差值\(s_k = x_{k+1} - x_k\)。采样新批量计算 \(g_{k+1}\),令 \(\tilde{y}_k = g_{k+1} - g_k\)
  3. 阻尼修正
    • 计算 \(\tau_k = s_k^T \tilde{y}_k\)\(\nu_k = s_k^T B_k s_k\)
    • 如果 \(\tau_k \geq \rho \nu_k\),则 \(\hat{y}_k = \tilde{y}_k\);否则计算

\[ \theta_k = \frac{(1-\rho) \nu_k}{\nu_k - \tau_k}, \quad \hat{y}_k = \theta_k \tilde{y}_k + (1-\theta_k) B_k s_k \]

  1. 更新近似Hessian:用Broyden族(通常取BFGS,即 \(\phi_k=0\))更新

\[ B_{k+1} = B_k - \frac{B_k s_k s_k^T B_k}{\nu_k} + \frac{\hat{y}_k \hat{y}_k^T}{s_k^T \hat{y}_k} \]

  1. 检查终止条件(如 \(\|g_k\| < \epsilon\) 或达到最大迭代)。

5. 步长选择与收敛性

  • 步长 \(\alpha_k\):需满足随机逼近的Robbins-Monro条件:

\[ \sum_{k=0}^\infty \alpha_k = \infty, \quad \sum_{k=0}^\infty \alpha_k^2 < \infty \]

例如 \(\alpha_k = a/(k+b)\)\(a,b>0\))。

  • 收敛性:在以下条件下,算法几乎必然收敛到驻点:
    1. \(f\) 凸且 Lipschitz 梯度。
    2. 随机梯度方差有界。
    3. 近似Hessian矩阵的特征值上下有界(阻尼修正保证此点)。
    4. 步长条件满足。

6. 关键点总结

  • 随机梯度引入噪声,拟牛顿更新需阻尼修正以保证正定性。
  • 步长必须衰减以满足随机逼近的收敛条件。
  • 算法在凸问题中具有超线性收敛的潜力(当噪声渐近减小)。

讲解完毕。这个算法适用于大规模随机优化问题(如机器学习中的经验风险最小化),相比纯随机梯度下降,它能利用二阶信息加速收敛。

基于随机逼近理论的序列随机拟牛顿法(Sequential Stochastic Quasi-Newton Method)基础题 题目描述 考虑一个非线性规划问题,其中目标函数是光滑凸函数,但计算其精确梯度在每次迭代中计算成本很高,或者目标函数期望形式为 \( f(x) = \mathbb{E}_ {\xi}[ F(x, \xi)] \),其中 \(\xi\) 是随机变量。此时,适合使用 序列随机拟牛顿法 。该算法结合了 随机逼近 (用随机梯度估计代替精确梯度)和 拟牛顿法 (用近似Hessian矩阵加速收敛)的思想。本题要求: 描述序列随机拟牛顿法的基本框架。 推导 Broyden族 更新公式在随机情境下的应用。 给出算法步骤,并解释如何控制步长和近似Hessian矩阵的正定性。 讨论算法的收敛条件。 解题过程 1. 问题形式与算法框架 考虑无约束优化问题: \[ \min_ {x \in \mathbb{R}^n} f(x) \] 其中 \( f \) 是凸函数,梯度 \( \nabla f(x) \) 存在但计算昂贵,或 \( f(x) = \mathbb{E} {\xi}[ F(x, \xi) ] \)。 算法框架迭代格式为: \[ x {k+1} = x_ k - \alpha_ k B_ k^{-1} g_ k \] 其中: \( g_ k \) 是 \( \nabla f(x_ k) \) 的无偏随机估计(即 \( \mathbb{E}[ g_ k | x_ k] = \nabla f(x_ k) \))。 \( B_ k \) 是 \( \nabla^2 f(x_ k) \) 的近似(正定矩阵)。 \( \alpha_ k > 0 \) 是步长。 2. 随机梯度和拟牛顿更新 2.1 随机梯度估计 假设在迭代 \( k \) 时,我们采样一个(或一小批)随机变量 \( \xi_ k \),计算: \[ g_ k = \nabla_ x F(x_ k, \xi_ k) \] 满足 \( \mathbb{E}[ g_ k | x_ k] = \nabla f(x_ k) \)。为了减少方差,常用小批量(mini-batch)采样。 2.2 拟牛顿更新(Broyden族) 记: \[ s_ k = x_ {k+1} - x_ k, \quad y_ k = \nabla f(x_ {k+1}) - \nabla f(x_ k) \] 但精确梯度不可得,因此用 随机梯度的差值 近似: \[ \tilde{y} k = g {k+1} - g_ k \] 注意:由于 \( g_ k \) 是随机估计,\( \tilde{y} k \) 是有噪声的,可能破坏拟牛顿条件 \( B {k+1} s_ k = y_ k \)。 Broyden族更新公式 (确定型)为: \[ B_ {k+1} = B_ k - \frac{B_ k s_ k s_ k^T B_ k}{s_ k^T B_ k s_ k} + \frac{y_ k y_ k^T}{s_ k^T y_ k} + \phi_ k (s_ k^T B_ k s_ k) v_ k v_ k^T \] 其中 \( v_ k = \frac{y_ k}{s_ k^T y_ k} - \frac{B_ k s_ k}{s_ k^T B_ k s_ k} \),\( \phi_ k \in [ 0,1] \) 是参数(\( \phi_ k=0 \) 对应BFGS,\( \phi_ k=1 \) 对应DFP)。 在随机情境下,用 \( \tilde{y}_ k \) 代替 \( y_ k \) 可能导致 \( s_ k^T \tilde{y}_ k \) 为负,破坏正定性。因此需要 修正 : 3. 修正的随机拟牛顿更新 常用 阻尼技术 (damping)来保证正定性。定义修正的 \( \hat{y}_ k \): \[ \hat{y}_ k = \theta_ k \tilde{y}_ k + (1-\theta_ k) B_ k s_ k \] 其中 \( \theta_ k \in (0,1] \) 选择使得 \( s_ k^T \hat{y}_ k \geq \rho s_ k^T B_ k s_ k \)(\( \rho \in (0,1) \) 为常数)。常见选择是当 \( s_ k^T \tilde{y}_ k \geq \rho s_ k^T B_ k s_ k \) 时取 \( \theta_ k=1 \),否则取: \[ \theta_ k = \frac{(1-\rho) s_ k^T B_ k s_ k}{s_ k^T B_ k s_ k - s_ k^T \tilde{y}_ k} \] 这样能保证 \( s_ k^T \hat{y} k = \rho s_ k^T B_ k s_ k > 0 \),从而更新后的 \( B {k+1} \) 保持正定。 4. 算法步骤 初始 :选择初始点 \( x_ 0 \),初始正定矩阵 \( B_ 0 = I \)(单位阵),步长序列 \( \{\alpha_ k\} \),参数 \( \rho \in (0,1) \),批量大小 \( m \)。 对于 \( k=0,1,2,\dots \) 执行 : 随机梯度估计 :采样独立同分布的 \( \xi_ {k,1}, \dots, \xi_ {k,m} \),计算 \[ g_ k = \frac{1}{m} \sum_ {j=1}^m \nabla_ x F(x_ k, \xi_ {k,j}) \] 更新迭代点 :\( x_ {k+1} = x_ k - \alpha_ k B_ k^{-1} g_ k \)。 计算差值 :\( s_ k = x_ {k+1} - x_ k \)。采样新批量计算 \( g_ {k+1} \),令 \( \tilde{y} k = g {k+1} - g_ k \)。 阻尼修正 : 计算 \( \tau_ k = s_ k^T \tilde{y}_ k \),\( \nu_ k = s_ k^T B_ k s_ k \)。 如果 \( \tau_ k \geq \rho \nu_ k \),则 \( \hat{y}_ k = \tilde{y}_ k \);否则计算 \[ \theta_ k = \frac{(1-\rho) \nu_ k}{\nu_ k - \tau_ k}, \quad \hat{y}_ k = \theta_ k \tilde{y}_ k + (1-\theta_ k) B_ k s_ k \] 更新近似Hessian :用Broyden族(通常取BFGS,即 \( \phi_ k=0 \))更新 \[ B_ {k+1} = B_ k - \frac{B_ k s_ k s_ k^T B_ k}{\nu_ k} + \frac{\hat{y}_ k \hat{y}_ k^T}{s_ k^T \hat{y}_ k} \] 检查终止条件 (如 \( \|g_ k\| < \epsilon \) 或达到最大迭代)。 5. 步长选择与收敛性 步长 \( \alpha_ k \) :需满足随机逼近的Robbins-Monro条件: \[ \sum_ {k=0}^\infty \alpha_ k = \infty, \quad \sum_ {k=0}^\infty \alpha_ k^2 < \infty \] 例如 \( \alpha_ k = a/(k+b) \)(\( a,b>0 \))。 收敛性 :在以下条件下,算法几乎必然收敛到驻点: \( f \) 凸且 Lipschitz 梯度。 随机梯度方差有界。 近似Hessian矩阵的特征值上下有界(阻尼修正保证此点)。 步长条件满足。 6. 关键点总结 随机梯度引入噪声,拟牛顿更新需 阻尼修正 以保证正定性。 步长必须衰减以满足随机逼近的收敛条件。 算法在凸问题中具有 超线性收敛 的潜力(当噪声渐近减小)。 讲解完毕 。这个算法适用于大规模随机优化问题(如机器学习中的经验风险最小化),相比纯随机梯度下降,它能利用二阶信息加速收敛。