机器学习与模式识别 第十二章 自适应学习优化器 考点压缩

第十二章:SGD & Adam --- 知识点笔记

综合来源:Lecture 12 PDF(25页)、课堂笔记(CSDN)


占位图

12.1 学习率调度(Learning Rate Schedules)

调度策略 公式 适用
线性(Linear) η(τ)=(1−τT)ηstart+τTηend\eta^{(\tau)} = (1-\frac{\tau}{T})\eta_{start} + \frac{\tau}{T}\eta_{end}η(τ)=(1−Tτ)ηstart+Tτηend 简单任务
幂律(Power-law) η(τ)=ηstart(1+τs)−c\eta^{(\tau)} = \eta_{start}(1+\frac{\tau}{s})^{-c}η(τ)=ηstart(1+sτ)−c 最常用
指数(Exponential) η(τ)=ηstart⋅cτ\eta^{(\tau)} = \eta_{start} \cdot c^{\tau}η(τ)=ηstart⋅cτ ---
余弦(Cosine) η(τ)=ηmin+ηmax−ηmin2(1+cos⁡(πτT))\eta^{(\tau)} = \eta_{min} + \frac{\eta_{max}-\eta_{min}}{2}(1+\cos(\pi\frac{\tau}{T}))η(τ)=ηmin+2ηmax−ηmin(1+cos(πTτ)) LLM常用

12.2 自适应学习率 ⭐⭐

AdaGrad

  • 对每个参数维度独立调整学习率
  • 累积梯度平方和→梯度大的维度学习率减小

ri=ri+(∂E∂wi)2r_i = r_i + \left(\frac{\partial E}{\partial w_i}\right)^2ri=ri+(∂wi∂E)2

wi=wi−ηri+ϵ⋅∂E∂wiw_i = w_i - \frac{\eta}{\sqrt{r_i + \epsilon}} \cdot \frac{\partial E}{\partial w_i}wi=wi−ri+ϵ η⋅∂wi∂E

问题 :rrr单调增长→学习率过度减小→早期大梯度导致后期停滞

RMSProp

  • 指数加权移动平均替代AdaGrad的累积和→关注近期梯度

ri=βri+(1−β)(∂E∂wi)2r_i = \beta r_i + (1-\beta)\left(\frac{\partial E}{\partial w_i}\right)^2ri=βri+(1−β)(∂wi∂E)2

  • β≈0.9\beta \approx 0.9β≈0.9:越近的梯度权重越大

12.3 Adam ⭐⭐⭐

Adam = RMSProp + Momentum

si(τ)=β1si(τ−1)+(1−β1)∂E∂wi(Momentum: 一阶矩)s_i^{(\tau)} = \beta_1 s_i^{(\tau-1)} + (1-\beta_1)\frac{\partial E}{\partial w_i} \quad \text{(Momentum: 一阶矩)}si(τ)=β1si(τ−1)+(1−β1)∂wi∂E(Momentum: 一阶矩)

ri(τ)=β2ri(τ−1)+(1−β2)(∂E∂wi)2(RMSProp: 二阶矩)r_i^{(\tau)} = \beta_2 r_i^{(\tau-1)} + (1-\beta_2)\left(\frac{\partial E}{\partial w_i}\right)^2 \quad \text{(RMSProp: 二阶矩)}ri(τ)=β2ri(τ−1)+(1−β2)(∂wi∂E)2(RMSProp: 二阶矩)

偏差校正 (解决初始步过小问题):

s^i=si1−β1τ,r^i=ri1−β2τ\hat{s}_i = \frac{s_i}{1-\beta_1^\tau}, \quad \hat{r}_i = \frac{r_i}{1-\beta_2^\tau}s^i=1−β1τsi,r^i=1−β2τri

更新

wi=wi−ηs^ir^i+ϵw_i = w_i - \eta \frac{\hat{s}_i}{\sqrt{\hat{r}_i} + \epsilon}wi=wi−ηr^i +ϵs^i

典型超参数 :β1=0.9,β2=0.99,ϵ=10−8\beta_1=0.9, \beta_2=0.99, \epsilon=10^{-8}β1=0.9,β2=0.99,ϵ=10−8

Adam是最广泛使用的梯度下降变体!


