深度学习之批量归一化的原理

news/2025/11/20 19:11:11/文章来源:https://www.cnblogs.com/guxuanqing/p/19248333
Batch Normalization(批标准化)是一种深度学习中常用的技术,用于提高神经网络的训练速度和稳定性。它由 Sergey Ioffe 和 Christian Szegedy 在 2015 年的论文《Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift》中提出。
 
核心思想:减少“内部协变量偏移”(Internal Covariate Shift)
在训练深度神经网络时,每一层输入的分布都在不断变化,因为前一层的参数在持续更新。这种现象被称为**“内部协变量偏移”(Internal Covariate Shift, ICS)**。
ICS 导致的问题包括:
  1. 训练缓慢:网络需要不断适应新的输入分布,导致学习率必须设置得很低,训练过程变慢。
  2. 梯度消失/爆炸:输入数据在深层网络中可能变得非常大或非常小,影响训练稳定性。
  3. 对初始化敏感:网络性能高度依赖于参数的初始值。
Batch Normalization 的目的就是解决 ICS,通过强制规范化每一层网络的输入,使其保持在一个稳定的分布范围内。
 
Batch Normalization 的工作原理
Batch Normalization 在网络的每一层(通常是在全连接层或卷积层的输出、激活函数之前)插入一个操作。它针对**一个“批次”(Batch)**的数据,计算该批次所有样本的均值(mean)和方差(variance),然后使用这两个统计量对该批次的数据进行标准化。
具体过程可以分为四个步骤:
 
 

image

 

训练与推理的区别 
  • 训练阶段:如上所述,使用当前批次的均值和方差。
  • 推理/测试阶段:在推理时,通常一次只处理一个样本,无法计算批次统计量。因此,需要使用在训练过程中累积的全局均值和全局方差(通常是使用移动平均(Moving Average)来估计)来进行标准化,并应用训练好的𝛾和𝛽参数。
Batch Normalization 的优势
使用 Batch Normalization 可以带来多方面的好处:
  • 加速训练:显著减少了 ICS,使得可以使用更高的学习率而不需要担心不稳定的收敛。
  • 提高稳定性:减少了梯度消失和梯度爆炸的问题,使得训练更深层次的网络成为可能。
  • 正则化效应:BN 在训练中引入了轻微的噪声(因为每个批次的均值和方差都略有不同),这起到了一定的正则化作用,有时可以减少或替代 Dropout 的使用。
  • 降低对初始化的要求:网络对参数的初始值不再那么敏感。
Batch Normalization 是现代深度学习模型(特别是卷积神经网络)中不可或缺的一部分。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/971315.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spark微博舆情分析系统 情感分析 爬虫 Hadoop和Hive 贴吧资料 双平台 讲解视频 大内容 Hadoop ✅

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

LIB3:MISC固件库 - LI,Yi

