批归一化作用_透彻分析批归一化Batch Normalization强大作用

批量归一化(BN)在神经网络中起到加速训练、缓解梯度消失、正则化等关键作用。它通过标准化中间层输入,使其接近高斯分布,减少内部协变量转移。BN结合不同激活函数和优化器,如ReLU和Adam,能有效提高性能。然而,小批量可能降低效果,且在数据极度不平衡的情况下,BN可能适得其反。BN还提供了一种正则化方式,允许使用较小的L2正则约束。
摘要由CSDN通过智能技术生成

在深度神经网络训练中,Batch Normalization有诸多非常强大的作用和效果:无论使用哪种激活功能或优化器,BN都可加快训练过程并提高性能;解决梯度消失的问题;规范权重;优化网络梯度流...等等。

批量归一化(BN)是神经网络的标准化方法/层通常BN神经网络输入被归一化[0,1]或[-1,1]范围,或者意味着均值为0和方差等于1。BN对网络的中间层执行白化本文只关注BN为什么工作的这么好,如果要详细理解BN详细算法,请阅读另一篇文章《批归一化Batch Normalization的原理及算法》,本文从以下六个方面来阐述批归一化为什么有如此好的效力:

(1)激活函数

(2)优化器

(3)批量大小

(4)数据分布不平衡

(5)BN解决了梯度消失的问题

(6)BN使模型正则化

为什么需要归一化?

通过使用BN,每个神经元的激活变得(或多或少)高斯分布,即它通常中等活跃,有时有点活跃,罕见非常活跃。协变量偏移是不满足需要的,因为后面的层必须保持适应分布类型的变化(而不仅仅是新的分布参数,例如高斯分布的新均值和方差值)。

神经网络学习过程本质上就是为了学习数据分布,如果训练数据与测试数据的分布不同,网络的泛化能力就会严重降低。

输入层的数据,已经归一化,后面网络每一层的输入数据的分布一直在发生变化,前面层训练参数的更新将导致后面层输入数据分布的变化,必然会引起后面每一层输入数据分布的改变。而且,网络前面几层微小的改变,后面几层就会逐步把这种改变累积放大。训练过程中网络中间层数据分布的改变称之为:"Internal Covar

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值