bnbatch normaliz原理与使用过程详解_第1页
bnbatch normaliz原理与使用过程详解_第2页
bnbatch normaliz原理与使用过程详解_第3页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、BN(Batch Normalization) 原理与使用过程详解2018 年 08 月 20 日 15:47:07 donkey_1993 阅读数:7742名字:Batch Normalization: Accelerating Deep Network Trainingby Reducing Internal Covariate Shift地址:BN 被广泛应用于深度学习的各个地方,由于在实习过程中需要修改网络,修改的网络在训练过程中无法收敛,就添加了 BN 层进去来替换掉 LRN 层,网络可以收敛。现在就讲一下 Batch Normalization 的工作原理。BN 层和卷积层,池化层

2、一样都是一个网络层。首先我们根据来介绍一下 BN 层的优点。1)加快训练速度,这样我们就可以使用较大的学习率来训练网络。2)提高网络的泛化能力。3)BN 层本质上是一个归一化网络层,可以替代局部响应归一化层(LRN 层)。4)可以打乱样本训练顺序(这样就不可能出现同一张被多次选择用来训练)中提到可以提高 1%的精度。下面我们就讲一下 BN 层是如何实现的:从中给出的伪代码可以看出来 BN 层的计算流程是:1.计算样本均值。2.计算样本方差。3.样本数据标准化处理。4.进行平移和缩放处理。引入了和两个参数。来训练和两个参数。引入了这个可学习重构参数、,让我们的网络可以学习恢复出原始网络所要学习的

3、特征分布。下面我们讨论一下样本是如何得到的?Batch Normalization 顾名思义,mini-batch 就是我们每次训练的 Batch_size。从上图卷积过程可以得出一张 5*5 的图片经过卷积核 3*3 的卷积之后得到一张3*3 的特征图。特征图就会包含了 9 个特征值,这 9 个特征值就是我们上面所提到的样本。假设我们的 batch-size 设为 m,那么就会有 m*9 个特征值传到 BN层里面作为样本来训练参数和。在网络训练中以 batch-size 作为最小来不断迭代。每当有新的 batch-size进入到网络里面就会产生新的和。也就是说我们训练过程中要生成 图片总量/

4、batch-size 组参数。图像卷积的过程中,通常是使用多个卷积核,得到多张特征图,对于多个的卷积核需要保存多个的与。BN 层的整体流程如下图:输入:待进入激活函数的变量输出:1.这里的 K,在卷积网络中可以看作是卷积核个数,如网络中第 n 层个卷积核,就需要计算 64 次。需要注意,在正向时,会使用与使得BN 层输出与输入一样。2.在反向时利用与求得梯度从而改变训练权值(变量)。3.通过不断迭代直到训练结束,求得关于不同层的与。4.不断遍历训练集中的图片,取出每个 batch_size 中的与,最后统计每层 BN的与各自的和除以图片数量得到平均直,并对其做无偏估计直作为每一层的 Ex与 Varx。5.在的正向时,对测试数据求取与,并使用该层的 Ex与 Varx,通过图中 11:所表示的公式计算 BN 层输出。注意,在时,BN 层的输出已经被改变,所以 BN 层在的作用体现在此处。参考文献:Batch Normalization: A

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论