掌桥专利:专业的专利平台
掌桥专利
首页

一种基于表示重建的持续表示学习方法

文献发布时间:2024-04-18 19:52:40


一种基于表示重建的持续表示学习方法

技术领域

本发明涉及持续学习领域,特别涉及一种基于表示重建的持续表示学习方法。

背景技术

近些年,深度神经网络已经在诸多机器学习任务中展示了它们卓越的性能。在神经网络训练时,通常采用经验风险最小化原则进行模型优化,其学习过程是建立在数据独立同分布(iid)假设之上。然而在现实中更为常见任务序列的学习中,这种假设通常不能得到满足,从而导致灾难性遗忘。具体地说,当模型使用传入的新任务数据进行训练时,旧知识将被新信息打乱,即模型在新任务数据集上的训练将会导致其在旧任务中的性能大幅降低。

近些年,持续学习领域的研究者们提出了许多方法来帮助缓解遗忘,期望在任务序列的学习过程中能够保持模型的“稳定性”(模型记忆旧知识的能力)和“可塑性”(模型学习新知识的能力)。大多数现有的持续学习方法采用端到端的训练框架,并专注于保留模型参数或函数。例如,正则化方法和知识蒸馏方法被广泛用于保留函数空间的知识,而参数隔离则是固定部分参数子集以保证之前任务的最大稳定性。

然而,相较于函数空间中的知识保留,模型在嵌入空间中的表示知识保留更应当受到重视。首先,任务边界在持续学习过程中发生了变化并不意味着有用的知识被遗忘,一个简单的调整,如使用多头分类器或分类器权重再分配就可让其恢复。其次,深度神经网络被诸多学者认为是一种自动特征提取的方法,编码器的表示能力在本质上决定了持续学习框架的性能上限。此外,人们通常不仅对模型的最终性能感兴趣,还会对所学表示在其他下游任务(如对象检测、语义分割、风格迁移等)上的迁移性能感兴趣。近年来,无监督表示学习方法习得的表示可以以优异的表现转移到各种下游任务中,这也表明了嵌入空间中的表示知识保留可以让模型拥有更加出色的迁移性能。

嵌入空间中良好的表示分布是类内聚敛,类间疏离。然而研究表明,在任务序列学习的过程中,语义相似的表示相互远离,而语义不同的表示却逐渐靠近,最终导致不同类别的表示发生重叠。这说明了类别的表示知识在持续学习过程中正在发生遗忘。为了解决此问题,本方案提出了一种基于表示重建的持续表示学习算法(RRCL)。该算法由采用对比表示学习训练范式,并引入表示重建机制方法实现持续学习过程中的良好类别表示分布。

发明内容

本发明目的是:提供一种基于表示重建的持续表示学习方法(RRCL),对传统的持续学习进行改进,旨在解决持续学习场景中表示空间的灾难性遗忘问题:

持续学习场景:持续学习场景通常被分为三类,其中类增量学习(Class-IL)的设置是最具挑战的,各研究工作均表明在这种设置下,模型发生了最严重的遗忘。在Class-IL设置中,模型在任务序列t∈{1,2,...,T}中进行学习,在每个任务训练期间只能使用任务指定的数据集

表示空间的灾难性遗忘问题:持续学习过程中,类别的表示分布向着类内疏离,类间靠近的方向演化,导致表示知识的遗忘。RRCL针对该问题,通过表示重建机制,实现持续学习过程中各个类别表示的合理分布,并最终在下游任务中获得出色的性能。

本发明的技术方案是:

一种基于表示重建的持续表示学习方法,包括:

S1、采用有监督对比学习的训练范式细粒度地学习新类别中的表示知识;

S2、然后通过引入表示重建方法对持续学习过程中不断被破坏的类别表示进行重建。

优选的,S1中,采用了记忆回放策略,存储了旧任务训练样本的有限子集,并在对新任务进行训练时将它们混合到新任务样本中;

在每个任务的训练结束时,将一小部分训练样本存储在重放缓冲区中,仅从重放缓冲区中检索属于旧类的样本子集;由于缓冲区大小的限制,当有新类样本加入时,会有等量的旧类样本被随机地替换出去;当任务t到达时,有两个数据集可用:任务专用数据D

