1. Dropout调整:合理位置添加并调整Drop Rate,可有效提升模型性能。
  2. Softmax温度:在注意力、交叉熵分类、对比学习等涉及Softmax的场景中引入温度参数。
  3. Normalization:深度学习核心是表征学习,需通过归一化(如LLM的Pre-norm/Post-norm、多模态系统设计)确保分布对齐,避免深层网络或模块组合时的表征偏移。
  4. Batch Size与Learning Rate同步调整:Batch Size影响梯度估计准确性(类比下山方向),LR影响更新步长(下山速度),方向准确时可加快步长;微调预训练模型时可采用极低LR(如e-7)配合多轮训练。
  5. 学习率策略:采用Warmup+Cosine Decay组合。
  6. 正则化:基础正则化如weight decay可显著提升泛化能力。
  7. Label SmoothingHinge Loss:推荐使用,OAI深度学习的weak-to-strong generation基础实现可视为进阶Label Smoothing。
  8. 数据采样:排序任务中调整负样本采样策略是常用手段。
  9. 特征融合:优先用哈达马积而非拼接/相加,其能引入更多非线性并实现滤波效果。以上均有PyTorch原生API支持,实现简单。
  10. 表征分布:通过triplet loss、对比学习等提升内部表征质量,高质量表征可增强模型鲁棒性与泛化性,需针对模型特点关键位置表征。
  11. 加权平均设计:SE Layer等加权机制在多领域(不限于CV)效果显著。
  12. 多头结构扩展:借鉴多头注意力经验,扩展至其他模块可有效利用算力提升性能。
  13. Gating操作:受RWKV中token shift启发,非关键路径的Sigmoid门控有助于建模复杂依赖关系。

总结:深度学习核心tricks聚焦于表征分布与梯度流通,二者是模型的关键。

消融实验的一些小tips分享

第一步:优先尝试轻量改动,提升效果 先从 LayerScale、Stochastic Depth 和 Warmup Cosine 这三个方法入手。它们的改动幅度小,操作起来简单,而且效果稳定显著,基本都能带来性能提升,是性价比很高的优先选项。

第二步:进阶优化,补足效果 如果第一步的优化后效果还未达到预期,可以再加入 EMA进一步提升模型稳定性。要是还有提升空间,还可以尝试分层权重衰减,针对性地优化参数更新,让模型训练更精准。

第三步:最后调整,尝试换优化器 前面的方法都试过之后,如果效果还是不理想,最后再考虑更换优化器。这种调整相对复杂,建议放在最后尝试,避免前期因改动过大导致训练不稳定