批量归一化(部分理解)

目的与疑惑
在深度学习中,每层输入数据的分布可能因为前一层参数的微小变动而有较大变化,
这种现象称为内部协变量偏移(Internal Covariate Shift)。
批量归一化通过规范化层输入来减少内部协变量偏移,使网络更稳定,通常也能加快收敛速度。

我的疑惑:后向传播后所有参数都会进行微调,那么再次输入数据 , 每层的输出数据变化应该是正常现象啊?

解释:
我们的本来目的是,批量输入数据然后获得合适的分布
例子:输入一个物品 合适的分布:狗>>狼>猫

现在的情况是,每次后向传播更新参数后,前向传播得到的分布都误差很大
第一次后向传播:输入一个物品,分布:狼>>猫>狗
第二次后向传播:输入一个物品,分布:猫>狗>>狼

正确的情况是,每次后向传播更新参数后,前向传播得到的分布都在一个规律内 且 越来越准确
第一次后向传播:输入一个物品,分布:狗>猫>狼
第二次后向传播:输入一个物品,分布:狗>>猫>狼

所以为了避免现在的情况:引入了批量归一化
批量归一化与降低学习率的区别
降低学习率
作用
1.缓和梯度更新:降低学习率会减少每次参数更新的步幅,这可以防止参数在优化过程中过度摆动,从而有助于避免梯度爆炸问题。

2.提高稳定性:较小的更新步幅可以帮助模型更平稳地逼近最优点,尤其是在接近最优解时,防止超过最优点。


限制:
1.训练速度减慢:较小的学习率意味着收敛到最佳性能所需的迭代次数可能会增加,从而导致整体训练时间变长。

2.可能陷入局部最小值:如果学习率过小,网络可能会在达到全局最优解之前就陷入局部最小值或鞍点。

使用批量归一化
作用:

1.稳定输入分布:批量归一化通过规范化层输入,减少了内部协变量偏移,使得每层的输入在训练过程中保持更加稳定的分布。

2.允许使用更高的学习率:由于输入分布的稳定性,可以使用更高的学习率进行训练,而不会导致梯度消失或爆炸,从而加快了模型的收敛速度。

限制:

1.增加计算负担:批量归一化会增加每次迭代的计算复杂度,因为它需要计算每个小批量的均值和方差,然后对数据进行规范化处理。

2.依赖于批量大小:批量归一化的效果依赖于批量的大小,过小的批量可能会导致估计的均值和方差不准确,影响模型性能。


注意:
没有必要和丢弃法混合使用
一般归一化在卷积层与全连接层之后,在激活函数前

可参考文章:28 批量归一化【动手学深度学习v2】 - 哔哩哔哩 (bilibili.com)

引入可学习的尺度参数(𝛾γ)和偏移参数(𝛽β)作用

这两个参数帮助模型保持和恢复那些可能在归一化过程中被不恰当地标准化掉的有用信息。我们可以通过一个比较形象的例子来解释这两个参数的作用:

形象例子:调整温度和风味

想象一下,你在制作一道菜,这道菜的味道受到配料比例的影响。在我们的例子中,配料比例相当于每层神经网络中的特征输入。为了确保每次做出的菜品都有相似的基础味道,你决定对所有配料进行“标准化”处理——即确保每种配料的量都处于一个标准化的水平(相当于批量归一化中的均值为0和方差为1的标准化步骤)。这样做可以让基础味道保持一致,但也可能会使菜品失去一些独特风味。

为了弥补这一点,你引入了两种“调味剂”:

尺度调整剂(𝛾γ):这相当于你可以决定增加或减少某种配料的比例(例如,如果某种配料的特性被标准化减弱了,你可能想通过增加它的比例来恢复它的影响力)。
风味偏移剂(𝛽β):这允许你根据需要添加或减少某种特定风味的强度,以达到完美的口感平衡。

神经网络中的应用

在神经网络中,𝛾γ 和 𝛽β 的作用与“调味剂”类似:

𝛾γ(尺度参数):允许模型调整每个特征归一化后的缩放程度。这是重要的,因为不是所有特征都应该具有相同的方差(即同样的“重要性”或“活跃度”)。有些特征可能更重要,因此需要更大的方差来强调其效果。
𝛽β(偏移参数):允许模型对每个特征进行垂直平移。这帮助模型调整特征的平均活跃度或激活阈值,以便更好地捕捉数据中的关键信息。

通过学习适当的 𝛾γ 和 𝛽β 值,神经网络能够自适应地恢复或保留那些对完成特定任务至关重要的特征属性,即便这些特征在批量归一化的过程中被标准化。这样,网络不仅能从标准化带来的优势中受益(如更快的收敛和更高的稳定性),还能保持必要的灵活性,以适应复杂和多变的数据特性。

过程

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Java集成结巴中文分词器、Springboot项目整合jieba分词,实现语句最精确的切分、自定义拆词

文章目录 一、jieba介绍二、集成三、原理四、自定义拆词4.1、方式一:在源码的dict.txt中修改然后重新打包(推荐)4.2、新建文件自定义拆词 五、其他问题 一、jieba介绍 jieba是一个分词器,可以实现智能拆词,最早是提供了python包,…

【产品经理修炼之道】- 如何从0到1搭建B端产品

随着数字化转型的不断深化,B端产品也面临着升级。本文总结分析了如何从0到1搭建B端产品,希望对你有所帮助。 背景 随着公司数字化转型的不断的推进和实施,数字化转型成功越来越明显的体现在财务报上,这也增强了管理层对数字转型的信心,在推进中我们也发现几年建设的系统的…

Aigtek:介电弹性体高压放大器在软体机器人研究中的应用

近年来软体机器人的研究成为目前机器人研究领域的热点,由于软体材料的自由度可以根据需求自由变化,因此软体机器人有着极高的灵活性,而且软体机器人因其材料的柔软性有着很好的人机交互性能和安全性。它的出现成功解决了传统的刚性机器人人机…

Django与mysqlclient链接不成功

先检查自己的python是什么版本,是64位还是32位,这个自己去网上查。 我的是32位的,因为直接pip下载不了,网上也没有32位的whl,所以卸载重装一个64位的3.9.6的python 网上直接搜mysqlclient,找到对应py39也…

「 网络安全常用术语解读 」SBOM主流格式SPDX详解

SPDX(System Package Data Exchange)格式是一种用于描述软件组件(如源代码)的规范,它提供了一种标准化的方法来描述软件组件的元数据,包括其许可证、依赖项和其他属性。SPDX最初由Linux基金会于2010年发起&…

家庭环境如何异地组网装修?

家庭异地组网装修是如今越来越受到人们关注的问题。在现代社会中,家庭成员经常因为各种原因而分散在不同的地区。这种情况下,如何实现家庭网络的高效通信变得尤为重要。本文将介绍一款异地组网产品——【天联】组网,它能够帮助家庭解决异地组…

STM32中断系统详解

