深度学习参数设置指南

🧠 1. 什么是模型参数与超参数?

类型定义例子
模型参数模型训练过程中自动学习的值神经网络中的权重、偏置
超参数训练前由我们人为设定、控制训练过程的参数学习率、批量大小、网络层数等

⚙️ 2. 常见超参数及其作用

🔹 2.1 学习率(Learning Rate)

  • 作用:控制参数更新的步长
  • 常用范围:0.1 ~ 1e-5
  • 论文中常见:0.1, 0.01, 0.001(Adam默认:0.001)
  • 建议
    • 从较大值开始尝试,逐步减小
    • 配合学习率衰减策略使用

🔹 2.2 批量大小(Batch Size)

  • 作用:每次训练更新中使用的样本数量
  • 常用值:32, 64, 128, 256
  • 论文示例
    • ResNet:256
    • Transformer:2048 tokens
  • 建议
    • 小批量(32-256)一般泛化更好
    • 大批量可提升训练速度但风险过拟合

🔹 2.3 训练轮数(Epochs)

  • 作用:完整遍历训练集的次数
  • 设置范围
    • 小型数据集:50~200
    • 大型数据集:10~50
  • 技巧
    • 搭配 Early Stopping 使用
    • 实时监控验证损失

🔹 2.4 优化器(Optimizer)

  • 常见选择
    • SGD、SGD + Momentum(动量0.9)
    • Adam(默认 β1=0.9, β2=0.999)
    • AdamW(改进版,更适用于Transformer)
  • 趋势
    • 经典模型:SGD
    • 现代模型:Adam / AdamW

🔹 2.5 正则化参数(Regularization)

  • 权重衰减(Weight Decay)
    • 抑制过拟合,常设为 1e-4 或 0.01(AdamW)
  • Dropout
    • 防止神经元共适应,常设为 0.1~0.5
    • 输入层 0.1~0.2,隐藏层 0.5

🏗️ 3. 网络结构相关参数

🔸 3.1 层数与神经元数量

  • CNN:从 LeNet(几层) 到 ResNet(上百层)
  • Transformer:6 ~ 24 层
  • 每层维度:32 ~ 4096 不等

🔸 3.2 激活函数

  • ReLU:最常见,简单有效
  • LeakyReLU:缓解“死亡ReLU”
  • GELU:Transformer 默认激活
  • Sigmoid / Tanh:历史悠久,但易梯度消失

🔍 4. 参数调优策略

4.1 超参数搜索方法

  • 网格搜索(Grid Search):全排列遍历参数组合
  • 随机搜索(Random Search):效率更高,更推荐

4.2 动态调整策略

  • 学习率预热(Warmup)
  • 余弦退火(Cosine Annealing)
  • 周期性学习率(Cyclic LR)

📄 5. 论文参数设置参考

✅ ResNet (ImageNet)

参数设置
学习率0.1, 每30轮除以10
批量大小256
动量0.9
权重衰减1e-4
Epochs90

✅ Transformer (Vaswani et al.)

参数设置
学习率自定义计划(含warmup)
批量大小2048 tokens
Adam参数β1=0.9, β2=0.98, ε=1e-9
Dropout0.1
训练步数100K steps

🛠️ 6. 实用调参建议

  1. 从默认值开始:许多框架默认参数已很合理
  2. 逐个调整参数:便于观察每项超参数的影响
  3. 记录实验日志:方便回溯和对比实验结果
  4. 参考开源代码:复现论文实现的设置
  5. 使用调参工具:如 OptunaRay Tune

✨ 结语

深度学习的参数设置没有标准答案,它既是一门技术,也是一门艺术。多实验、多记录、多模仿是成长最快的路径。希望本篇指南能够帮助你建立起对超参数的理解,迈出调参的第一步!


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值