layernorm
为每个观察独立地规范化所有渠道的数据
语法
描述
层归一化操作对每个观测的所有通道的输入数据进行了独立的归一化。为了加快循环和多层感知器神经网络的训练,降低网络初始化的敏感性,可在可学习的操作后使用层归一化,如LSTM和全连接操作。
归一化之后,该操作将输入偏移一个可学习的偏移量β用一个可学习的比例因子进行缩放γ.
的layernorm
函数将层归一化操作应用于dlarray
数据。使用dlarray
对象允许对维度进行标记,从而使处理高维数据更加容易。方法标识哪些维度对应于空间、时间、通道和批处理维度“S”
,“T”
,“C”
,“B”
标签,分别。对于未指定的和其他维度,请使用“U”
标签。为dlarray
对象函数对特定维度进行操作时,可以通过格式化dlarray
对象直接调用,或使用DataFormat
选择。
请注意
将层规范化应用于layerGraph
对象或层
数组,使用layerNormalizationLayer
.
对输入数据应用层归一化操作Y
= layernorm (X
,抵消
,scaleFactor
)X
并使用指定的偏移量和比例因子对其进行转换。
函数归一化“年代”
(空间),“T”
(时间),“C”
(频道),“U”
的(未指明的)尺寸X
对于每一个观察“B”
(批)尺寸,独立。
对于未格式化的输入数据,请使用“DataFormat”
选择。
将层规范化操作应用到未格式化的Y
= layernorm (X
,抵消
,scaleFactor
、“DataFormat”FMT)dlarray
对象X
指定的格式FMT
.输出Y
是未格式化的dlarray
的对象,其维度顺序与X
.例如,“DataFormat”、“SSCB”
指定格式为二维图像输入的数据“SSCB”
(空间,空间,渠道,批处理)。
要指定缩放和偏移的格式,请使用“ScaleFormat”
而且“OffsetFormat”
选项,分别。
例子
输入参数
输出参数
算法
层归一化操作对元素进行归一化x我通过先计算均值来计算输入μl和方差σl2在空间,时间和通道维度上为每个观测独立。然后,它计算归一化激活为
在哪里ϵ是一个常数,当方差非常小时,它可以提高数值的稳定性。
为了考虑均值和单位方差为零的输入对于层归一化之后的操作不是最优的可能性,层归一化操作使用转换进一步转移和缩放激活
偏移量在哪里β还有规模因子γ是在网络训练过程中更新的可学习参数。
参考文献
Ba, Jimmy Lei, Jamie Ryan Kiros和Geoffrey E. Hinton。“层正常化。”预印本,2016年7月21日提交。https://arxiv.org/abs/1607.06450。
扩展功能
版本历史
在R2021a中引入