优选的,S1中,为了避免类不平衡问题,使用平衡抽样策略得到一个小批量X={x

对小批量中的每一个实例x

优选的,S1中,将视图输入编码器和一个多层感知机,数据实例被映射到一个单位超球面空间:

得到所有的数据点向量后,使用有监督对比学习方式细粒度地学习新类别的表征知识,其损失函数表示公式1:

其中,A(i)是

其中,τ表示一个常数缩放因子,||*||则表示对应向量的欧几里得范数。

优选的,S2中,首先引入一种特殊的类中心作为锚点,超球面上的数据点尽可能地靠近它们所属类的类中心,促使超球面上的同类表示被重新聚集;锚点是超球面上属于同一类的所有点簇的归一化均值,通过如下计算得到:

其中,n

优选的,S2中,为了确保不同类别之间的表示是均匀离散的,锚点自发地向着远离其他类的方向移动;这些可移动的锚点将引导着各个类别表示在超球面上以获得更加均匀离散的分布,从而完成类别表示的重建。

优选的,控制锚点移动的方向和速度的方法为:

一个锚点受到其他锚点给它施加的斥力,把所有的斥力投影到超球面的切平面上,这些投影的合力方向就是锚点运动的方向;

锚点间的斥力大小与它们之间的距离负相关,距离越小,斥力越大;锚点k受到锚点i对它施加的斥力表示为:

左边的项G

每个锚点在由其他类给予它的斥力投射到切平面上的合力的方向上移动;因此,锚点k的移动表示为:

其中,C

在每个epoch训练开始时以如公式7更新可移动锚点的位置:

γ是移动步长,同时更新所有锚点。

优选的,在可移动锚点定义的基础上,对表示重建损失函数的定义如下:

表示重建损失函数的优化目标是尽可能增大Data Points到所属类别锚点的相似度,减小Data Points到其他类别锚点的相似度;而由于锚点自动的向着更加均匀的分布方式进行移动,引导着各类别表示向着类内聚敛和类间均匀离散的方向演化,最终实现表示的重建。

优选的,完整的损失函数表示如下:

/>

λ是权重系数,通过该算法,训练得到RRCL的编码器。

本发明的优点是:

1.本发明基于表示重建的持续表示学习方法,在两个数据集中一致地优于所有其他方法,特别是在重放缓冲区空间更小的情况下,RRCL方法的优势更加明显。

2.本发明基于表示重建的持续表示学习方法,在任务的各个阶段,都能保持优于其他方法的类别表示能力。RRCL成功地重建了分布良好的类别表示,从而显著地减轻了表征遗忘的影响。

附图说明

下面结合附图及实施例对本发明作进一步描述:

图1为本发明基于表示重建的持续表示学习方法的总体架构图;

图2为锚点受到其他锚点给它施加的斥力的示意图;

图3为本发明方法的分类任务性能比较图;

图4为本发明方法的模型表示能力比较图。

具体实施方式

基于表示重建的持续表示学习方法,即RRCL不同于传统的端到端持续学习算法,它的目标是获得一个在嵌入空间持续拥有良好的类别表示分布的编码器(Encoder)。

本发明基于表示重建的持续表示学习方法,首先采用了有监督对比学习的训练范式细粒度地学习新类别中的表示知识,然后通过引入表示重建方法对持续学习过程中不断被破坏的类别表示进行重建。

如图1所示,为本发明基于表示重建的持续表示学习方法的总体架构图。

首先,RRCL采用了记忆回放策略,它存储了旧任务训练样本的有限子集,并在对新任务进行训练时将它们混合到新任务样本中。具体来说,在每个任务的训练结束时,将一小部分训练样本存储在重放缓冲区中,仅从重放缓冲区中检索属于旧类的样本子集。由于缓冲区大小的限制,当有新类样本加入时,会有等量的旧类样本被随机地替换出去。因此,当任务t到达时,有两个数据集可用:任务专用数据D

为了避免类不平衡问题,我们使用平衡抽样策略得到一个小批量(mini-batch)X={x

伪代码1平衡抽样策略

对小批量中的每一个实例xk进行两个相同且独立的随机数据增强,生成两个不同的视角

伪代码2数据增强策略

将视图输入编码器(Encoder)和一个多层感知机(MLP),数据实例被映射到一个单位超球面空间。该过程可以形式化表示为:

得到所有的数据点向量后,RRCL使用有监督对比学习方式细粒度地学习新类别的表征知识,其损失函数可以表示如下:

其中,A(i)是

其中,τ表示一个常数缩放因子,||*||则表示对应向量的欧几里得范数。

直观地说,该损失函数的优化目标是让同类别的实例,在超球面空间中尽可能地靠近,而让不同类别的实例,在超球面空间中尽可能远离,以此能够细粒度地在新任务中习得类内聚敛,类间离散的表示分布。

如前文所述,在习得新任务中的表示知识时,旧类的表示知识发生遗忘。因此,RRCL引入了表示重建方法来恢复所有已学任务中的类别表示分布。接下来,详细阐述表示重建方法的实现机理。

首先,RRCL引入一种特殊的类中心(Class Centers)作为锚点,超球面上的数据点尽可能地靠近它们所属类的类中心,促使超球面上的同类表示被重新聚集。与传统持续学习方法中的类别原型概念不同,RRCL中的锚点是超球面上属于同一类的所有点簇的归一化均值。可以通过如下计算得到:

其中,n

由于在持续学习过程中,不同类别之间的间距正在不断缩小,仅仅使用静态的锚点吸引来自同一类的样本不足以维持不同类别表示之间的区分度。因此,为了确保不同类别之间的表示是均匀离散的,RRCL让这些锚点自发地向着远离其他类的方向移动。这些可移动的锚点将引导着各个类别表示在超球面上以获得更加均匀离散的分布,从而完成类别表示的重建。

如何控制移动的方向和速度是可移动锚点设计的重点。在RRCL中,受到真实的物理世界中磁力的启发,像球面上的各个同极磁体一样,一个锚点对其他锚点施加斥力,同时也收到其他锚点对它的斥力。在表示重建方法中,这种斥力会推动着锚点向着远离其他锚点的方向上移动,并且最终获得锚点在超球面上更均匀的分布。如图2所示,在RRCL中,一个锚点受到其他锚点给它施加的斥力。把所有的斥力投影到超球面的切平面上,这些投影的合力方向就是锚点运动的方向。将运动方向固定在切平面上的原因是余弦相似度的值对切平面方向上的移动最敏感。

与磁力类似,锚点间的斥力大小与它们之间的距离负相关,距离越小,斥力越大。在RRCL中,锚点k受到锚点i对它施加的斥力可表示为:

左边的项G

每个锚点在由其他类给予它的斥力投射到切平面上的合力的方向上移动。因此,锚点k的移动可表示为:

其中,C

由此,RRCL在每个epoch训练开始时以如下方式更新可移动锚点的位置:

在这里,γ是移动步长。注意,必须同时更新所有锚点。

在上述可移动锚点定义的基础上,RRCL对表示重建损失函数的定义如下:

直观地说,该损失函数的优化目标是尽可能增大Data Points到所属类别锚点的相似度,减小Data Points到其他类别锚点的相似度。而由于锚点自动的向着更加均匀的分布方式进行移动,引导着各类别表示向着类内聚敛和类间均匀离散的方向演化,最终实现表示的重建。

RRCL算法完整的损失函数可以表示如下,λ是权重系数:

通过该算法,可以训练得到RRCL的编码器,在嵌入空间持续拥有良好的类别表示分布。

为了准确传达算法的训练过程,本专利中使用伪代码3对整个算法的实现过程进行了描述。

伪代码3RRCL算法完整实现

下面介绍本发明具体实施时的实验对比。

1.实验设置

测试平台设置:所有实验均在配备四个NVIDIA V100 GPU的服务器上进行,操作系统为Ubuntu 16.04.7 LTS,CPU型号为Hygon C86 7151 16-core Processor,CUDA版本为11.2,pytorch版本为1.12.1。

数据集:所有方法均在广泛使用的Split-CIFAR-10和Split-CIFAR-100上进行了评估,Split-CIFAR-10是通过将CIFAR-10数据集拆分为5个具有非重叠类的任务且每个任务2个类来构建的。Split-CIFAR-100将CIFAR-100数据集划分为10个不相交的任务,每个任务有10个类。

比较基准:RRCL与几种最先进的和成熟的持续学习方法进行比较,这些方法也使用了记忆回放策略。具体选用以下基线:三种基于知识蒸馏的方法iCarl,Der++,COIL;三种基于梯度的方法A-GEM,GSS,MER;两种偏倚矫正的方法:BiC,WA;两种表示学习的方法:SCR,ER-AML,同时还有持续学习的性能上限多任务联合学习(Joint)以及持续学习的性能下限,不引入持续学习方法(Fine-tune)。比较以两种方式进行:第一,通过使用Der++提出的经典持续学习评估协议比较模型在下游分类任务中的性能,第二,通过利用最佳线性分类器比较模型的表示能力。

分类任务性能比较:为了公平地比较每种方法,统一使用ResNet-18用作骨干网络并对所有数据集从头开始进行训练。在每个任务阶段,使用动量为0.9的随机梯度下降(SGD)优化器,且权重衰减为0.0001。前10个epochs的使用预热,初始学习率α=0.01,预热至α=0.05。所有模型都训练100个epochs,使用学习率余弦衰减技术,学习率衰减率为0.1,分别在60、75、90个epochs时进行衰减。

在下游分类任务的性能比较中,由于RRCL并没有一个可用的线性分类器,因此,在推理阶段,它使用没有参数的最近类均值(NCM)分类器。具体地说,在编码器完成训练后,NCM分类器首先使用各类的所有嵌入来计算该类的原型。原型的计算方式如下:

接着,将实例x

模型表示能力比较:采用表示学习中常用的线性探针(LP)来比较模型的表示能力。具体地说,完成各任务的训练后,冻结模型中编码器的参数,并在此之上使用过去所有任务中的全部训练数据从头开始训练一个最佳线性分类器。该方法摒除了线性分类器在任务边界上的偏倚,可以直接对比持续学习中各个阶段模型的表示能力。在线性分类器的训练时,为了公平比较,采用了完全统一的训练设置。使用100个epochs,mini-batch大小为256,使用SGD,动量为0.9,初始学习速率α=0.01,在前10个epochs预热至α=0.1,学习速率衰减速率为0.2,在60、75、90个epochs进行学习率衰减。

2.实验结果

分类任务性能比较结果:图3展示了RRCL和各基线5次运行使用不同随机种子在训练结束时的平均准确度±标准差(%),这评价了各个方法在Split-CIFAR-10、Split-CIFAR-100的所有任务上总体性能,CL模型在每个基准上的最佳精度结果以粗体标记。

可以发现RRCL在两个数据集中一致地优于所有其他方法,特别是在重放缓冲区空间更小的情况下,RRCL方法的优势更加明显。

模型表示能力比较结果:为了更清楚地展示结果,这里只对在下游任务中性能排在前五的方法进行呈现。图4展示了DER、COIL、sCR、ER-AML、RRCL等表示学习方法使用协议在Split-CIFAR-10的各个任务阶段得到的结果。

结果表明RRCL在任务的各个阶段,都能保持优于其他方法的类别表示能力。RRCL成功地重建了分布良好的类别表示,从而显著地减轻了表征遗忘。

随着现代人工智能技术的兴起,对设备上模型训练的需求已成为一个重要的研究领域。任务复杂性和工作量的增加强调了将AI模型训练带到边缘的必要性。在将人工智能部署到端侧设备之后,由于数据的隐私性或通信带宽的限制,优先是直接在设备上持续训练AI模型,而又由于设备存储空间的限制以及数据输入的非平稳性,因此模型难以避免地会发生灾难性遗忘。通过引入RRCL方法,只需要非常小的存储开销,就可以支持端侧设备在维持模型已学知识不遗忘的同时,依次地学习新传入的数据。

上述实施例只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡根据本发明主要技术方案的精神实质所做的修饰,都应涵盖在本发明的保护范围之内。

相关技术
  • 一种基于图谱表示学习的知识表示学习方法
  • 一种基于图谱表示学习的知识表示学习方法
技术分类

06120116331522