一句话总结
批量归一化(Batch ,简称)是一种在神经网络训练过程中,将每一层的输入数据进行标准化处理的方法,可以加快训练速度、提升模型稳定性和效果。
一、基础概念:什么是批量归一化?
批量归一化(),是指在神经网络的每一层中,把同一个小批量(batch)里的数据,进行标准化(即减去均值、除以标准差),让数据分布更“规整”。
二、为什么要用批量归一化?
神经网络在训练过程中,每一层的输入分布会不断变化,导致训练变慢甚至不稳定。能让每一层的输入分布更稳定,模型更容易学习。
2. 加快收敛速度
标准化后,模型训练时参数调整更高效,能用更大的学习率,训练更快。
3. 防止梯度消失/爆炸
能让信号在网络中传递时保持合适的尺度,减少梯度消失或爆炸的风险。
4. 有一定正则化效果
在训练时引入了噪声,有助于防止过拟合。
三、的工作流程
计算均值和方差:对每个batch的数据,计算每一维的均值和方差。标准化:每个数据点减去均值、除以标准差。缩放和平移:引入可学习的参数(gamma和beta),让网络可以恢复或调整标准化后的数据分布。
公式: BN(x)=γ⋅x−μσ2+ϵ+βBN(x)=γ⋅σ2+ϵx−μ+β
四、图示帮助理解

© 版权声明
文章版权归作者所有,未经允许请勿转载。
相关文章
暂无评论...