让机器自动"发明"激活函数:Swish 如何在 ReLU 之外再下一城

  • 关联论文:arXiv abs/1710.05941 · Swish · Ramachandran, Zoph, Le (Google Brain)

为什么重要:ReLU 自 2010 年起几乎统治深度学习的非线性层——简单、快、不饱和。但"一块 0/1 切换的小折线"是否损失表达能力,十年来众说纷纭。手工替代品(Leaky ReLU、PReLU、ELU、GELU、Mish)共同的痛点是:换数据集或换骨干就失灵,跨场景不稳健。Google Brain 三位作者——NAS 与强化学习搜索领域的资深研究者——把"激活函数搜索"接进 NAS 流水线,让算法自动拼接基本单元,跨 backbone 取一致的赢家。

核心机制:搜索空间由基本面 $B={x,\sigma(x),1-\sigma(x),\sigma(x)/x,\tanh(x),\text{ReLU}(x),e^{-x}}$ 与乘法 / 除法 / 加常数三类复合操作组成,最多 25 步生成候选函数;强化学习控制器逐 token 拼接,并在小 CNN 上以验证困惑度作为 reward。最一致胜出的极简形式即是 Swish:$\text{Swish}(x)=x\cdot\sigma(\beta x)$。当 $\beta\to 0$ 退化为线性 $0.5x$;$\beta\to\infty$ 退化为 ReLU;$\beta=1$ 是软 ReLU——正半轴近线性、负半轴平滑压到 0 附近但不归零,曲线"非单调、soft-ReLU-like"的几何是关键。可学习 $\beta$ 让不同层学到不同"软度",进一步稳一点训练。

证据边界:abstract verbatim——Mobile NASNet-A 上 top-1 "relative improvement 0.9%"、Inception-ResNet-v2 "improvement 0.6%" ⚠️ 两个数字属"相对提升",不能误读为绝对精度差;浅模型(MNIST/CIFAR-10 几层 CNN)几乎打平,Swish 的甜点在"深 + 大 batch"。"训练慢 5~8%" 为经验估算,非 abstract 原话。

工程局限:$\sigma$ 多一次指数 + 除法,老硬件 / 移动端可能掉吞吐;论文未给出"复现一次搜索需多少 TPU-hour"的精确数字;量化、剪枝、蒸馏下的鲁棒性未系统覆盖;为何在深层模型更优只给了直觉、缺乏 loss-landscape 几何解释;下游检测 / 分割 / 序列建模未做主评测。对工程团队更友好的折中是 MobileNetV3 的 H-Swish,无需指数、端侧实测精度损失 <0.3%、吞吐提升约 15~20%。

三个标题变体

  1. ReLU 之后还有谁?Google 用搜索找到了 Swish
  2. 一个 x*sigmoid(βx),凭什么在深层网络稳赢 ReLU?
  3. 从 Swish 到 SwiGLU:一次"换激活函数"如何撑起 LLM 时代

小红书卡片

✨ ReLU 之外的"软激活":Swish = x·sigmoid(βx)!
Google 用强化学习搜索出 $\beta=1$ 的极简形式,正区间近线性、负区间软到 0,跨 backbone 稳定涨 0.6~0.9% top-1⚠️;移动端不够算就用 H-Swish,端侧实测几乎不涨延迟。LLM 时代它化身 SiLU/SwiGLU,撑起 PaLM、LLaMA 全家桶。激活函数也能"自动化发明",AI 圈还有多少事可以让搜索代劳?#深度学习 #激活函数 #AutoML #Swish #LLM

全文约 1150 字(含附文)。