60 秒回答模板

常见激活函数可以分几类:Sigmoid 输出 0 到 1,常用于二分类输出层,但隐藏层容易梯度消失;Tanh 输出 -1 到 1,零中心但仍可能饱和;ReLU 是 max(0,x),计算简单、缓解梯度消失,是隐藏层常用选择,但有 dying ReLU 问题;Leaky ReLU、ELU 通过负半轴保留梯度改善这个问题;GELU 常用于 Transformer;Softmax 用于多分类输出,把 logits 转成概率分布。

考点 引入非线性
难度 算法岗真实面经题
回答目标 讲清方法、取舍和追问

深入解析

01

先讲为什么需要

如果没有激活函数,多层线性变换叠加仍然等价于一个线性变换,网络无法表达复杂非线性关系。激活函数让神经网络具备分段、饱和或平滑的非线性表达能力。

02

Sigmoid 和 Tanh

Sigmoid 适合二分类概率输出,但在输入很大或很小时梯度接近 0。Tanh 是零中心输出,优化上通常比 Sigmoid 更好,但同样存在饱和区梯度消失。

03

ReLU 系列

ReLU 计算简单,正半轴梯度稳定,深度网络中很常用。问题是负半轴梯度为 0,神经元可能死亡;Leaky ReLU、PReLU、ELU 通过负半轴保留信息缓解这个问题。

04

GELU 和 Swish

GELU、Swish 等平滑激活在 Transformer 和大模型中常见。它们不是简单硬截断,而是用更平滑的门控形式保留部分负值信息,训练效果通常更稳但计算略复杂。

05

输出层激活

二分类常用 sigmoid,多分类常用 softmax,多标签分类可对每个标签用 sigmoid,回归任务输出层常不加激活或按目标范围选择合适变换。

易错点

  • 不要只列名字,要说明输出范围、梯度特点和使用场景。
  • 不要在隐藏层大量使用 sigmoid 而不提梯度消失风险。
  • 不要把 softmax 用到多标签独立分类场景。
  • 不要说 ReLU 没有缺点,它可能出现 dying ReLU。

面试官追问

ReLU 为什么能缓解梯度消失?

ReLU 在正半轴梯度恒为 1,不会像 sigmoid/tanh 饱和区那样梯度接近 0,因此深层传播更稳定。

什么是 dying ReLU?

如果神经元长期落在 ReLU 负半轴,输出和梯度都为 0,参数不再更新。学习率过大或初始化不当会加重这个问题。

Softmax 和 Sigmoid 用法有什么区别?

Softmax 用于互斥多分类,所有类别概率和为 1;Sigmoid 可用于二分类或多标签分类,每个标签独立输出概率。