【漫话机器学习系列】224.双曲正切激活函数(Hyperbolic Tangent Activation Function)

双曲正切激活函数(tanh)详解:更优于 Sigmoid 的选择?

在构建神经网络时,激活函数是非常关键的一环。本文将带大家深入了解一种常见但常被忽视的激活函数:双曲正切函数(Hyperbolic Tangent Function,简称 tanh)。通过图解和数学表达,我们来剖析它的性质及在实际中的应用。


一、什么是双曲正切函数(tanh)?

双曲正切函数(tanh) 是一种 S 形的激活函数,其数学表达形式为:

它是通过双曲正弦(sinh)与双曲余弦(cosh)的比值得到的函数,图像如下所示:


二、tanh 与 sigmoid 有什么区别?

虽然 tanh 和 sigmoid 都是 S 型函数,但它们的输出范围不同:

函数 输出范围 是否中心化 常见问题
sigmoid (0, 1) 梯度消失问题严重
tanh (-1, 1) 梯度问题缓解

为什么 tanh 更推荐?

从图中我们可以看出,tanh 函数的输出是以 0 为中心的对称区间 -1, 1,相比 sigmoid 更接近"0 中心化"。这意味着,在使用 tanh 激活函数时,神经元的输出会更容易让下一层网络保持平衡的输入分布,从而加快收敛速度。

而 sigmoid 的输出全为正(0 到 1),可能导致后续层输出出现偏移,从而增加训练难度。


三、tanh 的图像分析

从图像中可以观察到:

  • 当输入 z → −∞ 时,输出趋近于 -1;

  • 当输入 z → +∞ 时,输出趋近于 +1;

  • 在 z = 0 时,输出正好为 0;

  • 整体是光滑、连续且可导的函数,适合用于反向传播计算。


四、tanh 的导数

tanh 函数的导数形式非常简单:

这是它相较于 sigmoid 的另一大优势,便于梯度的传播计算。


五、在深度学习中的应用场景

虽然 ReLU 类函数现在是主流,但 tanh 依然有其重要应用:

  1. 用于处理有负值输入的数据

  2. 适用于较浅层网络,或需要输出在 -1, 1 区间的模型

  3. 在 LSTM 等循环神经网络中依然广泛使用(如门控机制中就大量采用 tanh)。


六、总结

特性 tanh
输出范围 (-1, 1)
是否0中心化
是否可导
梯度问题 相较 sigmoid 更缓和
应用领域 循环神经网络(LSTM)、二分类模型等

小结:

tanh 是一个简单却非常强大的激活函数,虽然近年来被 ReLU 抢去了风头,但它仍在很多模型中扮演着关键角色。选择激活函数时,没有"放之四海皆准"的标准,重要的是根据你的问题和数据类型合理选择。

相关推荐
深海鱼在掘金14 小时前
深入浅出RAG——第7章:基础篇实战:文档问答机器人
人工智能·typescript·命令行
Jay805914 小时前
一文讲清楚 Epoch、Batch 和 Iteration 的区别
人工智能
深海鱼在掘金14 小时前
深入浅出RAG——第8章:RAG 的局限性及应对策略
人工智能·架构
lucas_AI14 小时前
1.2B 小模型赢过 235B 大模型:NaviDC-OCR 把文档解析卷明白了
人工智能·深度学习·算法
阿星AI工作室14 小时前
一文看懂爆火的 Graph Engineering,以及它和 Loop Engineering、Agent 循环到底啥关系
人工智能
小柯南敲键盘14 小时前
跨境电商图片翻译工具推荐:批量AI翻译+视频字幕+智能抠图
人工智能·python·音视频
王六米。14 小时前
武汉人工智能应用软件开发、企业AI智能体服务怎么排查
人工智能·武汉自动意志科技有限公司·智钳claw·ai漫剧生成·人工智能应用软件开发·企业ai智能体服务
AI多Agent协作实战派14 小时前
AI多Agent协作系统实战(四十):AI说“没有错误“,系统判了“测试失败“——一个正则的误判
数据库·人工智能
airobotcn14 小时前
智能巡检平台容器化部署:Docker+K8s在工业边缘的实践
人工智能·docker·容器·kubernetes·机器人·自动化
weixin_4462608514 小时前
Vero基准:AI智能体能否构建形式化验证软件仓库
人工智能