从激活函数到超参搜索:一份“能落地”的深度学习手册

从激活函数到超参搜索:一份"能落地"的深度学习手册


1. 激活函数:先选对,再调参

函数 零中心 梯度消失 计算速度 稀疏性 典型坑 适用场景
Sigmoid × 严重 慢(exp) × 输出≠0 均值 二分类输出层
Tanh √ 较重 慢(exp) × 两端饱和 浅层网络
ReLU × 缓解 极快 √ Dead ReLU 99% 隐藏层首选
Leaky ReLU × 缓解 快 √ 斜率手工 实验性替代
ELU √ 缓解 慢(exp) √ 计算贵 小数据集精调
Swish × 缓解 中 √ 参数增加 深层网络 SOTA


一句话总结:

隐藏层默认 ReLU;如果训练很深且显存充足,换成 Swish 往往有 0.5%~1% 的额外收益;输出层二分类用 Sigmoid,多分类用 Softmax 。


2. 梯度消失 & 爆炸:诊断 + 处方

现象 快速判断 根因 实战组合拳
梯度消失 层越靠前,‖∂Loss/∂W‖趋 0 链式<1 连乘 1) ReLU 家族激活 2) BN + 残差 3) Xavier/He 初始化
梯度爆炸 Loss → NaN,‖∂Loss/∂W‖>100 链式>1 连乘 1) Gradient Clip by norm=5 2) 降低 lr 1 个量级 3) L2 weight decay 1e-4

BN 能把激活值拉回 N(0,1),相当于给梯度做了"保险丝":既防消失也防爆炸 。

3. 正则化全家桶:何时用、怎么用

技术 作用面 训练/测试差异 调参经验
Dropout 神经元 训练 p=0.5,测试关闭 小网络 0.3,大网络 0.5;与 BN 共存时降至 0.1
L2 权重 无差异 系数 1e-4 起步,观察验证集再 ×10 或 ÷10
Early Stop 迭代次数 无差异 验证 loss 连续 5 epoch 不降即停
Data Aug 样本 无差异 分类任务先水平翻转+随机裁剪,再考虑颜色扰动

注意:

BN 本身自带噪声,ResNet 后几层可完全去掉 Dropout,不降精度反而省显存 。


4. 参数初始化:别让网络"死"在起跑线

激活函数 推荐初始化 原理 代码一行
ReLU He 方差=2/fan_in torch.nn.init.kaiming_normal_
Tanh/Sigmoid Xavier 方差=2/(fan_in+fan_out) torch.nn.init.xavier_normal_
全零初始化 × 对称破坏,梯度相同 永远别用

5. 优化器选择:Adam 快,SGD 准

阶段 数据量 推荐组合 学习率起点
快速实验 任意 Adam 1e-3
中期精调 >10k AdamW + CosineLR 3e-4
收官冲刺 任意 SGD+Momentum 1e-2(再 ×0.1 两次)


经验:

先用 Adam 把验证 AUC 拉到 0.9x,再换 SGD 往往能再提 0.5~1 个点,代价是 3× 训练时间 。


6. 学习率:一步到位最省钱

  • 搜索套路:

    1. 从 {3,1,0.3,0.1,0.03,0.01} 跑 3 epoch,找最快降 loss 的那个;
    2. 用 Cosine/One-Cycle 在剩余 epoch 里平滑下降;
    3. 最后 10% epoch 做 Warm-Restarts 微调。
  • 自动化 :

    把上述过程写成回调函数,配合早停,一次训练就能拿到"手工调 3 天"的效果。


7. Batch Size & Epoch:不是越大越好

显卡 显存 最大 bs 平衡策略
1080Ti 11 G 64~128 梯度累加 4 步 = 有效 256
V100 32 G 256~512 直接上,配合 LARS 可上千

规律:

线性缩放 lr 只适用于 ≤512;再大时用 LARS 层自适应学习率,否则 val acc 会掉 。

8. 超参搜索:从网格到贝叶斯

方法 搜索空间 适合维度 预算 备注
网格搜索 离散 ≤3 指数爆炸 教学演示用
随机搜索 连续/离散 5~10 线性 baseline 首选
贝叶斯优化 连续 ≥10 10× 随机 利用历史评估,3~5 轮就能逼近最优

贝叶斯四件套 :

  1. 目标函数:验证集 1-AUC
  2. 搜索空间:lr∈1e-4,1e-1 对数、dropout∈0,0.5 均匀
  3. 采集函数:EI (Expected Improvement)
  4. 历史结果:上一轮 (lr, dropout, 1-AUC) 三元组

9. 微调预训练模型:冻结多少层?

数据规模 与源域相似度 推荐方案
<1 k 高 只改分类层,lr=1e-3
1 k~10 k 中 解冻 top-1 block,lr=1e-4
>10 k 低 解冻全部,lr=3e-5 + 早停

先冻结底层训练 5 epoch,再解冻一半层继续 10 epoch,可减小 30% 过拟合风险 。


10. 一份"能跑"的调参 Checklist

  1. 数据:可视化 100 张,确认标签干净;
  2. 预处理:零均值 + 方差归一化,分类做 One-Hot;
  3. 模型:隐藏层默认 ReLU,输出层匹配任务;
  4. 初始化:He/Xavier + bias=0;
  5. 正则:BN 必备,小网络加 Dropout(0.3);
  6. 优化器:Adam 1e-3 先跑 10 epoch;
  7. 学习率:Cosine 下降,Warm-Restarts 最后 10%;
  8. 早停:val loss 不降 5 epoch 停,回滚最优 ckpt;
  9. 复现:固定 numpy/torch 随机种子;
  10. 记录:用 TensorBoard 把 loss、lr、grad norm 全写进日志,方便复盘。

彩蛋:一张"炼丹"壁纸

"如果 loss 不下降,先把 lr 除以 10,再把 batch size 乘 2,最后检查数据标签。"

------ 深度学习第一定律


参考文献

:
程序员学长《终于把神经网络中的激活函数搞懂了!!》
:
CSDN《神经网络激活函数优缺点和比较》

相关推荐
java资料站3 小时前
十一、Spring AI Alibaba · 高级 · 多智能体(Multi-agent)
人工智能·spring·microsoft
2601_955662464 小时前
情感解说视频如何提升感染力?配音细节很关键
人工智能·音视频·语音识别·视频
苏醒的人生4 小时前
电商品牌物料AI生图工具推荐:让品牌调性一套到底
人工智能
lank_M4 小时前
截图OCR预处理在普通屏上翻车,Retina截图却没事
图像处理·人工智能·计算机视觉·ocr
Aloudata4 小时前
LookML 语义模型 vs 企业级独立语义层:BI 建模语言能否承担企业语义底座?
数据库·人工智能·数据分析·数据资产·dataagent
龙亘川4 小时前
AI 协同赋能城市治理:支撑政协数字化履职的技术路径探析
大数据·人工智能·智慧城市·开源软件·数据可视化
通信大模型4 小时前
IEEE TCCN | 面向低空经济网络的Agentic AI驱动多无人机轨迹优化
网络·人工智能·无人机
爱编程的小白L4 小时前
2027 计算机毕业设计选题汇总|深度学习专项(2027最新)
人工智能·深度学习·课程设计