64-机器学习与大模型开发数学教程-5-11 本章总结与习题

关键词 :问题建模、梯度家族、二阶与拟二阶、自适应优化、学习率调度、约束优化、KKT、逻辑回归与 SVM。
一句话带走先把问题写清楚(目标+约束)→ 选对更新方向(梯度/曲率/近端/对偶)→ 用好学习率与数值保护 → 用 KKT/残差做收敛与排错。


1. 一页纸总览

  • 问题类型(5-1)

    • 按目标/约束:凸 vs 非凸;线性/二次/非线性;等式/不等式/集合约束。
    • 实战例:权重范数限制、概率单纯形、正定约束。
  • 一阶方法(5-2, 5-3)

    • GD/SGD:简单、可扩展;SGD 对大数据很友好。
    • 最速下降:在当前度量下最陡(等价于做预条件);
    • 动量/带 Nesterov:加速、抗噪、抗鞍点。
  • 共轭梯度(5-4)

    • 解 SPD 线性系统或二次目标的高效迭代法;深度里常用作牛顿-CG的内层求解器。
  • 二阶与拟二阶(5-5)

    • 牛顿法:用 Hessian 拟合二次模型,局部二次收敛;
    • BFGS/L-BFGS:用历史曲率学习逆 Hessian,内存/计算友好。
  • 自适应优化(5-6)

    • AdaGrad → RMSProp → Adam/AdamW/AMSGrad:逐坐标预条件,AdamW 解耦权重衰减为大模型标配。
  • 学习率调度(5-7)

    • Warmup 稳前期,余弦退火 柔性收尾,OneCycle 一次升降兼顾探索与收敛。
  • 约束非线性优化(5-8)

    • 投影/近端惩罚/障碍(内点)增广拉格朗日/ADMM顺序二次规划(SQP)
  • KKT 条件(5-9)

    • 可行、对偶可行、互补松弛、驻点;凸 + Slater ⇒ 充要。
  • 典型应用(5-10)

    • 逻辑回归(交叉熵凸):L-BFGS、牛顿-CG、AdamW;
    • SVM(间隔最大化):Pegasos(原始)、SMO(对偶)、核技巧。

2. 训练闭环:从建模到收敛



建模: 目标+约束
是否有显式约束?
选择: 投影/近端 or ALM/ADMM or 内点/SQP
选择一阶/二阶/拟二阶
设优化器: SGD/动量/AdamW/L-BFGS...
设调度: warmup/余弦/OneCycle
数值保护: 裁剪/稳定化/正则
停止准则: KKT残差/验证集早停
部署与校准

说明能投影先投影 ;深非凸建议一阶 + 预条件 + 调度 ;凸精确求解可选内点/拟二阶 。停止既看训练残差 也看验证集


3. 优化器对照表(极简可抄)

方法 梯度需求 曲率需求 典型步数 单步代价 优点 注意点
SGD / 动量 可扩展、抗噪 需调度;鞍点慢
Nesterov 更快理论界 实现要对齐定义
共轭梯度(解二次) H·v 大维二次很强 SPD 假设/预条件
牛顿-CG H·v 二次收敛 非凸需修正
BFGS 超线性 O(n²) 内存
L-BFGS 低内存、稳 需强 Wolfe
AdaGrad 稀疏友好 可能"刹死"
RMSProp 非平稳稳 β₂ 需调
AdamW 工业默认 解耦衰减

大模型默认起步:AdamW + Warmup + 余弦 ;线性/凸小中规模:L-BFGS/牛顿-CG 很香。


4. 选型流程(中文)


简单集合
复杂



看问题与规模
凸?
约束复杂?
PGD/Prox + L-BFGS
内点/ALM/ADMM/SQP
深网络/非凸?
AdamW/动量 + 调度 + 裁剪
牛顿-CG 或 L-BFGS
监控KKT残差/验证集


5. 工程落地清单(Checklist)

  • 数据与特征:标准化/归一化;类别不均衡→加权/重采样。
  • 数值稳定logsumexp、softplus、梯度/参数裁剪、混合精度下的 loss scale。
  • 学习率 :范围测试找 lr_max;大 batch 用 warmup 与余弦/OneCycle。
  • 权重衰减 :AdamW 解耦;对偏置/归一化层做衰减。
  • 约束:能投影就投影(盒、ℓ2、ℓ1、单纯形、PSD);否则用 ALM/ADMM/内点。
  • 停止与排错 :监控 KKT 残差 / 训练-验证差距;不稳优先查 lr、β、裁剪与数据质量。

