当前位置: 首页 > news >正文

机器学习基础(七):激活函数

一、引言

在前面的学习中,我们已经了解了线性回归、损失函数以及反向传播等核心概念。但如果你仔细思考,会发现一个问题:

如果神经网络每一层都只是做“线性变换”,那无论堆多少层,本质上还是一个线性模型。

这显然无法解决复杂问题。

激活函数(Activation Function) 的引入,就是为了打破这种“线性限制”,赋予模型学习非线性关系的能力。


二、什么是激活函数?

激活函数是加在神经网络每一层输出上的一个非线性变换函数,其作用可以简单理解为:

决定一个神经元是否“被激活”(是否传递信息)

数学表达如下:

对于某一层的输出:

\[z = Wx + b \]

经过激活函数:

\[a = \sigma(z) \]

其中:

  • ( z ):线性变换结果
  • ( $\sigma $):激活函数
  • ( a ):最终输出

三、为什么需要激活函数?

1. 引入非线性能力

没有激活函数:

  • 多层网络 = 一层线性模型
  • 表达能力极其有限

加入激活函数:

  • 可以拟合复杂函数(图像、文本、语音等)

2. 提高模型表达能力

例如:

  • 图像识别中的边缘检测
  • 文本中的语义理解

都依赖非线性结构


3. 控制输出范围

不同激活函数可以:

  • 限制输出范围(如 Sigmoid)
  • 保持数值稳定

四、常见激活函数详解


1. Sigmoid 函数

\[\sigma(x) = \frac{1}{1 + e^{-x}} \]

特点:

  • 输出范围:(0, 1)
  • 常用于二分类问题

优点:

  • 平滑连续
  • 有概率意义

缺点:

  • 梯度消失问题严重
  • 计算开销较大

2. Tanh 函数

\[\tanh(x) = \frac{e^x - e^{-x}}{e^x + e^{-x}} \]

特点:

  • 输出范围:(-1, 1)
  • 比 Sigmoid 更“居中”

优点:

  • 收敛速度通常更快

缺点:

  • 同样存在梯度消失问题

3. ReLU(最常用)

\[\text{ReLU}(x) = \max(0, x) \]

特点:

  • 小于0 → 输出0
  • 大于0 → 保持不变

优点:

  • 计算简单
  • 收敛速度快
  • 缓解梯度消失

缺点:

  • “神经元死亡问题”(Dead ReLU)

4. Leaky ReLU(ReLU改进版)

\[f(x) = \begin{cases} x, & x > 0 \ \alpha x, & x \le 0 \end{cases} \]

特点:

  • 负数部分保留一个小斜率

优点:

  • 避免神经元死亡

5. Softmax(输出层常用)

\[\text{Softmax}(x_i) = \frac{e^{x_i}}{\sum_j e^{x_j}} \]

特点:

  • 输出为概率分布
  • 总和为1

用途:

  • 多分类任务

五、激活函数的选择策略

1. 隐藏层推荐

  • 默认使用:ReLU
  • 若不稳定:尝试 Leaky ReLU

2. 输出层选择

任务类型 激活函数
二分类 Sigmoid
多分类 Softmax
回归 无 / 线性

六、激活函数与梯度问题

1. 梯度消失(Vanishing Gradient)

  • Sigmoid / Tanh 常见
  • 深层网络训练困难

2. 梯度爆炸(Exploding Gradient)

  • 梯度过大,训练不稳定

3. 解决方法

  • 使用 ReLU 系列
  • 合理初始化参数
  • 使用 Batch Normalization

七、总结

激活函数是神经网络的核心组件之一,其本质作用可以总结为:

让模型从“线性计算器”进化为“非线性表达系统”

关键点回顾:

  • 没有激活函数 → 深度网络毫无意义
  • ReLU 是当前最常用选择
  • 输出层激活函数需根据任务类型决定

http://www.jsqmd.com/news/567325/

相关文章:

  • win10深度清理c盘工具推荐:从更新缓存到微信专清
  • 嵌入式系统中的轻量级二维码生成方案
  • Apache SeaTunnel Catalog 功能设计为何能大大简化用户启用步骤?
  • 告别ViT的笨重:手把手教你用SegFormer在Cityscapes数据集上实现高效语义分割
  • 忍者像素绘卷部署教程(含安全加固):非root运行+网络策略+日志审计
  • 《集成第三方工具实现企微防折叠:从API对接、脚本配置到效果监控的全链路实战》
  • KLOGG架构深度解析:基于Hyperscan的高性能日志分析引擎实现原理
  • 深入Linux 0.11内存管理:从/bin/sh启动看零页(Zero Page)的分配与使用
  • XCOM 2模组管理新范式:Alternative Mod Launcher全面解析
  • Matlab数字图像处理核心项目实践:包含直方图均衡、空间过滤器增强、傅立叶变换与频域滤波、噪...
  • 2026年3月导热矽胶片厂家推荐:超高导热矽胶片、矽胶帽套实力测评,非标定制快速交付与热管理解决方案之选 - 品牌企业推荐师(官方)
  • 基于SDMatte的创意设计应用:智能海报与宣传物料生成
  • Qwen3.5-9B-AWQ-4bit多模态落地:制造业设备铭牌识别→型号查询→维保文档匹配
  • 告别技术门槛:用Sakura启动器实现AI工具高效管理的7个实用技巧
  • CRaxsRat v7.4 远程管理工具保姆级安装教程(含虚拟机测试指南)
  • 别再让vCenter单点故障坑了你!手把手教你配置vSphere 6.7的vCenter HA(附网络隔离与存储规划避坑点)
  • 计算机毕业设计springboot房屋租赁管理系统 基于SpringBoot的在线房产租赁服务平台设计与实现 SpringBoot框架下的智能化住房租赁信息管理系统
  • 手把手教你用Coze搭个‘论文小助理’:自动摘要、分类,还能给同组同学发Telegram周报
  • k8s网络Cilium4 - 小镇
  • TMSpeech:开源本地语音转文字工具的隐私革命
  • 3步解锁小米手表表盘设计:Mi-Create零基础定制专属智能穿戴界面完全指南
  • AI 赋能热电数智升级,蓝卓智慧电厂方案亮相第四届热电技术交流会
  • 腾讯地图AI驱动的时空智能开放平台技术解析
  • Windows7部署WordPress傻瓜式教程(IIS7.5+MySQL+PHP+WordPress)
  • AI大模型产品经理成长之路:从零基础到专家的详细学习路线全解析【AI大模型产品经理学习路线】
  • 2026年3月电脑花样机厂家推荐,花样机平缝机内衣机开袋机,非标定制快速交付实力源头厂商 - 品牌企业推荐师(官方)
  • Java大厂面试实录:Spring全家桶+JVM+并发编程深度剖析
  • 【2026年最新600套毕设项目分享】springboot“优兴趣”家教平台(14298)
  • 计算机毕业设计springboot智慧停车场系统的设计与实现 基于SpringBoot的智能停车服务管理平台的设计与实现 基于B/S架构的停车场信息化管理系统的设计与实现
  • StructBERT开源模型保姆级教程:从/root/nlp_structbert_project目录结构学起