AI 术语表 · 基础 · 语言模型
激活函数
激活函数是一种简单的变换规则,决定人工神经网络中每个神经元把接收到的信号以多大程度、什么形状传递给下一层。有了这个函数,神经网络才能超越简单的线性关系,学习复杂的模式。
通俗解释 它类似于水龙头的阀门:水(信号)弱时几乎关上,水强时打开放行,以此调节流量。不过,实际的激活函数只是固定的计算规则,并不会根据情况做判断。
工作原理
神经网络中的一个神经元会把多个输入值分别乘以权重(重要程度),然后全部相加。这个总和不会直接传出去,而是先经过激活函数,再把结果送到下一层。常用的 ReLU 规则非常简单:负数变为 0,正数保持不变。Sigmoid 会把任何值压缩到 0 和 1 之间,tanh 则把值变换到 -1 和 1 之间。在近来的大语言模型中,也大量使用 GELU、SwiGLU 等对 ReLU 做了平滑处理的函数。
为什么重要
如果没有激活函数,无论堆叠多少层,最终都等同于一次简单的乘法和加法计算。这样就只能解决用一条直线就能划分的问题。正因为激活函数在中间加入了“弯折”,神经网络才能表达图像、语言这类复杂而弯曲的关系。也就是说,它是深度学习获得“深度”效果不可或缺的部件。
注意事项
选择哪种激活函数会影响训练速度和稳定性。像 Sigmoid 这样输出在两端趋于平坦的函数,在层数加深时容易导致学习信号几乎消失的问题(梯度消失)。ReLU 缓解了这一问题,因而得到广泛使用,但也可能出现部分神经元持续只输出 0、从而脱离学习的情况。因此,各种变体函数会根据用途继续被使用和研究。
示例
在 ChatGPT、Claude 等 LLM 所基于的 Transformer 中,每一层都包含一个小型神经网络(前馈层),其中使用 GELU 或 SwiGLU 等激活函数。图像分类模型则会在最后接上 Sigmoid 或 Softmax,以 0 到 1 之间的概率值输出结果,例如“是猫的可能性”。