激活函数是神经网络中的一种非线性函数,用于在神经元的输出上添加非线性特性。在神经网络中,每个神经元都有一个激活函数,用于将输入信号转换为输出信号。激活函数的主要作用是将神经元的输出映射到一个非线性的范围内,使神经网络能够处理更加复杂的问题,并提高网络的表达能力。

常见的激活函数包括 sigmoid 函数、tanh 函数、ReLU 函数、Leaky ReLU 函数和 softmax 函数等。

  1. Sigmoid 函数

sigmoid 函数是一个常用的激活函数,它将神经元的输出映射到 0 到 1 之间,并且具有可导性质。Sigmoid 函数的公式如下:

$$f(x) = \frac{1}{1+e^{-x}}$$

sigmoid 函数的输出值在 0 和 1 之间,可以将它们看作是概率值,表示该神经元激活的概率。

  1. Tanh 函数

tanh 函数是一种常见的激活函数,它将神经元的输出映射到 -1 到 1 之间,并且具有可导性质。tanh 函数的公式如下:

$$f(x) = \frac{e^{x}-e^{-x}}{e^{x}+e^{-x}}$$

tanh 函数的输出值在 -1 和 1 之间,可以将它们看作是概率值,表示该神经元激活的概率。

  1. ReLU 函数

ReLU 函数是一种常用的激活函数,它在神经网络中具有非常好的表现,并且计算速度非常快。ReLU 函数的公式如下:

$$f(x) = \max(0,x)$$

ReLU 函数的输出值在 0 和正无穷之间,如果输入值小于 0,则输出值为 0,否则输出值等于输入值。

  1. Leaky ReLU 函数

Leaky ReLU 函数是 ReLU 函数的一种改进,它在输入值小于 0 时,输出一个小的常数(通常设为 0.01),而不是 0。这样可以解决 ReLU 函数在输入值小于 0 时出现的“死亡神经元”问题。Leaky ReLU 函数的公式如下:

$$f(x) = \begin{cases} x & x\geq 0 \ 0.01x & x<0 \end{cases}$$

  1. Softmax 函数

softmax 函数是一种常用的激活函数,它将神经元的输出映射到 0 到 1 之间,并且将它们归一化为和为 1 的概率分布。softmax 函数的公式如下:

$$f(x_i) = \frac{e^{x_i}}{\sum_{j=1}^k e^{x_j}}$$

softmax 函数的输出值可以看作是一个概率分布,表示每个神经元的激活概率。

举例来说,当我们使用一个神经网络对手写数字进行分类时,我们通常会使用 ReLU 函数或 Leaky ReLU 函数作为隐藏层的激活函数,使用 softmax 函数作为输出层的激活函数,这样可以将神经元的输出映射到 0 到 1 之间,并将它们归一化为和为 1 的概率分布,从而得到每个数字的概率值。

神经网络中的激活函数详解及应用举例

原文地址: https://www.cveoy.top/t/topic/mA0d 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录