一文彻底搞懂深度学习 -激活函数(Activation Function)

文摘   科技   2024-10-23 21:52   湖北  

神经网络中的线性组合(即加权求和)本身只能表示线性关系。然而,现实世界中的大多数问题都是非线性的。通过引入激活函数,决定神经元是否应该被激活(将信号传递给下一个神经元)以及信号的强度。这样神经网络才能够学习并表示这些非线性关系,从而解决更复杂的问题。

一文彻底搞懂深度学习 - 神经网络(Neural network)
传统激活函数Sigmoid将输入映射到(0,1)之间,常用于二分类问题主流激活函数ReLU在正区间保持梯度不变,计算高效且能缓解梯度消失问题,广泛应用于深度学习输出层激活函数Softmax则将原始分数转换为概率分布,确保所有类别概率之和为1,适用于多分类问题

Activation Function

一、传统激活函数(Sigmoid)

传统激活函数SigmoidSigmoid 是传统神经网络中常用的一种激活函数,尤其在早期的神经网络结构中。

Sigmoid 函数的输出始终在 0 和 1 之间,这使得它经常被用于二分类问题中,其中输出可以解释为属于某一类的概率。

激活函数Tanh(Sigmoid双曲线版本)Tanh函数是Sigmoid函数的双曲版本,它将任何实数映射到-1到1之间。

Tanh函数是双曲正切函数,其输出值在-1和1之间,常用于神经网络隐藏层,以提供比Sigmoid函数更广的激活范围。

二、主流激活函数(ReLU)

主流激活函数ReLUReLU(Rectified Linear Unit)是当今深度学习领域中最主流的激活函数之一。

与传统的Sigmoid和Tanh激活函数相比,ReLU函数在输入为正数时导数为1,在输入为负数时导数为0,这有效地避免了梯度消失问题。由于ReLU函数的非线性特性和计算简单性,它可以帮助神经网络更快地收敛到最优解。

激活函数Leaky ReLU(ReLU改进版本)Leaky ReLU是一种改进的ReLU激活函数,旨在解决传统ReLU在输入小于等于0时导致的神经元“死亡”问题。它通过允许一个小的、固定的梯度通过负值区域来实现这一点。

注意:虽然上面的公式直接使用了0.01作为α的值,但在实际应用中,α可以是一个在(0, 1)区间内的任意小正数,具体值需要根据任务和数据集进行调整。

与ReLU相比,Leaky ReLU的主要优势在于它能够解决神经元“死亡”问题。然而,在某些情况下,ReLU可能由于其简单的形式和计算效率而更受欢迎。因此,在选择激活函数时,需要根据具体任务和数据集的特点进行权衡。

三、输出层激活函数(Softmax)

多分类问题激活函数SoftmaxSoftmax函数是一种用于多分类问题的激活函数,它将神经网络的输出(logits-原始未经处理的得分)转换为一个概率分布。转换后的每个值都在0和1之间,且所有值的总和为1,这使得Softmax函数非常适合用于表示各个类别的概率。

Softmax是一种归一化函数,它将一个数值向量转换为概率分布向量,使得输出值落在0到1之间,且所有输出值的总和为1。

限时五折优惠,快快抢购吧!

架构师带你玩转AI
分享人工智能,让所有人玩转AI
 最新文章