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

Class28批量归一化

Class28批量归一化

在这里插入图片描述

批量归一化
批量归一化(Batch Normalization,简称BN)是一种用于加速神经网络训练、稳定训练过程并提高模型性能的技术。它最早由Ioffe和Szegedy在 2015 年提出,在深度学习中非常常见。

使用批量归一化的原因
在训练神经网络时,随着层数加深,模型的输入分布会不断变化,这会导致:

梯度消失/爆炸

学习变慢,需要精细调整学习率

权重初始化敏感

BN要求在每一层的输入上进行规范化,使得它们的均值为 0,方差为 1,从而缓解内部协变量偏移。

批量归一化的核心
在这里插入图片描述
在这里插入图片描述

计算当前小批量(Batch)中输入特征的平均值,用来中心化数据。


在这里插入图片描述

计算当前小批量中特征的方差,用于将数据缩放到单位方差,同时加上 ε 保证数值稳定。

在这里插入图片描述

将输入𝑥𝑖变成了均值为 0,标准差为1的值。

在这里插入图片描述
BN 又引入了 两个可学习参数:

𝛾:缩放系数
𝛽:平移系数

变为:
在这里插入图片描述

先把输入标准化成均值为0、方差为1的分布,再通过 γ 和 β 进行可学习的线性变换(恢复表达能力)

在神经网络中的位置

对于全连接层:通常放在线性层和激活函数之间

对于卷积层:通常放在卷积层和激活函数之间

BN 的优点

优点说明
减轻内部协变量偏移保持每层输入的稳定性
加速收敛学习过程更平稳,学习率可以设得更大
减少对初始化的敏感性权重初始化不需要特别精细
有一定的正则化效果mini-batch 的扰动有助于防止过拟合

BN 的局限性

局限说明
对 batch size 敏感batch 太小统计量不稳定(如在 RNN、小模型或推理时)
不适用于某些结构如 RNN,不适合用 BN,这时可以考虑 LayerNorm 或 GroupNorm
训练/推理两种模式差异若处理不当(如未区分 train/test 模式),会导致结果异常
http://www.dtcms.com/a/310515.html

相关文章:

  • java下载word
  • 第七章 愿景14 数据规划
  • 吃透 B + 树:MySQL 索引的底层逻辑与避坑指南
  • SpringMVC全局异常处理+拦截器使用+参数校验
  • Bootstap Vue 之b-form-radio-group 不显示选中状态问题
  • 高并发爬虫的限流策略:aiohttp实现方案
  • 8.1 开始新的学习历程
  • 深入理解 Linux 进程地址空间
  • 一体化智能截流井市场报告:深度解析行业现状与未来增长潜力
  • 【Dart 教程系列第 51 篇】Iterable 中 reduce 函数的用法
  • Vue2 项目实现 Gzip 压缩全攻略:从配置到部署避坑指南
  • 静电释放检测漏报率↓85%!陌讯多模态融合算法在电子厂ESD防护实战解析
  • 【数据可视化-77】中国历年GDP数据可视化分析:Python + Pyecharts 深度洞察(含完整数据、代码)
  • QT中的window()方法/获取到控件最顶部容器
  • Effective C++ 条款16: 成对使用new和delete时要采用相同形式
  • 1、【C语言】【进阶】数组,指针与退化
  • 【Node.js安装注意事项】-安装路径不能有空格
  • Go 语言中 ​10 个高频实用写法
  • C语言:20250801学习(构造类型)
  • C++___快速入门(下)(引用)
  • Linux基础 -- 内核快速向用户态共享内核变量方案之ctl_table
  • 大模型学习思路推荐!
  • 基于K近邻的缺失值填补:原理、步骤与实战解析
  • Winform 中实现控件与数据的绑定,一方改变另一方同步改变。
  • 【Onvif从零实践】02、Onvif 测试工具(ONVIF Device Test Tool)的 安装、使用 教程
  • C++入门自学Day4-- c++类与对象(友元)
  • JavaScript语法树简介:AST/CST/词法/语法分析/ESTree/生成工具
  • 水果忍者经典版:离线版,永久无限制!!
  • IPD数字化的困难与解法
  • 如何在 VMware Workstation 虚拟机中利用 Nvidia 显卡的硬件加速功能