工程Trick | 结合BN层 优化前向传播效率
发布时间
阅读量:
阅读量
1.BatchNorm
在深度网络模型的训练过程中,引入BN(Batch Normalization)层不仅有助于提升网络收敛速度,同时还能有效抑制过拟合现象,通常该层会被置于卷积层之后。如图示所呈现,BatchNorm操作以通道为基本单位,针对当前通道中所有N、H、W维度的数据执行归一化处理。

在特征归一化处理过程中,BN层能够有效缓解因特征分布不均衡所引发的梯度消失及梯度爆炸现象,并借助可学习参数确保特征信息的完整性。尽管BN层在训练阶段具有显著优势,但在网络进行前向传播时,由于引入了额外的计算步骤,不仅对模型性能造成一定影响,还增加了内存或显存的占用量。因此,当前工程实践中广泛采用的方法是将卷积操作后的BN处理过程直接整合至卷积运算之中。
2.将BN操作合并到卷积中

3.pytorch代码实现
可以明显看出,以下代码实际上是将前述部分中的数学表达式转化为程序
全部评论 (0)
还没有任何评论哟~
