Skip to content

激活函数

激活函数(activation function)通过计算加权和并加上偏置来确定神经元是否应该被激活, 它们将输入信号转换为输出的可微运算。 大多数激活函数都是非线性的。

由于激活函数是深度学习的基础,下面简要介绍一些常见的激活函数。 没有最好的激活函数,只有最合适的激活函数。

1. ReLU函数

最受欢迎的激活函数是修正线性单元(Rectified linear unit,ReLU), 因为它实现简单,同时在各种预测任务中表现良好。 [ReLU提供了一种非常简单的非线性变换]。 给定元素,ReLU函数被定义为该元素与的最大值:

通俗地说,ReLU函数通过将相应的活性值设为0,仅保留正元素并丢弃所有负元素。

  • 值范围: 0 ~ max(x)
  • 特点:简单、容易训练、减轻了梯度消失问题
  • 函数图像: 图片

2. sigmoid函数

[对于一个定义域在中的输入, sigmoid函数将输入变换为区间(0, 1)上的输出]。 因此,sigmoid通常称为挤压函数(squashing function): 它将范围(-inf, inf)中的任意输入压缩到区间(0, 1)中的某个值:

  • 值范围: 0 ~ 1
  • 特点:二分类问题,用在输出层,容易导致梯度消失
  • 函数图像: 图片

3. tanh函数

tanh
[ tanh ]
双曲正切函数

与sigmoid函数的加强版或改进版, [tanh(双曲正切)函数也能将其输入压缩转换到区间(-1, 1)上]。 tanh函数的公式如下:

  • 值范围: -1 ~ 1
  • 特点:与sigmoid函数类似
  • 函数图像: 图片

京ICP备2024093538号-1