通过MCP连接 →

输入计算

任意实数(负数、0 或正数均可)。

数学公式

广告

结果

f(x) = ReLU(x)
0.5
无量纲
输入 x 0.5
f(x) = max(0, x) 0.5
导数 f'(x) 1

什么是 ReLU 激活函数?

ReLU 是「线性整流单元」(Rectified Linear Unit)的缩写,是现代深度学习与神经网络中应用最广泛的激活函数之一。它的定义为 \(f(x) = \max(0,\ x)\),也就是说:正数输入原样输出,而负数(以及 0)则被截断为 0。这个简单的规则为网络引入了非线性,同时计算成本极低,因此当今绝大多数卷积层和全连接层都采用它。

ReLU 函数的图像:x 为负时在零处保持水平,x 为正时线性上升
ReLU 函数对负输入输出 0,对正输入则输出输入本身。

如何使用本计算器

x 输入框中填入任意实数,计算器即可返回 \(f(x) = \text{ReLU}(x)\)。负数、0 和正数都是合法输入。当 x 大于 0 时,结果等于 x;当 x 为 0 或负数时,结果等于 0。计算器还会给出约定俗成的导数值:正数输入时为 1,其余情况下为 0。

公式详解

ReLU 函数采用分段定义:当 x > 0 时 \(f(x) = x\);当 x ≤ 0 时 \(f(x) = 0\)。它的定义域是全体实数 (-∞, +∞),值域为 [0, +∞)。ReLU 在整个定义域上连续,但严格来说它在 x = 0 处的导数是没有定义的;按照惯例,这里取 0,于是当 x ≤ 0 时 \(f'(x) = 0\),当 x > 0 时 \(f'(x) = 1\)。由于运算中不涉及除法,因此无需担心任何特殊边界情况。

计算实例

假设 x = -3.2,由于 -3.2 是负数,因此 $$f(x) = \max(0,\ -3.2) = 0.$$ 若 x = 7,则 $$f(x) = \max(0,\ 7) = 7.$$ 对于默认输入 x = 0.5,则有 $$f(x) = \max(0,\ 0.5) = 0.5.$$

常见问题

ReLU 为什么如此流行? 它避免了 sigmoid 和 tanh 在输入较大时容易出现的梯度消失问题,而且计算极其简单——只需和 0 做一次比较即可。

x = 0 时会怎样? 此时函数值为 0,导数按惯例同样取 0。

ReLU、Sigmoid 和 Softmax 有什么区别? Sigmoid 会把数值压缩到 (0, 1) 区间,Softmax 则把一个向量转换为一组概率分布,而 ReLU 只是把单个数值整流为非负数。

最后更新: