《深度学习:卷积神经网络从入门到精通》——2.17 块归一化
【摘要】 本书摘自《深度学习:卷积神经网络从入门到精通》——书中第2章,第2.17节,作者是李玉鑑、张婷、单传辉、刘兆英等。
2.17 块归一化
块归一化(batch normalization),又称为批量归一化。对神经网络的训练过程进行块归一化,不仅可以提高网络的训练速度,还可以提高网络的泛化能力[67]。块归一化可以理解为把对输入数据的归一化扩展到对其他层的输入数据进行归一化,以减小内部数据分布偏移(internal covariate shift)的影响。经过块归一化后,一方面可以通过选择比较大的初始学习率极大提升训练速度,另一方面还可以不用太关心初始化方法和正则化技巧的选择,从而减少对网络训练过程的人工干预。
块归一化在理论上可以作用于任何变量,但在神经网络中一般直接作用隐含单元的输入。不妨设x表示某个隐含单元的输入。B = {x1, x2, …, xm}表示x的一个取值块。块归一化实际上是学习一个包含两个参数γ和β的变换BNγ, β,把xi变成yi,计算过程如下:
(2.106)
在学习训练完成之后,令均值E?[?x?] = EB[?μB?]、方差?,并把变换??替换成下面的推理尺度变换:
(2.107)
在应用时,块归一化通常被直接作用于某个或多个隐含层的所有输入。
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)