12.4 Batch GD → SGD → Mini-batch ⭐⭐

Batch GD的代价

  • 每步计算N个数据点的梯度→**O(ND)\mathcal{O}(ND)O(ND)**
  • 大数据集→每步都极昂贵

SGD(随机梯度下降)

  • 每步随机选1个 数据点→O(D)\mathcal{O}(D)O(D)
  • 梯度有噪声→但便宜+快
  • 噪声可能帮助逃离局部最小值!

Mini-batch SGD

  • 每步随机选B个 数据点→O(BD)\mathcal{O}(BD)O(BD)
  • 在噪声和精度之间取得平衡

三种方法对比

方法 每步梯度 代价 特点
Batch GD 全部N点 O(ND)\mathcal{O}(ND)O(ND) 精确但昂贵
SGD 1个点 O(D)\mathcal{O}(D)O(D) 噪声大但便宜+快
Mini-batch SGD B个点 O(BD)\mathcal{O}(BD)O(BD) 最优折中

训练误差=测试误差的经验估计

1N∑nL(tn,fw(xn))≈Ep(t,x)L(t,fw(x))\frac{1}{N}\sum_n L(t_n, f_w(x_n)) \approx \mathbb{E}_{p(t,x)}L(t, f_w(x))N1n∑L(tn,fw(xn))≈Ep(t,x)L(t,fw(x))

  • 大N→训练误差≈期望测试误差(大数定律)

12.5 Epoch与Shuffling

Epoch

  • 1 Epoch = 完整遍历全部N个数据点一次

Shuffling

  • 每个Epoch开始前随机打乱数据顺序
  • Mini-batch按序取B个→自然随机

每Epoch步数

  • Batch size B → 每Epoch ⌈N/B⌉\lceil N/B \rceil⌈N/B⌉ 步

选择Batch Size

大B 小B
梯度估计更准 计算便宜→更多步
GPU并行更好 随机性帮助逃离局部最优
→先增大B填满GPU →η\etaη可随B成比例增大

笔记中的图片索引

序号 图片内容描述 来源位置
图1 四种学习率调度策略曲线 Lecture 12 第2-3页
图2 Batch/SGD/Mini-batch梯度估计谱 Lecture 12 第18-19页
图3 Epoch与Shuffling循环 Lecture 12 第21页

笔记整理时间:2026年6月29日

相关推荐
摇滚侠5 小时前
AI 编程工具 《TRAE 官方手册》阅读笔记 AI 编程核心 上
人工智能·笔记
一个王同学5 小时前
从零到一 | CV转多模态大模型 | week19 | 基于 FastAPI 和 vLLM 的多模态大模型部署
人工智能·深度学习·计算机视觉·fastapi·改行学it·vllm
m沐沐6 小时前
【深度学习】YOLOv2目标检测算法——改进点、网络结构与聚类先验框解析
人工智能·pytorch·深度学习·算法·yolo·目标检测·transformer
企业老板ai培训6 小时前
破解中小企业AI变现难:2026年企业AI培训与陪跑行业趋势深度报告,为何从‘陪跑’到‘变现’才是关键?
大数据·人工智能
神奇霸王龙7 小时前
国产音乐视频 Prompt 三段式屠夫榜:5 个国产视频模型实测对比
人工智能·ai·prompt·音视频·agent·ai编程·agi
OpenCSG7 小时前
Hugging Face遭遇AI Agent攻击:AI资产管理正在进入新阶段
人工智能·大模型
神奇霸王龙7 小时前
AI视频Prompt结构化实战指南:可灵/万相/豆包
人工智能·ai·prompt·aigc·音视频·ai编程
aax12134537 小时前
VOC 集群治理工程实操|美丽蓝天绿岛项目 RTO 工艺选型、管控方案与申报要
大数据·数据库·人工智能
Scott9999HH8 小时前
【工控选型破局】拒绝盲目溢价与低质陷阱:基于 Modbus-RTU 状态诊断与自适应滑动中值滤波的 C++ 实战,兼论“性价比高又好用的仪器仪表厂家”选型之道
人工智能
To_OC8 小时前
调了一上午 DeepSeek 参数,我终于摸透了 temperature 和 Top K 的真实作用
人工智能·llm·deepseek