ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Normalization小结

2022-04-15 02:31:06  阅读:182  来源: 互联网

标签:权重 归一化 Batch Normalization 神经 小结 输入


1.为什么要用Normalization

  翻译过来就是归一化的意思,指将传统机器学习中的数据归一化方法应用到深度神经网络中,对神经网络中隐藏层的输入进行归一化,从而使网络更加容易训练。

  因为,

  它有更好的尺度不变性,即给定一个神经层L,它之前神经层L-1的参数变化会导致其输入的分布发生较大的改变,当用SGD来训练网络时,每次参数更新都会导致该神经层的输入分布发生改变,从机器学习角度来看,如果一个神经层的输入发生改变那就意味着其要重新学习,它把每个神经层的输入分布都归一化为标准的正态分布,可以使得每个神经层对其输入具有更好的尺度不变性。

  以及更平滑的优化地形,归一化不仅可以使得大部分神经层的输入处于不饱和区域,从而让梯度变大,避免梯度消失,还可以使得优化地形更加平滑,从而可以用更大的学习率,提高收敛速度。

  下面依次写到,批量归一化(Batch Normalization),层归一化(Layer Normalization),和权重归一化(Weight Normalization)。

2. 批量归一化(Batch Normalization)

  BN适用于判别模型中,比如图片分类模型。因为BN注重对每个Batch进行归一化,从而保证数据分布的一致性,而判别模型的结果正是取决于数据整体分布。但是      BN对Batch size的大小比较敏感,由于每次计算均值和方差是在一个上,所以如果Batch size太小,则计算的均值、方差不足以代表整个数据分布。

 

3.层归一化(Layer Normalization)

  它指针对同一张图片的同一层所有通道进行Normalization。

  层归一化和批量归一化整体上是十分类似的,差别在于归一化的方法不同。

  在三维矩阵中 层归一化是对矩阵每一列进行归一化,而批量归一化是对每一行进行归一化。

4.权重归一化(Weight Normalization)

  权重归一化是对神经网络的连接权重进行归一化, 通过再参数化方法, 将连接权重分解为长度和方向两种参数,然后使用SGD分别优化这两个参数



 

标签:权重,归一化,Batch,Normalization,神经,小结,输入
来源: https://www.cnblogs.com/zzhou1/p/16147319.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有