介绍标准库中的MISC固件库1. misc.h * @file misc.h * @brief 本文件包含所有杂项固件库函数的函数原型(CMSIS 函数的补充功能)。1.1 变量声明 /** * @brief NVIC 初始化结构体定义 */typedef struct {uint8_…

AT_abc250_h [ABC250Ex] Trespassing Takahashi

推式子题 考虑如何求出任意一个点到离它最近的房子的距离? 有一个很巧妙的处理方法是,我们可以建一个超级源点,连向所有房子,权值设为 \(0\),然后在新图上跑一个最短路,就能求出所有点到离它最近的房子的距离 \(…

11/20

今天无事发生,明天没课,嘿嘿

Langchain Splitter源码阅读笔记(一)CharacterTextSplitter

一、TextSplitter TextSplitter继承自BaseDocumentTransformer,是一个抽象类,不能直接创建实例。核心(内部)属性有: _chunk_size: 每块大小 _chunk_overlap: 每块之间的重叠区大小 _length_function: 计算大小的方法…

《从“直接对话”到 “集成开发调用”:智谱 GLM-4.6 引领 Coding 场景的效率跃迁》 - 实践

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

完整教程:Visual Studio Code 高效开发完全指南(2025年更新版)

完整教程:Visual Studio Code 高效开发完全指南(2025年更新版)2025-11-20 18:57 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !im…

开源低代码平台落地痛点解析

开源低代码平台凭借自主可控、成本优化的优势,成为越来越多企业数字化转型的选择。但实际落地过程中,不少企业遭遇技术适配不畅、安全漏洞频发、维护成本失控等问题,导致项目推进受阻,甚至中途搁置。 很多企业误以…

开源低代码 vs 闭源低代码:深度对比与企业选型决策指南

企业数字化转型过程中,低代码平台的选型往往陷入 “开源还是闭源” 的两难。开源低代码的自主可控与闭源低代码的成熟稳定,分别击中了企业的不同核心诉求。但很多企业在选型时,仅基于 “是否免费”“是否易上手” 等…

day10-Dify对接本地大模型

今日内容 1 补充 1.1 dify服务开启和关闭 # 1 dify服务开启关闭-个人电脑,大部分同学都会关机--》服务器是永远不关机 7*24*365 稳定不停机运行-关机再重启,dify没启动,就访问不了-win/mac本地:启动,关闭dify服务…

Windows 11** 上安装 MySQL

在 Windows 11 上安装 MySQL 的流程和 JDK/Tomcat 类似,分为下载、安装、配置和验证四步。下面给你一个完整的操作指南 👇🖥️ 安装 MySQL 步骤 1. 下载 MySQL前往 MySQL 官方下载页面 推荐下载 MySQL Installer …

Windows 11 上安装 PostgreSQL

Windows 11 上安装 PostgreSQL🖥️ 安装 PostgreSQL 步骤 1. 下载 PostgreSQL前往 PostgreSQL 官方下载页面 推荐下载 EnterpriseDB 提供的 Windows 安装包 (Installer),它包含 PostgreSQL Server、pgAdmin 管理工具…

2025青岛防水补漏公司怎么选?首选青岛极冠快修,堵漏、漏水检测全业务覆盖,连锁企业值得信赖

随着城市建筑老化与极端天气频发,防水补漏成为维护建筑安全的关键需求。在2025年青岛防水服务市场中,青岛极冠快修(青岛尤卉防水)凭借十六年本地化服务经验与技术沉淀,成为众多家庭与企业客户的信赖选择。无论是屋…

WebRTC在低时延直播中的应用

本文分享自天翼云开发者社区《WebRTC在低时延直播中的应用》.作者:江****禄 随着互联网技术的发展,视频直播成为了许多行业中的关键应用,包括教育、娱乐、体育赛事和电子竞技等。在这些应用中,低时延直播尤为重要,…

合并 K 个升序链表-leetcode

题目描述 给你一个链表数组,每个链表都已经按升序排列。 请你将所有链表合并到一个升序链表中,返回合并后的链表。 示例 1: 输入:lists = [[1,4,5],[1,3,4],[2,6]] 输出:[1,1,2,3,4,4,5,6] 解释:链表数组如下: …

解码线程池

线程池核心概念 线程池是管理线程的缓冲机制,提前创建一定数量的线程存入 “池子” 中,任务到来时直接从池中取出线程执行,任务完成后线程不销毁,放回池中待命。其核心作用是减少线程频繁创建 / 销毁的开销,避免线…

Windows 11 上安装 JDK

在 Windows 11 上安装 JDK🖥️ 安装步骤详解 1. 下载 JDK前往 Oracle 官方下载页面 或 OpenJDK 官网Oracle下载共享账号 账号:83926039@qq.com 密码:Oracle1.推荐选择 长期支持版本 (LTS),如 JDK 11 或 JDK 17,…

cacti 监控 linux

Cacti 是一个基于 Web 的监控工具,主要用于监控 Linux 系统和网络设备。它使用 SNMP(Simple Network Management Protocol)来收集数据,并通过图形化界面展示监控数据。? 一、Cacti 的基本功能监控系统资源:CPU 使…

2025年成都电线电缆采购标杆厂家最新推荐:成都鑫佰亿,电力电缆/高压电缆/中压电缆/低压电缆/铜芯电缆/铝芯电缆/树立电线电缆品质新标准

随着国家电网建设持续投入、新能源产业快速发展及城乡配电升级需求增加,电线电缆行业已从传统基建配套逐步扩展至风电、光伏、新能源汽车充电设施等多个领域,2025年市场规模预计稳步增长。但行业扩张也带来厂商生产工…