系列文章目录 STM32单片机系列专栏 C语言术语和结构总结专栏 文章目录 1. 中断基本概念 2. STM32中断 3. NVIC的基本组件 3.1 NVIC的基本组件 3.2 NVIC的优先级 4. EXTI外部中断 4.1 基本概念 4.2 基本结构 5. AFIO 1. 中断基本概念 中断(Interrupt&…

测试的分类(3)

目录 按照测试阶段测试 系统测试 冒烟测试和回归测试的区别 验收测试 单元测试, 集成测试, 系统测试, 回归测试之间的关系 是否按手工进行测试 手工测试 自动化测试 自动化测试和手工测试的优缺点 自动化测试优点 自动化测试缺点 手工测试优点 手工测试缺点 按照…

Oracle导出导入dmp等文件类型的多表数据的常用方法、遇见的常见问题和解决办法(exp无效sql???)

使用PLSQL执行导出表数据的时候有两种方法 1、使用Oracle命令【imp--exp】【impdp--expdp】 但是如果你的本机没有安装有Oracle数据库,使用的instant client远程连接服务器上的Oracle数据库时候,你没有Oracle数据库带有的exp.exe、imp.exe等扩展文件&a…

详解23种设计模式——工厂模式

工厂模式 | CoderMast编程桅杆工厂模式 设计思想 工厂模式是最常用的设计模式之一,属于创建型模式,将创建对象的权利交给了一个工厂类,从而提供了一种不使用构造方法的情况下创建对象的途径,无需指定要创建的具体类,将…

重仓比特币

作者:Arthur Hayes Co-Founder of 100x. 编译:liam ccvalue (下文中表达的任何观点均为作者的个人观点,不应作为投资决策的依据,也不应被视为参与投资交易的建议或意见)。 我们中断牛市常规节目,为您播报这…

Android14之修改编译vendor.img(二百零七)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏:多媒…

HTML列表、表格、表单

1.列表 列表分类&#xff1a;无序、有序、定义 2.无序列表&#xff08;unordered list&#xff09; ul嵌套li&#xff0c;ul是无序列表。li是列表条目。 ur标签里面只能包含li标签。 li里面可以包含任何内容。 3.有序列表&#xff08;ordered list&#xff09; <ol>…

OpenMesh 计算封闭网格体积

文章目录 一、简介二、实现代码三、实现效果参考资料一、简介 思路很是简单,就是计算一些四面体的有向体积(这些四面体均是基于网格中的三角形与原点组成的) ,至于体积的符号则来自于三角形是否指向原点方向来确定,即面片的法线方向(其中三角形的法线本身取决于顶点的顺序…

高频问题|如何给指定的表达式添加小括号避免优先级问题?

关注它&#xff0c;不迷路。 本文章中所有内容仅供学习交流&#xff0c;不可用于任何商业用途和非法用途&#xff0c;否则后果自负&#xff0c;如有侵权&#xff0c;请联系作者立即删除&#xff01; 1.问题 如题&#xff0c;如何给指定的表达式添加小括号避免优先级问题…

远程控制安卓手机:便捷、高效与安全的方法

在移动设备的领域里&#xff0c;远程控制安卓手机的能力也变得越来越重要。这种技术可以让我们在远程地点方便地操作手机&#xff0c;无论是处理紧急事务、帮助他人解决问题&#xff0c;还是仅仅为了享受科技带来的便利。本文将为你介绍2种便捷、高效且安全的方法&#xff0c;让…

MacOS通过命令行开启关闭向日葵远程控制的后台服务

categories: [Tips] tags: MacOS Tips 写在前面 经常有小伙伴问我电脑相关的问题, 而解决问题的一个重要途径就是远程了. 关于免费的远程工具我试过向日葵和 todesk, 并且主要使用向日葵, 虽然 MacOS 下要设置很多权限, 但是也不影响其丝滑的控制. 虽然用着舒服, 但是向日葵…

JS设计模式-透过现象看本质

JS设计模式-透过现象看本质 设计模式SOLID设计原则创建型构造器模式工厂模式 - 简单工厂工厂模式 - 抽象工厂&#xff08;开发封闭原则&#xff09;构造器和简单、抽象工厂的区别 单例模式原型模式 结构型装饰器模式适配器模式代理模式事件代理 - 事件冒泡虚拟代理 - 通过Image…

JAVA毕业设计136—基于Java+Springboot+Vue的房屋租赁管理系统(源代码+数据库)

毕设所有选题&#xff1a; https://blog.csdn.net/2303_76227485/article/details/131104075 基于JavaSpringbootVue的房屋租赁管理系统(源代码数据库)136 一、系统介绍 本项目前后端分离&#xff0c;分为管理员、用户、工作人员、房东四种角色 1、用户/房东&#xff1a; …

开源博客项目Blog .NET Core源码学习(18:App.Hosting项目结构分析-6)

本文学习并分析App.Hosting项目中后台管理页面的_AminLayout.cshtml模版页面和登录页面。 _AminLayout.cshtml模版页面 后台管理页面中的大部分页面都使用_AminLayout.cshtml作为模板页面&#xff0c;如下图所示&#xff0c;后台页面的视图内容放置在表单中&#xff0c;使用la…
最新文章