6. 微型"公式抽屉"

  • 动量(Nesterov 变体)
    v t + 1 = μ v t + g ( θ t − μ v t ) v_{t+1}= \mu v_t + g(\theta_t - \mu v_t) vt+1=μvt+g(θt−μvt), θ t + 1 = θ t − η v t + 1 \theta_{t+1}=\theta_t - \eta v_{t+1} θt+1=θt−ηvt+1
  • AdamW
    m t = β 1 m t − 1 + ( 1 − β 1 ) g t m_t=\beta_1 m_{t-1}+(1-\beta_1)g_t mt=β1mt−1+(1−β1)gt, v t = β 2 v t − 1 + ( 1 − β 2 ) g t 2 v_t=\beta_2 v_{t-1}+(1-\beta_2)g_t^2 vt=β2vt−1+(1−β2)gt2;
    m ^ t = m t / ( 1 − β 1 t ) \hat m_t=m_t/(1-\beta_1^t) m^t=mt/(1−β1t), v ^ t = v t / ( 1 − β 2 t ) \hat v_t=v_t/(1-\beta_2^t) v^t=vt/(1−β2t);
    先 θ ← θ − η λ θ \theta\leftarrow \theta-\eta \lambda \theta θ←θ−ηλθ(衰减),再 θ ← θ − η   m ^ t / ( v ^ t + ε ) \theta\leftarrow \theta-\eta\,\hat m_t/(\sqrt{\hat v_t}+\varepsilon) θ←θ−ηm^t/(v^t +ε)。
  • L-BFGS 两遍递推 :后向算 α i = ρ i s i ⊤ q \alpha_i=\rho_i s_i^\top q αi=ρisi⊤q,前向补回 r r r,得方向 p = − r p=-r p=−r。
  • KKT 四件套 :可行 g ≤ 0 , h = 0 g\le0,h=0 g≤0,h=0;对偶可行 λ ≥ 0 \lambda\ge0 λ≥0;互补 λ ⊙ g = 0 \lambda\odot g=0 λ⊙g=0;驻点 ∇ x L = 0 \nabla_x L=0 ∇xL=0。
  • PGD 投影:盒/球/单纯形/ℓ1 球------线性或近线性时间均可实现。

7. 习题(含提示与部分参考答案)

注:* 号题目给出参考答案/要点 ;其余给出 提示

A. 基础与直觉

  1. * (判断)逻辑回归的负对数似然是凸函数吗?为什么?
    :是。二阶导 X ⊤ W X X^\top W X X⊤WX 半正定,配 L2 正则变强凸。
  2. (选择)下列哪种情况优先考虑 AdamW?
    a) 小数据线性回归;b) 10^8 参数 Transformer;c) QP;d) 低维凸优化。
    提示:看维度与非凸性。
  3. * (推导)写出带 L2 正则的逻辑回归梯度与 Hessian。
    : ∇ w = 1 n X ⊤ ( y ^ − y ) + λ w \nabla_w=\frac1n X^\top(\hat y-y)+\lambda w ∇w=n1X⊤(y^−y)+λw, ∇ w 2 = 1 n X ⊤ W X + λ I \nabla^2_w=\frac1n X^\top W X+\lambda I ∇w2=n1X⊤WX+λI。

B. 学习率与调度

  1. (计算)设 warmup 步数 T w T_w Tw、目标 LR η max ⁡ \eta_{\max} ηmax。写出线性 warmup 的分段函数。
    提示 :前 T w T_w Tw 线性升,之后恒定/接余弦。
  2. * (应用)解释为什么 OneCycle 中动量要与 LR 反向变化。
    :LR 高阶段需更多探索(小动量避免惯性过强),LR 低阶段需稳收敛(大动量降抖动)。

C. 二阶与拟二阶

  1. (证明)牛顿方向是二次模型 m ( p ) = f + ∇ f ⊤ p + 1 2 p ⊤ H p m(p)=f+\nabla f^\top p+\frac12 p^\top H p m(p)=f+∇f⊤p+21p⊤Hp 的最优解。
    提示 :一阶条件 H p = − ∇ f Hp=-\nabla f Hp=−∇f。
  2. * (判断)BFGS 保持逆矩阵正定的关键是哪个条件?
    :曲率条件 y ⊤ s > 0 y^\top s>0 y⊤s>0(强 Wolfe 或阻尼 BFGS 保证)。
  3. (实现)给出 L-BFGS 的两遍递推伪代码。
    提示 :后向存 α \alpha α,前向用 H 0 H_0 H0 缩放再回加 s ( α − β ) s(\alpha-\beta) s(α−β)。

