6、 Dropout
Bagging是通过结合多个模型降低泛化误差的技术,主要的做法是分别训练几个不同的模型,然后让所有模型表决测试样例的输出。而Dropout可以被认为是集成了大量深层神经网络的Bagging方法, 因此它提供了一种廉价的Bagging集成近似方法,能够训练和评估值数据数量的神经网络。
Dropout指暂时丢弃一部分神经元及其连接。随机丢弃神经元可以防止过拟合,同时指数级、高效地连接不同网络架构。神经元被丢弃的概率为1 - p,减少神经元之间的共适应。隐藏层通常以0.5的概率丢弃神经元。使用完整网络(每个节点的输出权重为 p)对所有 2^n 个dropout神经元的样本平均值进行近似计算。Dropout显著降低了过拟合,同时通过避免在训练数据上的训练节点提高了算法的学习速度。
7、 Drop Connect
Drop Connect是另一种减少算法过拟合的正则化策略,是 Dropout的一般化。在Drop Connect的过程中需要将网络架构权重的一个随机选择子集设置为零,取代了在Dropout中对每个层随机选择激活函数的子集设置为零的做法。由于每个单元接收来自过去层单元的随机子集的输入,Drop Connect和 Dropout都可以获得有限的泛化性能。Drop Connect和 Dropout相似的地方在于它涉及在模型中引入稀疏性,不同之处在于它引入的是权重的稀疏性而不是层的输出向量的稀疏性。
8、 最大约束范式
最大约束范式就是对权值进行约束,限制权值的大小,对每个神经元的权重绝对值给予限制。实际操作中先对所有参数进行正常的更新,然后通过限制每个神经元的权重矢量使其满足关系式:
其中c∈R常用取值为3或4。最大约束范式的特点是对权值的更新进行了约束,即使学习率很大,也不会因网络参数发生膨胀导致过拟合。
9、 基于优化过程的正则化:早停法
早停法可以限制模型最小化代价函数所需的训练迭代次数。早停法通常用于防止训练中过度表达的模型泛化性能差。如果迭代次数太少,算法容易欠拟合(方差较小,偏差较大),而迭代次数太多,算法容易过拟合(方差较大,偏差较小)。早停法通过确定迭代次数解决这个问题,不需要对特定值进行手动设置。
10、 基于函数模型的正则化
10.1、 参数共享
在同一网络的多个部分中重用一定的可训练参数,这种方法称为权值共享。当两个模型执行足够相似的分类任务并且具有相似的输入/输出分布时,模型参数之间应当存在一些相关性, 这时认为模型参数具有一定的可重用性,应用这一正则化方法可以使得模型比使用单独训练参数的模型更加简单。
目前,较为广泛地应用权重共享作为正则化方法的模型之一是卷积神经网络,它通过在图像的多位置共享权值参数从而对有关特征提取的平移不变性和局部性的先验知识进行了编码。此外,权重共享有效降低了卷积神经网络中需要学习的权重的参数数量,支持网络在不断增加训练数据的同时向更深处进行扩展。使用权值共享的模型的另一个例子就是自动编码器,将编码部分与相应的Sigmoid层参数共享,实现网络的构建。
10.2、 噪声标签
在模型输入部分添加噪声是数据集扩增的一种主要方式。将噪声添加到模型的隐藏单元可以得到常用的噪声模型;噪声模型的例子就是循环神经网络,通过噪声添加到模型权重从而转换到一个有关权重的贝叶斯推断的随机实现。通过贝叶斯推理的学习过程表现权重的不确定性,是一种使用的随机方法,此外,随机池化通过向模型的各个部分注入随机噪声赋予模型随机性实现了确定性模型随机泛化。向输出目标添加噪声的一个重要应用就是标签平滑。
10.3、 标签平滑
标签平滑通过将 softmax 函数明确分类结果替换为有关输出数量的比值, 对模型进行正则化, 它的优势就是能够防止模型陷入精确概率求解并且不影响正常的分类结果, 与之相关的正则化方法是 Mixup。令 x 为样本, y 为标签, 我们可以从训练数据(xi,yi)和(xj,yj)中创造出虚拟训练样本, 用于增强数据集的鲁棒性:
权重λ 是随机数, 线性混合方法是简单的点对点混合。
10.4、 多任务学习
多任务学习是一种比较复杂的正则化方法,通过合并多个任务中的样例提高网络泛化。它可以与半监督学习进行结合,从而实现无标记的数据在辅助任务上的应用。在元学习中也使用类似的任务共享概念,即来自同一个领域的多个任务按顺序学习并使用之前获得知识作为新任务的偏置;而在迁移学习中则将来自于一个领域的知识迁移到另一个领域,从而实现多任务学习。