概述
此笔记本将简要介绍 TensorFlow 的归一化层。当前支持的层包括:
组归一化(TensorFlow Addons)
实例归一化(TensorFlow Addons)
层归一化(TensorFlow Core)
这些层背后的基本理念是对激活层的输出进行归一化,以提升训练过程中的收敛。与批次归一化相反,这些归一化不适用于批次,而是用于归一化单个样本的激活,这样可使它们同样适用于循环神经网络。
通常,通过计算输入张量中子组的均值和标准差来执行归一化。此外,也可以对此应用比例因子和修正因子。
$y_{i} = \frac{\gamma ( x_{i} - \mu )}{\sigma }+ \beta$
$ y$:输出
$x$:输入
$\gamma$:比例因子
$\mu$:均值
$\sigma$:标准差
$\beta$:修正因子
下面的图像演示了这些技术之间的区别。每个子图显示一个输入张量,其中 N 为批次轴,C 为通道轴,(H, W) 为空间轴(例如图片的高度和宽度)。蓝色像素由相同的均值和方差归一化,均值和方差通过聚合这些像素的值得出。
权重 γ 和 β 可以在所有归一化层中训练,以补偿表征能力的可能损失。您可以通过将 center 或 scale 标记设置为 True 来激活这些因子。当然,您也可以在训练过程中对 beta 和 gamma 使用 initializers、constraints 和 regularizer 来调整这些值。
设