D. 约束与 KKT

  1. (计算)把点 z z z 投影到概率单纯形 { p ≥ 0 , ∑ p = 1 } \{p\ge0,\sum p=1\} {p≥0,∑p=1}。
    提示:排序阈值法(Duchi)。
  2. * (手算)求 min ⁡ 1 2 ∥ x ∥ 2 \min \tfrac12\|x\|^2 min21∥x∥2 s.t. a ⊤ x = b a^\top x=b a⊤x=b 的 KKT 解。
    :KaTeX parse error: Undefined control sequence: \* at position 3: x^\̲*̲= \frac{b}{\|a\...,KaTeX parse error: Undefined control sequence: \* at position 5: \nu^\̲*̲ = \frac{b}{\|a...。
  3. (判断)凸问题满足 Slater 条件 ⇒ KKT 是充要条件且强对偶成立。对/错?
    :对。

E. 应用与编程

  1. (实现)用 Pegasos 训练线性 SVM,写出更新与 L2 球投影。
    提示 :若 y w ⊤ x < 1 y w^\top x < 1 yw⊤x<1 则加梯度步并收缩;否则仅收缩;投影到 ∥ w ∥ ≤ 1 / λ \|w\|\le 1/\sqrt{\lambda} ∥w∥≤1/λ 。
  2. * (实验)在同一数据上比较固定 LR、Warmup+余弦、OneCycle 的收敛曲线(损失/准确率)。
    :通常 Warmup+余弦和 OneCycle 更快、更稳,后期更低验证损失。
  3. (诊断)训练不稳定:loss 剧烈震荡、验证不降。给出三条定位步骤。
    提示 :先降 lr 或加 warmup;看梯度范数/裁剪;检查数据/正则/归一化;打印 KKT/对偶残差(若有约束)。

F. 进阶(选做)

  1. (非凸)在 Rosenbrock 上比较 GD / Nesterov / BFGS / AdamW 的轨迹与迭代次数。
  2. (对偶)写出软间隔 SVM 的对偶问题与 KKT,说明哪类样本成为支持向量。
  3. (ALM)实现增广拉格朗日求解等式约束最小化,画原始/对偶残差收敛图。

8. 参考训练循环

python 复制代码
# 伪代码:通用训练闭环(含调度与裁剪)
θ = init()
opt = AdamW(θ, lr=lr_max, wd=wd)
sched = WarmupCosine(T_total=steps, warmup_steps=int(0.05*steps),
                     lr_max=lr_max, lr_min=lr_min)
for t in range(steps):
    x, y = next_batch()
    loss = L(f(θ, x), y) + reg(θ)           # 稳定实现: logsumexp/softplus
    g = grad(loss, θ)
    g = clip_by_global_norm(g, 1.0)         # 梯度裁剪
    opt.step(g)                             # AdamW: 先衰减再自适应步
    sched.step()                            # warmup + 余弦退火
    if t % eval_every == 0:
        val()
        # 若有约束,可计算 KKT 残差: ||∇x L||, ||[g(x)]_+||, ||λ∘g||

9. 本章小结

  1. 问题优先:把目标与约束写清楚,想好是否凸、是否能投影、是否可分解。
  2. 方法选型 :大模型默认 AdamW + 调度 ;凸小中规模用 L-BFGS/牛顿-CG ;复杂约束选 PGD/近端、ALM/ADMM、内点/SQP
  3. 数值与诊断 :用学习率调度/裁剪/稳定化 护航;用KKT 残差与验证曲线做收敛与排错的"仪表盘"。
相关推荐
救救孩子把2 小时前
55-机器学习与大模型开发数学教程-5-2 梯度下降法(GD)与随机梯度下降(SGD)
人工智能·机器学习
有Li2 小时前
学习通过皮层发育连续性迁移实现全生命周期脑解剖对应/文献速递-基于人工智能的医学影像技术
人工智能·深度学习·机器学习
BeforeEasy2 小时前
从零搭建一个完整的ai-agent小项目
人工智能·langchain
Jack___Xue2 小时前
AI大模型微调(三)------Qwen3模型Lora微调(使用Llamafactory)
人工智能
狮子座明仔2 小时前
Plan-and-Act:让AI智能体学会“先想后做“
人工智能·深度学习·语言模型·自然语言处理
许泽宇的技术分享2 小时前
当 AI 助手遇上全平台消息:Clawdbot 的架构奇遇记
人工智能·typescript·ai助手
GatiArt雷3 小时前
基于YOLOv8的轻量化AI目标检测在嵌入式设备上的落地实现
人工智能·yolo·目标检测
搞科研的小刘选手3 小时前
【双一流高校主办】第五届光学与机器视觉国际学术会议(ICOMV 2026)
人工智能·计算机视觉·机器视觉·光学·学术会议·控制工程·先进算法
Katecat996633 小时前
使用YOLOv26实现乌鸦鸽子麻雀等城市鸟类自动检测与分类
人工智能·yolo·分类