深度学习中的 `tanh` 激活函数
·
深度学习中的 tanh 激活函数
在深度学习中,tanh(双曲正切)是一种常用的激活函数,通常用于神经网络的隐藏层。它的数学表达式为:
[ \text{tanh}(x) = \frac{e^x - e{-x}}{ex + e^{-x}} ]
Tanh 的输出范围是 ([-1, 1]),这与 sigmoid 函数(输出范围为 ([0, 1]))不同。使用 tanh 有几个优点和缺点:
优点
- 中心对称:
tanh函数是中心对称的,即对于任何输入 (x),都有 (\text{tanh}(-x) = -\text{tanh}(x))。这意味着激活值可以是负的,从而更好地处理数据的正负两方面。 - 缓解梯度消失问题:与
sigmoid相比,tanh在零点附近的梯度更大,有助于缓解梯度消失问题。
缺点
- 梯度消失:尽管比
sigmoid好一些,但在极端值附近(即输入值很大或很小时),tanh的梯度依然接近零,可能导致梯度消失问题。 - 计算复杂:与
ReLU(修正线性单元)相比,tanh的计算更加复杂,因为它涉及指数计算。
使用场景
Tanh 函数常用于以下场景:
- 中间层激活函数:在循环神经网络(RNN)中常常使用
tanh作为中间层的激活函数。 - 对称数据:当数据的分布是中心对称的(例如均值为零)时,
tanh可以更好地表达数据的特性。
在选择激活函数时,除了 tanh,还可以考虑 ReLU、Leaky ReLU、ELU 等。具体选择哪种激活函数,通常需要根据具体问题和数据进行实验。
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)