深度学习|表示学习|为什么要有激活函数?|03

如是我闻: 激活函数赋予神经网络非线性能力,从而使其能够处理复杂的任务。以下是我们为什么需要激活函数:


1. 引入非线性

  • 问题
    • 如果没有激活函数,神经网络的每一层实际上只是线性变换(矩阵乘法和加法)。
    • 线性变换的组合仍然是线性,因此无论网络有多少层,最终输出仍然是输入的线性函数。
  • 解决
    • 激活函数引入非线性,使神经网络能够近似复杂的非线性函数。
    • 这使得神经网络可以学习更复杂的映射,比如图像分类、语音识别等。

2. 增强表达能力

  • 神经网络的目标是通过学习参数来逼近输入和输出之间的映射。
  • 激活函数帮助网络捕获数据的复杂模式,例如分类边界或特征关系。
  • 线性网络 无法表示非线性边界,而非线性网络(通过激活函数)可以轻松表示复杂边界。

3. 提供梯度流

  • 在神经网络训练过程中,需要通过反向传播算法计算梯度以更新参数。
  • 激活函数决定了梯度流的特性:
    • 非饱和激活函数(如 ReLU)可以缓解梯度消失问题。
    • 平滑激活函数(如 sigmoid 或 tanh)可以帮助梯度变化更平滑,但可能导致梯度消失。

4. 类型多样化以适应不同任务

不同的激活函数适用于不同任务和场景:

  • Sigmoid
    • 将输出映射到 (0, 1),适合二分类任务。
  • Tanh
    • 输出范围为 (-1, 1),适合对称的数据分布。
  • ReLU
    • 简单高效,广泛用于深层网络,能缓解梯度消失问题。
  • Leaky ReLU / Parametric ReLU
    • 解决了 ReLU 的"死亡神经元"问题。
  • Softmax
    • 用于多分类任务,将输出转化为概率分布。

5. 控制输出范围

  • 激活函数可以对网络的输出进行约束,使其更易于解释或适配特定任务:
    • Sigmoid 和 Softmax 输出概率值(0 到 1)。
    • Tanh 输出在 -1 到 1 范围内,适合正负对称的数据。

例子对比:没有激活函数 vs. 有激活函数

  • 没有激活函数的网络
    f ( x ) = W 2 ( W 1 x + b 1 ) + b 2 f(x) = W_2(W_1x + b_1) + b_2 f(x)=W2(W1x+b1)+b2

    是一个简单的线性函数,无法解决复杂的分类或回归问题。

  • 有激活函数的网络
    f ( x ) = W 2 σ ( W 1 x + b 1 ) + b 2 f(x) = W_2\sigma(W_1x + b_1) + b_2 f(x)=W2σ(W1x+b1)+b2

    其中 σ \sigma σ 是激活函数(如 ReLU 或 sigmoid),可以通过分段非线性实现复杂映射。


激活函数的存在赋予神经网络非线性能力,使其可以建模复杂的关系。它增强了网络的表达能力,控制了输出范围,并确保了梯度流动,最终使深度学习成为解决现实问题的强大工具。

以上

相关推荐
GIOTTO情1 天前
媒介宣发的技术革命:Infoseek如何用AI重构企业传播全链路
大数据·人工智能·重构
阿里云大数据AI技术1 天前
云栖实录 | 从多模态数据到 Physical AI,PAI 助力客户快速启动 Physical AI 实践
人工智能
试试勇气1 天前
Linux学习笔记(八)--环境变量与进程地址空间
linux·笔记·学习
蒙奇D索大1 天前
【数据结构】考研数据结构核心考点:平衡二叉树(AVL树)详解——平衡因子与4大旋转操作入门指南
数据结构·笔记·学习·考研·改行学it
小关会打代码1 天前
计算机视觉进阶教学之颜色识别
人工智能·计算机视觉
IT小哥哥呀1 天前
基于深度学习的数字图像分类实验与分析
人工智能·深度学习·分类
机器之心1 天前
VAE时代终结?谢赛宁团队「RAE」登场,表征自编码器或成DiT训练新基石
人工智能·openai
机器之心1 天前
Sutton判定「LLM是死胡同」后,新访谈揭示AI困境
人工智能·openai
大模型真好玩1 天前
低代码Agent开发框架使用指南(四)—Coze大模型和插件参数配置最佳实践
人工智能·agent·coze
jerryinwuhan1 天前
基于大语言模型(LLM)的城市时间、空间与情感交织分析:面向智能城市的情感动态预测与空间优化
人工智能·语言模型·自然语言处理