目录
归一化(Normalization)
-
网络输入归一化(Network Input Normalization)
- Example:是将像素归一化到[0, 1]或[-1, 1]范围,或者根据均值和标准差进行归一化。
-
批归一化(Batch Normalization,简称BN)
- 将隐藏层的输入归一化到小批量的均值和方差。
- 减少了前层对后层的影响。
-
批归一化重正化(Batch Renormalization,简称BR)
- 通过保持一个渐近逼近全局归一化的移动平均值,修正了训练和推断之间的差异。
-
其他选项包括:
- 层归一化(Layer Normalization,简称LN) - 主要用于循环神经网络(RNNs)。
- 实例归一化(Instance Normalization,简称IN) - 主要用于风格迁移任务。
- 组归一化(Group Normalization,简称GN) - 主要用于卷积神经网络(CNNs)。
每种方法都有其特定的优势和适用性
迁移学习
- 使用迁移学习的优势
-
能够快速的训练出一个理想的结果
-
当数据集较小时也能训练出理想的效果
-
- 常见的迁移学习方式:
-
载入权重后训练所有参数
-
载入权重后只训练最后几层参数
-
载入权重后在原网络基础上再添加一层全连接层,仅训练最后一个全连接层
-
在计算机视觉中应用最广泛、最成功的基本思想是迁移学习。迁移学习最常用的方法是将预训练好的网络(如ResNet)在某个时刻切断。它切断了全连接层的某些方面和某些部分,然后取一个新的数据集并重新训练该网络。那么这有什么用呢?对于工业中的每一个应用计算机视觉。当你有一个特定的应用时,比如你想要构建一个行人检测器。如果你想建立一个行人检测器,并且有一个行人数据集,那么在ImageNet或COCO上训练ResNet是很有用的。选取这个网络,切断一些在一般视觉感知情况下训练的层。然后在专门的行人数据集上重新训练它。根据数据集的大小,预训练网络的前几层的总和应该是冻结的。有时并不取决于数据的大小。这在计算机视觉中非常有效,在音频、语音和NLP中也非常有效。因此,正如我们提到的预训练网络,它们最终形成了对数据库的表示,通过这些表示进行分类或回归的预测。但最清晰的例子是无监督形式的自编码器,用于形成表示。输入是图像,输出是与输入完全相同的图像。
自编码器是一种神经网络结构,用于学习数据的有效表示。它由两个主要部分组成:编码器和解码器。
自编码器
对于给定的输入图像,编码器将图像压缩为一个低维表示,这个表示被称为编码或隐藏层特征。解码器接收编码层的特征,并试图将其重建为与输入图像相同的输出。因此,自编码器的目标是使重建图像尽可能接近输入图像,即输出图像与输入图像具有相同的像素值。
在训练过程中,自编码器通过最小化重建误差来学习数据的表示。编码层的特征在这个过程中充当了一种数据的压缩表示形式,捕捉了输入图像中的重要信息。
自编码器的主要优势之一是它可以在无监督的方式下学习数据的表示,而无需标签或类别信息。它可以从未标记的数据中自动提取特征,并形成一个有用的表示,这对于后续的分类、回归或其他任务非常有价值。
因此,无监督的自编码器是一种用于形成表示的强大工具,通过将输入图像编码为低维特征并重新构建输出图像,它可以学习到数据中的重要特征并提供有用的表示形式。