「优化器 + 损失函数 + 激活函数」的完整配对速查表

一、通用核心规则(先记这 4 句)

  1. 隐藏层 :只负责非线性,不跟损失 / 优化器绑定
  2. 输出层激活 + 损失函数 = 必须严格配对
  3. 优化器通用 :绝大多数任务优先用 Adam
  4. 损失只算在输出层,梯度自动回传更新所有

二、全套配对速查表(直接背 / 直接用)

任务场景 隐藏层激活(推荐) 输出层激活 标准损失函数 推荐优化器
回归(任意实数) ReLU / GELU 无(线性) MSE / MAE / HuberLoss Adam / SGD
回归(输出≥0) ReLU / GELU ReLU MSE Adam
二分类(0/1) ReLU / GELU Sigmoid BCE(二元交叉熵) Adam
多分类(互斥类别) ReLU / GELU Softmax CrossEntropyLoss(交叉熵) Adam
多标签分类(多标签同时存在) ReLU / GELU Sigmoid(逐标签) BCEWithLogitsLoss / BCE Adam
Transformer / LLM / 大模型 GELU(主流) 任务决定(分类用 Softmax,生成用 Linear+Logits) 对应任务损失 AdamW(比 Adam 更稳)

三、极简口诀(10 秒记住)

  • 回归:线性输出 + MSE
  • 二分类:Sigmoid + BCE
  • 多分类:Softmax + 交叉熵
  • 隐藏层:ReLU 传统,GELU 现代
  • 优化器:默认 Adam,大模型用 AdamW

四、关键易错点(必看)

  1. CrossEntropyLoss 内部自带 Softmax 。 PyTorch:模型输出层不要手动写 Softmax,直接输 logits 即可
  2. BCEWithLogits = Sigmoid + BCE同样:输出层可以不写 Sigmoid,直接丢进损失
  3. 隐藏层永远不用 Sigmoid / Tanh(梯度消失)
  4. 优化器只管更新参数,和任务无关,只影响训练速度 / 稳定性

五、一句话终极总结

  • 隐藏层:ReLU / GELU(加非线性)
  • 输出层:按任务选激活
  • 损失:和输出激活严格配对
  • 优化器:默认 Adam 通吃

四大场景终极对比(背这个就够)

场景 输出性质 简单例子 输出层激活 常用损失
回归 连续数值 房价 238.6 万、气温 26.8℃ 线性 / ReLU MSE
二分类 二选一(是 / 否) 图片是猫?是 / 否 Sigmoid BCE
多分类(互斥) 多选一 动物:猫 / 狗 / 鸟(只选一个) Softmax CrossEntropy
多标签分类 多选多(共存) 图片:猫 + 狗 + 沙发(同时存在) Sigmoid BCE
相关推荐
Java后端的Ai之路1 分钟前
Git冲突完整排查与实战:本地修改覆盖报错到成功推送全流程复盘
开发语言·人工智能·git·python·pop
skywalk81634 分钟前
AI 中台记录:使用码道基于deepseek harness制作AI数字中台9.14日
开发语言·人工智能·ai中台
寻道码路5 分钟前
大模型工程化实战(十):Human-in-the-Loop 反馈闭环——三层清洗打造 Golden Set,拒绝“点赞即真理”
人工智能·大模型·ai工程化·hitl·反馈闭环·goldenset·数据回流
IT_陈寒5 分钟前
React重渲染这坑,我跳进去又爬出来了
前端·人工智能·后端
user_admin_god7 分钟前
第 03 篇:Java HttpClient 手写第一个 Chat 请求
java·人工智能·spring boot·语言模型
世岩清上9 分钟前
一次性完工的数字展厅,如何预留后期内容更新空间?
大数据·网络·人工智能·音视频·展厅改造
LearnYard11 分钟前
支持本地私有化部署的企业网盘选型:信创适配与 Docker 部署实践
大数据·人工智能
揽秀亭长12 分钟前
如何提取视频中的脚本内容?常见方法与工具对比
人工智能·音视频
艾莉丝努力练剑15 分钟前
【AI大模型接入SDK】LLMManager类架构与智能指针选型
网络·c++·人工智能·学习·面试·架构