Python深度学习中常用的激活函数:Sigmoid、tanh、ReLU和Softmax

什么是激活函数?

在深度学习中,激活函数用于对隐藏层与输出层的单元接收到的输入值进行处理。常用的激活函数有Sigmoid、tanh、ReLU、Softmax函数。

一、Sigmoid函数

1.1 函数表达式为

Sigmoid(x) = 1/(1+exp(x))
主要作用是将函数接收到的值映射到0~1

1.2 Sigmoid函数图像可表示为如下

1.3 在python中,可以通过以下代码定义Sigmoid函数

import numpy as np
def Sigmoid(x):
    y = 1 / (1 + np.exp(x))
    return y

一、tanh函数

2.1 函数表达式为

tanh(x) = (exp(x) – exp(-x)) /(exp(x) + exp(-x))
tanh函数将接收到的值映射到-1~1。与Sigmoid函数相比,tanh函数的输出值更广泛。

2.2 tanh函数的图像表示如下

2.3 在python中,可以通过以下代码定义tanh函数

import numpy as np
def tanhfun(x):
    y = (np.exp(x) - np.exp(-x)) / (np.exp(x) + np.exp(-x))
    return y

三、ReLU函数

3.1 ReLU的函数表达式

是深度学习中最常用的激活函数之一。ReLU的函数表达式为:
f(x) = max(0, x)
当自变量z的值小于0时,ReLU函数输出为0,当自变量x的值大于0时,ReLU函数的输出值为自变量本身

3.2 ReLU函数的图像表示如下:

3.3 在python中,可以通过以下代码定义ReLU函数

def ReLUfun(x):
    if x <= 0:
        return 0
    else:
        return x

四、Softmax函数

4.1 函数表达式

本质上将一个有N个值的数组/向量映射到另一个有N个值的数组,新数组的N个值求和为1。通常把Softmax函数作为神经网络中的输出层完成分类任务。
函数表达式为
Softmax(x) = xi/∑xi

4.2 在python中,可以通过以下代码定义Softmax函数

def softmaxfun(array):
    t = np.exp(array)
    s = np.sum(t)
    return t/s

作者:高级数据分析师

物联沃分享整理
物联沃-IOTWORD物联网 » Python深度学习中常用的激活函数:Sigmoid、tanh、ReLU和Softmax

发表回复