«上一篇 下一篇»
  计算机工程  2022, Vol. 48 Issue (12): 112-118  DOI: 10.19678/j.issn.1000-3428.0063365
0

引用本文  

胡彬, 王晓军, 张雷. 一种半监督对抗鲁棒模型无关元学习方法[J]. 计算机工程, 2022, 48(12), 112-118. DOI: 10.19678/j.issn.1000-3428.0063365.
HU Bin, WANG Xiaojun, ZHANG Lei. A Semi-Supervised Adversarial Robust Model-Agnostic Meta-Learning Method[J]. Computer Engineering, 2022, 48(12), 112-118. DOI: 10.19678/j.issn.1000-3428.0063365.

基金项目

国家自然科学基金(61971235)

通信作者

王晓军(通信作者),副研究员

作者简介

胡彬(1997—),男,硕士研究生,主研方向为数据挖掘、机器学习;
张雷,讲师

文章历史

收稿日期:2021-11-26
修回日期:2022-02-17
一种半监督对抗鲁棒模型无关元学习方法
胡彬1 , 王晓军2 , 张雷2     
1. 南京邮电大学 计算机学院, 南京 210023;
2. 南京邮电大学 物联网学院, 南京 210023
摘要:元学习期望训练所得的元模型在学习到的“元知识”基础上利用来自新任务的少量标注样本,仅通过较少的梯度下降步骤微调模型就能够快速适应该任务。但是,由于缺乏训练样本,元学习算法在元训练期间对现有任务过度训练时所得的分类器决策边界不够准确,不合理的决策边界使得元模型更容易受到微小对抗扰动的影响,导致元模型在新任务上的鲁棒性能降低。提出一种半监督对抗鲁棒模型无关元学习(semi-ARMAML)方法,在目标函数中分别引入半监督的对抗鲁棒正则项和基于信息熵的任务无偏正则项,以此优化决策边界,其中对抗鲁棒正则项的计算允许未标注样本包含未见过类样本,从而使得元模型能更好地适应真实应用场景,降低对输入扰动的敏感性,提高对抗鲁棒性。实验结果表明,相比ADML、R-MAML-TRADES等当下主流的对抗元学习方法,semi-ARMAML方法在干净样本上准确率较高,在MiniImageNet数据集的5-way 1-shot与5-way 5-shot任务上对抗鲁棒性能分别约提升1.8%和2.7%,在CIFAR-FS数据集上分别约提升5.2%和8.1%。
关键词少样本学习    元学习    对抗训练    半监督学习    对抗鲁棒性    
A Semi-Supervised Adversarial Robust Model-Agnostic Meta-Learning Method
HU Bin1 , WANG Xiaojun2 , ZHANG Lei2     
1. School of Computer Science, Nanjing University of Posts and Telecommunications, Nanjing 210023, China;
2. School of Internet of Things, Nanjing University of Posts and Telecommunications, Nanjing 210023, China
Abstract: The meta model developed by meta learning is expected to have the ability of "learning to learn". Therefore, it can quickly adapt to new tasks based on the learned "meta knowledge", with a small number of gradient descent steps to fine-tune the model using a few labeled training data from new tasks.However, owing to the scarcity of training sampling data, when the meta-learning algorithm overtrains the existing tasks during the meta-training phase, the decision boundary trained by the meta learner is not sufficiently accurate.The unreasonable decision boundary makes the meta model more vulnerable to adversarial perturbation, which may lead to poor robustness performance of the meta model on new tasks.Therefore, a semi-supervised Adversarial Robust Model-Agnostic Meta-Learning(semi-ARMAML) method is proposed.A semi-supervised adversarial robust regularizer and a task-agnostic regularizer based on information entropy are integrated into the objective function to optimize the decision boundary.In particular, the calculation of the adversarial robust regularizer allows the unlabeled dataset to contain the classes unseen in the labeled dataset.The developed meta model performs better on new tasks of real application scenes and is more robust on input disturbances.The experimental results indicate that the scheme has a higher accuracy rate on clean samples.Compared with current mainstream adversarial meta-learning schemes such as ADML and R-MAML-TRADES, the adversarial robustness performance of the semi-ARMAML method improved by approximately 1.8% and 2.7% on the five-way one-shot and five-way five-shot tasks of the MiniImageNet dataset, respectively, and by approximately 5.2% and 8.1% on the five-way one-shot and five-way five-shot tasks of the CIFAR-FS dataset, respectively.
Key words: Few-Shot Learning(FSL)    meta-learning    adversarial training    semi-supervised learning    adversarial robustness    

开放科学(资源服务)标志码(OSID):

0 概述

近年来,深度学习技术利用大数据在图像分类、语音识别等领域取得显著成果,这些技术需要大量带标注的高质量数据,但在某些现实场景中,有些类别只有少量数据或少量标注样本数据。少样本学习(Few-Shot Learning,FSL)[1]的目标是设计一个只需少量样例就可以快速认知新任务的模型,但是,基于梯度下降的优化算法在被应用于少样本学习时会失效,可能的原因有[2]:少样本学习问题的训练数据量较小,在模型训练中参数更新次数受到限制,传统基于梯度优化的算法(如ADAM[3]、Adagrad[4]等)无法在这种情况下寻找到最优参数;对于每个数据集,网络参数必须从随机初始化开始,这严重影响了网络优化速度。为缓解上述问题,文献[5]总结了基于模型微调[6]、基于数据增强[7-9]和基于迁移学习[10-12]的三类方法。其中,迁移学习的主要思想是利用旧知识来学习新知识,并将已经学会的知识很快地迁移到一个新的领域中。迁移学习由于只需源领域和目标领域存在一定关联,就能实现知识在不同领域之间的迁移,因此成为目前主流的应用选择之一。

元学习(Meta-Learning)是基于迁移学习的一种解决方案,其目的是“学会学习”(Learning to Learn)[13]。元学习希望从大量相似的小任务中学习一些元知识,并使用这些元知识来指导模型快速适应新任务。一些元学习算法在少样本学习中取得了较好的效果,如FINN等[14]在2017年提出的模型无关元学习(Model-Agnostic Meta-Learning,MAML)算法。MAML算法以神经网络为基础模型,在大量相似任务中进行元学习,以找到对各任务都较为通用的初始化参数,MAML训练出的模型也被称为元模型。当新任务来临时,仅用少量标注训练样本微调元模型,便可让损失函数快速收敛,以使模型适应新的学习任务。MAML不仅可以用来解决少样本分类问题,还可用于强化学习、回归等问题。但是,GOLDBLUM等[15]发现MAML等元学习器的对抗鲁棒性较弱,很容易受到对抗样本的影响,尤其是一些恶意设计的对抗扰动,能够让自动驾驶失效[16],让目标检测或人脸识别系统失灵等[17],如果系统无法应对,会造成极大危害。

YIN等[18]发现将干净样本与对抗样本简单混合后,采用MAML训练元模型时该模型并不能有效工作,于是提出对抗元学习(Adversarial Meta-Learner,ADML)算法。ADML的关键思想是利用干净样本与对抗样本之间的相关性,使任务训练和元更新相互对抗,以改善模型鲁棒性,但是,这种交替训练网络的方式,使得ADML的训练代价昂贵。在另一项工作中,GOLDBLUM等[15]将对抗训练与MAML相结合,提出对抗性查询(Adversarial Querying,AQ)算法,在训练时使用快速梯度符号方法(Fast Gradient Sign Method,FGSM)[19]生成对抗样本,测试时使用投影梯度下降(Projected Gradient Descent Attack,PGD)算法[20]生成对抗样本。然而,AQ仅在有监督下工作,对于如何利用未标注样本则没有进一步研究。

WANG等[21]提出鲁棒增强模型无关元学习(Robustness-promoting MAML,R-MAML)算法,将AQ考虑为R-MAML的一种特殊情况,其半监督版本R-MAML-TRADES将额外的未标注数据引入元学习以提升元模型的对抗鲁棒性。但是,REN等[22]认为将未标注数据引入元学习中,应当考虑两种场景:一是每个任务中的未标注样本与同一任务的已标注样本具有相同的类分布;二是该任务中的部分未标注样本不属于训练集中任何一类,未标注数据包含了在标注训练集中未见过的类。

R-MAML-TRADES在引入未标注样本时,隐式地假设每个未标注样本与当前任务中的已标注样本属于同一组类,即场景A,这种假设在现实场景中难以成立。REN等[22]针对上述两种场景,扩展原型网络(Prototypical Networks)算法[23],提出掩码软聚类(Masked soft K-Means)算法,将未见过类未标注样本作为干扰项剔除,但其没有考虑元学习器的对抗鲁棒问题。

本文针对模型无关元学习算法与半监督对抗元学习存在的不足,提出一种半监督对抗鲁棒模型无关元学习(semi-supervised Adversarially Robust Model-Agnostic Meta-Learning,semi-ARMAML)算法进行模型训练,该模型仅使用少量标注数据训练迭代即可快速适应新任务。具体地,本文提出一种有效的对抗鲁棒正则化元学习方法,在微调过程与元更新过程的目标函数中均引入对抗鲁棒正则项,以提高元学习器的对抗鲁棒性能。在元更新过程的目标函数中引入基于信息熵的任务无偏正则项,从而缓解元模型在训练过程中出现过拟合的问题。在元更新过程的目标函数中还使用未标记的集合来计算对抗鲁棒正则化项,并允许未标注数据包含标注训练集中未见过的类,以获得更为通用且对抗鲁棒的元模型。

1 semi-ARMAML算法

本文semi-ARMAML算法的目标是采用半监督学习与对抗训练的方式来训练一个模型,该模型仅使用少量标注数据训练迭代即可快速适应新任务,并且还拥有较高的对抗鲁棒性能,在半监督场景B下同样适用。

1.1 问题定义

假设任务$ {T}_{i} $是一个从任务分布$ p\left(T\right) $中取样的$ N $-way $ K $-shot分类任务,每个任务数据集中共有$ N $个类别,每个类别只有$ K $个标注样本。任务$ {T}_{i} $被划分为支撑集(support set)$ {D}_{i}^{s} $和查询集(query set)$ {D}_{i}^{q} $。为简单起见,将元模型表示为由$ \theta $参数化的函数$ {f}_{\theta }\left(x\right) $,其将输入样本$ x $映射到离散标签$ y\in \{\mathrm{1, 2}, \cdots , N\} $上。

数据集$ D $来自一个任务分布$ p\left(T\right) $,其类别被划分为3个类别集合,分别为训练集类集合$ {C}_{\mathrm{t}\mathrm{r}\mathrm{a}\mathrm{i}\mathrm{n}} $、未见过类集合$ {C}_{\mathrm{u}\mathrm{n}\mathrm{s}\mathrm{e}\mathrm{e}\mathrm{n}} $与测试集类集合$ {C}_{\mathrm{t}\mathrm{e}\mathrm{s}\mathrm{t}} $,3个类集合不相交。将数据集$ D $也划分为3个集合,分别为训练集$ {D}_{\mathrm{t}\mathrm{r}\mathrm{a}\mathrm{i}\mathrm{n}}=\left\{\right(x, y\left)\right|x\in D, y\in {C}_{\mathrm{t}\mathrm{r}\mathrm{a}\mathrm{i}\mathrm{n}}\} $、未见过类训练集$ {D}_{\mathrm{u}\mathrm{n}\mathrm{s}\mathrm{e}\mathrm{e}\mathrm{n}}=\left\{\right(x, y\left)\right|x\in D, $$ y\in {C}_{\mathrm{u}\mathrm{n}\mathrm{s}\mathrm{e}\mathrm{e}\mathrm{n}}\} $与测试集$ {D}_{\mathrm{t}\mathrm{e}\mathrm{s}\mathrm{t}}=\left\{\right(x, y\left)\right|x\in D, y\in $$ {C}_{\mathrm{t}\mathrm{e}\mathrm{s}\mathrm{t}}\} $。为构建任务$ {T}_{i} $的训练集,首先从$ {C}_{\mathrm{t}\mathrm{r}\mathrm{a}\mathrm{i}\mathrm{n}} $中抽取包含$ N $类的子集$ {C}_{i}^{N} $,然后再从数据集$ {D}_{\mathrm{t}\mathrm{r}\mathrm{a}\mathrm{i}\mathrm{n}} $中抽取支撑集$ {D}_{i}^{s} $与查询集$ {D}_{i}^{q} $$ {D}_{i}^{s} $包含来自$ {C}_{i}^{N} $中每个类别的$ K $个样本,$ {D}_{i}^{q} $包含来自$ {C}_{i}^{N} $相同$ N $类且不属于$ {D}_{i}^{s} $的样本。

semi-ARMAML的元训练过程与MAML相似,也采用双层学习过程,即任务微调过程(内循环)与元更新过程(外循环)。内循环得到任务的最优参数$ {\theta }_{i}^{\text{'}} $,外循环将内循环期间得到的模型$ {f}_{{\theta }_{i}^{'}}\left(x\right) $组合起来,形成一个更通用的元模型。

在训练时,使用一组任务$ \{{T}_{i}{\}}_{i=1}^{m} $训练模型,$ {D}_{i}^{s} $$ {D}_{i}^{q} $分别用于训练与测试$ {T}_{i} $上的性能,此外,$ {D}_{i}^{q} $也用于更新模型参数。在元测试时,创建一组新任务,每个新任务$ {T}_{\mathrm{n}\mathrm{e}\mathrm{w}} $的支撑集$ {D}_{\mathrm{n}\mathrm{e}\mathrm{w}}^{s} $和查询集$ {D}_{\mathrm{n}\mathrm{e}\mathrm{w}}^{q} $包含从$ {C}_{\mathrm{t}\mathrm{e}\mathrm{s}\mathrm{t}} $中采样的$ N $类样本,$ {D}_{\mathrm{n}\mathrm{e}\mathrm{w}}^{s} $用于微调元模型参数$ \theta $,将参数$ \theta $迁移至特定于$ {T}_{\mathrm{n}\mathrm{e}\mathrm{w}} $的参数$ {\theta }_{\mathrm{n}\mathrm{e}\mathrm{w}}^{'} $,以获得适用于$ {T}_{\mathrm{n}\mathrm{e}\mathrm{w}} $的特定模型$ {f}_{{\theta }_{\mathrm{n}\mathrm{e}\mathrm{w}}^{'}} $,然后在$ {D}_{\mathrm{n}\mathrm{e}\mathrm{w}}^{q} $上测试模型$ {f}_{{\theta }_{\mathrm{n}\mathrm{e}\mathrm{w}}^{'}} $的性能。

1.2 对抗鲁棒正则项

对抗鲁棒性本质上是要求模型对于输入的微小扰动应有一个稳定的输出,这表现为最小化扰动样本和干净样本的预测概率分布之间的差异,因此,semi-ARMAML在任务微调过程和元更新过程中同时引入对抗性鲁棒正则化方法。

本文定义对抗鲁棒正则函数$ R(\widehat{D}, \theta ) $为对抗训练数据集$ \widehat{D} $上模型$ {f}_{\theta } $的预测损失,计算如下:

$ \begin{array}{c}R(\widehat{D}, \theta )={\mathbb{E}}_{x\in D, {x}_{\mathrm{a}\mathrm{d}\mathrm{v}}\in \widehat{D}}\left[g\right(x, {x}_{\mathrm{a}\mathrm{d}\mathrm{v}};\theta \left)\right]\end{array} $ (1)
$ \begin{array}{c}g(x, {x}_{\mathrm{a}\mathrm{d}\mathrm{v}};\theta )=\left\{\begin{array}{l}D(y-{f}_{\theta }({x}_{\mathrm{a}\mathrm{d}\mathrm{v}}\left)\right), x\;\;\mathrm{i}\mathrm{s}\;\;\mathrm{ }\mathrm{l}\mathrm{a}\mathrm{b}\mathrm{e}\mathrm{l}\mathrm{e}\mathrm{d}\\ D\left({f}_{\theta }\right(x)-{f}_{\theta }({x}_{\mathrm{a}\mathrm{d}\mathrm{v}}\left)\right), x\;\;\mathrm{i}\mathrm{s}\;\;\mathrm{ }\mathrm{u}\mathrm{n}\mathrm{l}\mathrm{a}\mathrm{b}\mathrm{e}\mathrm{l}\mathrm{e}\mathrm{d}\end{array}\right.\end{array} $ (2)

其中:$ \widehat{D}=\left\{\right(x, {x}_{\mathrm{a}\mathrm{d}\mathrm{v}}\left)\right|x\in D\} $是数据集$ D $对应的对抗样本集;$ \mathbb{E} $$ g(x, {x}_{\mathrm{a}\mathrm{d}\mathrm{v}};\theta ) $的期望;$ \theta $为模型参数;$ g(x, {x}_{\mathrm{a}\mathrm{d}\mathrm{v}};\theta ) $根据样本是否带标注进行处理,对于标注样本,$ g(x, {x}_{\mathrm{a}\mathrm{d}\mathrm{v}};\theta ) $测量$ {x}_{\mathrm{a}\mathrm{d}\mathrm{v}} $的预测概率分布和真实概率分布之间的差异,即$ {f}_{\theta } $$ {x}_{\mathrm{a}\mathrm{d}\mathrm{v}} $的预测值和$ x $的真实标签$ y $之间的交叉熵,对于未标注样本,借鉴虚拟对抗训练(Virtual Adversarial Training,VAT)[24]$ g(x, {x}_{\mathrm{a}\mathrm{d}\mathrm{v}};\theta ) $测量$ {f}_{\theta } $$ {x}_{\mathrm{a}\mathrm{d}\mathrm{v}} $的预测值和$ x $的虚拟标签$ {f}_{\theta }\left(x\right) $之间的均方误差。该损失函数的目的是希望参数模型$ {f}_{\theta }\left({x}_{\mathrm{a}\mathrm{d}\mathrm{v}}\right) $逼近真实分布,使得元模型对输入足够平滑,降低模型对输入扰动的敏感性,平滑决策边界,提升模型在对抗样本上的识别率。

1.3 任务无偏熵正则项

为了防止元模型$ {f}_{\theta } $在某些训练任务中过拟合,本文采用基于信息熵实现的任务无偏正则项$ \mathrm{e}\mathrm{n}{\mathrm{t}}_{\mathrm{m}\mathrm{a}\mathrm{x}‐\mathrm{m}\mathrm{i}\mathrm{n}} $[25],计算如下:

$ \begin{array}{c}{\mathrm{ent}}_{\mathrm{m}\mathrm{a}\mathrm{x}‐\mathrm{m}\mathrm{i}\mathrm{n}}={\mathcal{H}}_{{T}_{i}}\left({f}_{{\theta }_{i}^{'}}\right)-{\mathcal{H}}_{{T}_{i}}\left({f}_{\theta }\right)\end{array} $ (3)

其中:$ {\mathcal{H}}_{{T}_{i}}\left({f}_{{\theta }_{i}^{'}}\right) $为模型在$ {\theta }_{i}^{'} $参数下样本预测值的熵;$ {\theta }_{i}^{'} $为当前任务$ {T}_{i} $上计算得到的最优参数;$ {\mathcal{H}}_{{T}_{i}}\left({f}_{\theta }\right) $为模型在$ \theta $参数下样本预测值的熵。$ \mathrm{e}\mathrm{n}{\mathrm{t}}_{\mathrm{m}\mathrm{a}\mathrm{x}‐\mathrm{m}\mathrm{i}\mathrm{n}} $期望模型$ {f}_{\theta } $以相等的概率预测新任务中的样本标签,这要求模型在特定于该任务的参数$ {\theta }_{i}^{'} $上对样本预测值的熵值尽可能小,而初始化参数$ \theta $上的预测值熵尽可能大,使得元模型对不同的新任务“一视同仁”,不偏向于训练阶段中的某个任务。

1.4 算法描述 1.4.1 任务微调过程

在任务微调期间,根据梯度及步长$ \alpha $微调每个任务$ \{{T}_{i}{\}}_{0\le i\le m} $,更新特定于该任务的最优参数$ {\theta }_{i}^{\text{'}} $

$ \begin{array}{c}{\theta }_{i}^{\text{'}}=\theta -\alpha {\nabla }_{\theta }\left[{\mathcal{L}}_{{T}_{i}}\left({f}_{\theta }, {D}_{i}^{s}\right)+{\lambda }_{\mathrm{i}\mathrm{n}}R\left({\widehat{D}}_{i}^{s}, {\theta }_{i}^{'}\right)\right]\end{array} $ (4)

其中:$ {\mathcal{L}}_{{T}_{i}}\left({f}_{\theta }, {D}_{i}^{s}\right) $定义为$ {D}_{i}^{s} $的真实类别与模型$ {f}_{\theta } $$ {D}_{i}^{s} $预测类别之间的交叉熵;$ {\lambda }_{\mathrm{i}\mathrm{n}} $是任务微调时鲁棒正则项系数;$ R\left({\widehat{D}}_{i}^{s}, {\theta }_{i}^{'}\right) $为使用式(2)计算的$ {f}_{{\theta }_{i}^{'}} $在数据集$ {\widehat{D}}_{i}^{s} $上的对抗鲁棒正则项。在训练开始时,分类器边界上干净样本与对抗样本的预测概率分布差异很大,随着训练的进行,目标函数的总损失降低,其中对抗鲁棒正则项迫使模型$ {f}_{{\theta }_{i}^{'}} $对于干净样本周围的对抗样本做出类别相同的预测,以降低两者分布之间的差异,决策边界也会受到对抗样本的影响而变得更加平滑。

1.4.2 元更新过程

在元更新期间,引入半监督学习,由于未标注样本的类别信息未知,semi-ARMAML使用模型$ {f}_{\theta } $生成$ {D}_{\mathrm{B}\mathrm{a}\mathrm{t}\mathrm{c}\mathrm{h}}^{\mathrm{u}\mathrm{l}} $的对抗样本,目的是生成不偏向任何任务的对抗样本,使得对抗样本的预测结果也不会偏向于某些类别。$ {D}_{\mathrm{B}\mathrm{a}\mathrm{t}\mathrm{c}\mathrm{h}}^{\mathrm{u}\mathrm{l}} $是从未标注样本数据集$ {D}^{\mathrm{u}\mathrm{l}} $中随机采样的一批数据,$ {D}^{\mathrm{u}\mathrm{l}} $允许包含已标注训练集中从未见过类的样本,即$ {D}^{\mathrm{u}\mathrm{l}}=\left({D}_{\mathrm{t}\mathrm{r}\mathrm{a}\mathrm{i}\mathrm{n}}-\underset{i}{\cup }\left({D}_{i}^{s}\bigcup {D}_{i}^{q}\right)\right)\bigcup {D}_{\mathrm{u}\mathrm{n}\mathrm{s}\mathrm{e}\mathrm{e}\mathrm{n}} $

semi-ARMAML根据梯度及元更新步长$ \beta $最小化损失函数$ {\mathcal{L}}_{\mathrm{a}\mathrm{l}\mathrm{l}}^{A} $并更新模型,以寻找对任务变化敏感的模型初始化参数$ \theta $

$ \begin{array}{c}\theta =\theta -\beta {\nabla }_{\theta }{\mathcal{L}}_{\mathrm{a}\mathrm{l}\mathrm{l}}^{A}\end{array} $ (5)
$ \begin{array}{l}{\mathcal{L}}_{\mathrm{a}\mathrm{l}\mathrm{l}}^{A}=\sum\limits _{{T}_{i}~p\left(T\right)}\left[{\mathcal{L}}_{{T}_{i}}\left({f}_{{\theta }_{i}^{'}}, {D}_{i}^{q}\right)+{\lambda }_{\mathrm{o}\mathrm{u}\mathrm{t}1}R\left({\widehat{D}}_{i}^{q}, {\theta }_{i}^{'}\right)+\right.\\ \;\;\;\;\;\;\;\;\;\; \left.{\lambda }_{e}\mathrm{e}\mathrm{n}{\mathrm{t}}_{\mathrm{m}\mathrm{a}\mathrm{x}‐\mathrm{m}\mathrm{i}\mathrm{n}}\right]+{\lambda }_{\mathrm{o}\mathrm{u}\mathrm{t}2}R\left({\widehat{D}}_{\mathrm{B}\mathrm{a}\mathrm{t}\mathrm{c}\mathrm{h}}^{\mathrm{u}\mathrm{l}}, \theta \right)\end{array} $ (6)

其中:$ {\mathcal{L}}_{{T}_{i}}\left({f}_{{\theta }_{i}^{'}}, {D}_{i}^{q}\right) $定义为$ {f}_{{\theta }_{i}^{'}} $对于$ {D}_{i}^{q} $的真实类别与$ {D}_{i}^{q} $预测类别之间的交叉熵损失;$ R\left({\widehat{D}}_{i}^{q}, {\theta }_{i}^{'}\right) $$ {f}_{{\theta }_{i}^{'}} $$ {\widehat{D}}_{i}^{s} $上的对抗鲁棒正则项;$ R\left({\widehat{D}}_{\mathrm{B}\mathrm{a}\mathrm{t}\mathrm{c}\mathrm{h}}^{\mathrm{u}\mathrm{l}}, \theta \right) $$ {f}_{\theta } $$ {\widehat{D}}_{\mathrm{B}\mathrm{a}\mathrm{t}\mathrm{c}\mathrm{h}}^{\mathrm{u}\mathrm{l}} $上的对抗鲁棒正则项;$ {\lambda }_{\mathrm{o}\mathrm{u}\mathrm{t}1}\mathrm{、}{\lambda }_{\mathrm{o}\mathrm{u}\mathrm{t}2}\mathrm{、}{\lambda }_{e} $为不同的正则项系数。

由于$ {D}_{\mathrm{B}\mathrm{a}\mathrm{t}\mathrm{c}\mathrm{h}}^{\mathrm{u}\mathrm{l}} $$ {T}_{i} $中已标注样本类别不一致,因此本文使用“通用”的初始化参数$ \theta $进行预测,而不使用依赖特定于当前任务$ {T}_{i} $的最优参数$ {\theta }_{i}^{'} $$ R\left({\widehat{D}}_{i}^{q}, {\theta }_{i}^{'}\right) $$ R\left({\widehat{D}}_{\mathrm{B}\mathrm{a}\mathrm{t}\mathrm{c}\mathrm{h}}^{\mathrm{u}\mathrm{l}}, \theta \right) $的作用与内循环中对抗鲁棒正则项类似,不仅将样本映射到其目标分类,而且使元模型在对抗样本集上具有相似的表现。

semi-ARMAML期望模型$ {f}_{\theta } $以相等的概率预测新任务中的样本标签,采用式(3)计算$ {D}_{i}^{q} $上的$ \mathrm{e}\mathrm{n}{\mathrm{t}}_{\mathrm{m}\mathrm{a}\mathrm{x}‐\mathrm{m}\mathrm{i}\mathrm{n}} $,以缓解模型在训练数据上的过拟合问题,找到更通用的初始化参数。semi-ARMAML的伪代码如算法1所示。

算法1    semi-ARMAML算法

输入  任务分布$ p\left(T\right) $,步长参数$ \alpha $$ \beta $,训练数据集$ {D}_{\mathrm{t}\mathrm{r}\mathrm{a}\mathrm{i}\mathrm{n}} $,超参数$ {\lambda }_{\mathrm{i}\mathrm{n}} $$ {\lambda }_{\mathrm{o}\mathrm{u}\mathrm{t}1} $$ {\lambda }_{\mathrm{o}\mathrm{u}\mathrm{t}2} $$ {\lambda }_{e} $,未见过类数据集$ {D}_{\mathrm{u}\mathrm{n}\mathrm{s}\mathrm{e}\mathrm{e}\mathrm{n}} $,未标注样本数据集$ {D}^{\mathrm{u}\mathrm{l}} $,运行纪元数$ \mathrm{e}\mathrm{p}\mathrm{o}\mathrm{c}\mathrm{h} $,最大迭代次数$ S $

输出  模型初始化参数$ \theta $

1.随机初始化模型参数θ;

2.FOR $ \mathrm{e}=\mathrm{0, 1}, \cdots , \mathrm{e}\mathrm{p}\mathrm{o}\mathrm{c}\mathrm{h}-1 $ DO

3. 从$ \mathrm{p}\left(\mathrm{T}\right) $中采样一批任务$ {\left\{{\mathrm{T}}_{\mathrm{i}}|{\mathrm{T}}_{\mathrm{i}}=\left({\mathrm{D}}_{\mathrm{i}}^{\mathrm{s}}, {\mathrm{D}}_{\mathrm{i}}^{\mathrm{q}}\right)\right\}}_{\mathrm{i}=1}^{\mathrm{m}} $

4. 从$ {\mathrm{D}}^{\mathrm{u}\mathrm{l}} $中随机采样M个样本作为$ {\mathrm{D}}_{\mathrm{B}\mathrm{a}\mathrm{t}\mathrm{c}\mathrm{h}}^{\mathrm{u}\mathrm{l}} $

5. FOR $ \mathrm{i}=\mathrm{0, 1}, \cdots , \mathrm{m}-1 $ DO

6. FOR $ \mathrm{k}=\mathrm{0, 1}, \cdots , \mathrm{S}-1 $ DO

7. 使用fθ'i生成对抗样本集$ {\widehat{\mathrm{D}}}_{\mathrm{i}}^{\mathrm{s}} $

8. 通过式(4)计算θ'i

9. END FOR

10. 使用fθ'i生成对抗样本集$ {\widehat{\mathrm{D}}}_{\mathrm{i}}^{\mathrm{q}} $

11. END FOR

12. 使用fθ生成对抗样本集$ {\widehat{\mathrm{D}}}_{\mathrm{B}\mathrm{a}\mathrm{t}\mathrm{c}\mathrm{h}}^{\mathrm{u}\mathrm{l}} $

13. 通过式(5)更新θ;

14.END FOR

15.返回模型参数θ。

2 实验结果与分析 2.1 实验设置

实验选用MiniImageNet和CIFAR-FS数据集测试算法性能,MiniImageNet是ImageNet的一个精缩版本,2个图像数据集的概况如表 1所示。

下载CSV 表 1 数据集信息 Table 1 Datasets information

本文分别为2个数据集从100个类中预留16个类数据作为未见过类数据。在MiniImageNet数据集实验中,从ImageNet数据集中为每个训练类挑选600个未标注数据,并将图片调整为84×84×3大小;在CIFAR-FS数据集实验中,从STL-10数据集中为每个训练类挑选600个未标注数据,将图片调整为32×32×3大小。在任务微调过程中,设置梯度更新次数$ S=5 $$ \alpha =0.02 $;在元更新过程中,查询集中设置每类15个样本,梯度步长设置为$ \beta =0.001 $。在元训练过程中使用FGSM生成对抗样本集,元测试过程中使用10步PGD生成对抗样本集。

如不特别说明,$ {\lambda }_{e} $取值为1,semi-ARMAML实验均在半监督场景B下进行,训练运行纪元数$ \mathrm{e}\mathrm{p}\mathrm{o}\mathrm{c}\mathrm{h}=60\mathrm{ }000 $。在MiniImageNet数据集实验中,训练时$ ϵ=2 $,元测试时$ ϵ=2 $$ {\lambda }_{\mathrm{o}\mathrm{u}\mathrm{t}1}=8, {\lambda }_{\mathrm{o}\mathrm{u}\mathrm{t}2}=8 $$ {\lambda }_{\mathrm{i}\mathrm{n}}=1 $;在CIFAR-FS数据集实验中,训练时$ ϵ=2 $,元测试时$ ϵ=8 $$ {\lambda }_{\mathrm{o}\mathrm{u}\mathrm{t}1}=10, {\lambda }_{\mathrm{o}\mathrm{u}\mathrm{t}2}=10 $$ {\lambda }_{\mathrm{i}\mathrm{n}}=1 $

2.2 评价指标

本文测试semi-ARMAML的以下特性:

1)可以同时有效识别对抗样本和干净样本。

2)在半监督场景下,能够进一步提升模型的对抗鲁棒性,而在未标注样本中混入未见过类数据时,分类性能不会受到较大影响。

为评价模型性能,分别测试标准正确率(Standard Accuracy,SA)和鲁棒正确率(Robustness Accuracy,RA)。SA表示在干净样本数据集上的模型性能,RA表示在对抗样本数据集上的模型对抗鲁棒性能。

2.3 对抗鲁棒正则项对算法性能的影响

首先分析鲁棒正则项对算法性能是否产生正面影响。在表 2中:out表示仅在元更新时加入正则项,训练任务的微调过程与新任务适应过程都不加入正则项,即$ {\lambda }_{\mathrm{i}\mathrm{n}}=0 $;in+out表示在新任务适应与训练任务的微调过程都加入正则项,即$ {\lambda }_{\mathrm{i}\mathrm{n}}=1 $$ {\lambda }_{\mathrm{o}\mathrm{u}\mathrm{t}1}\mathrm{、}{\lambda }_{\mathrm{o}\mathrm{u}\mathrm{t}2} $均设置为1,最优结果加粗标注。

下载CSV 表 2 对抗鲁棒正则项对算法性能的影响 Table 2 Influence of adversarial robust regularization term on algorithm performance 

表 2可以看出,尽管在微调阶段加入正则项会增加一定的计算代价,但是除了5-way 1-shot的RA性能没有提高外,其余实验的SA与RA均有一定程度的提高,因为在任务适应阶段加入对抗正则项有助于找到更为鲁棒的模型参数$ {\theta }_{i}^{'} $,使得元模型更新时也能兼顾对抗鲁棒性。在后续实验中,均采用in+out方式。

2.4 算法性能比较

为了进行算法性能比较,将MAML、ADML和R-MAML-TRADES作为对比算法。MAML、ADML只能采用已标注样本进行有监督训练,为了便于比较,semi-ARMAML中设置$ {\lambda }_{\mathrm{o}\mathrm{u}\mathrm{t}2} $为0(记为semi-ARMAML(supervised)),从而支持有监督方法。R-MAML-TRADES仅支持半监督场景A,为保证公平,semi-ARMAML与R-MAML-TRADES实验数据设置相同,未标注样本数为38 400,均为见过的类。所有算法的标注样本集设置相同。

不同元学习算法的实验结果如表 3表 4所示,实验超参数设置如表 5所示。表 3表 4显示MAML在2个数据集上几乎没有对抗鲁棒性,但是在干净样本下正确率最高,其他算法的SA均有所下降,对抗鲁棒性相比MAML有明显提升。对比对抗元学习的几种算法,semi-ARMAML在RA上的性能均为最高,而SA由于对抗训练而不可避免地有所降低。在所有的有监督方法中,semi-ARMAML(supervised)的RA均优于其他有监督算法,这主要是由于引入了任务无偏的熵正则项,使得新任务与训练任务之间的关联度降低,提高了模型对新任务的泛化性。在半监督场景下,由于未标注样本的引入,尤其在CIFAR-FS数据集上,本文算法有效提高了模型的对抗鲁棒性能。尽管R-MAML-TRADES的SA相比其他对抗元学习算法有一定优势,但是RA并不占优。semi-ARMAML支持未标注样本与当前任务标注样本不一致的情况,适应性更广,其RA均优于其他算法,这说明对未标注样本信息的利用可增强模型的对抗鲁棒性。

下载CSV 表 3 MiniImageNet数据集上SA/RA性能对比分析 Table 3 Comparative analysis of SA/RA performance on MiniImageNet dataset 
下载CSV 表 4 CIFAR-FS数据集上SA/RA性能对比分析 Table 4 Comparative analysis of SA/RA performance on CIFAR-FS dataset 
下载CSV 表 5 不同数据集下semi-ARMAML的超参数设置 Table 5 Hyper parameter setting of semi-ARMAML under different datasets

综上,使用semi-ARMAML训练得到的初始化参数$ \theta $一方面对各任务的变化敏感,另一方面对任务中的样本扰动噪声有更高的容忍度,使得元模型的对抗鲁棒性大幅提高。

2.5 正则项系数对算法性能的影响

表 6所示为系数$ {\lambda }_{\mathrm{o}\mathrm{u}\mathrm{t}1} $$ {\lambda }_{e} $在CIFAR-FS数据集上对semi-ARMAML算法性能的影响。为了分析任务无偏正则项$ \mathrm{e}\mathrm{n}{\mathrm{t}}_{\mathrm{m}\mathrm{a}\mathrm{x}‐\mathrm{m}\mathrm{i}\mathrm{n}} $对模型性能的影响,本文设置$ {\lambda }_{\mathrm{o}\mathrm{u}\mathrm{t}1}=20 $$ {\lambda }_{e}=0 $$ {\lambda }_{\mathrm{o}\mathrm{u}\mathrm{t}1}=20 $$ {\lambda }_{e}=1 $两组对比实验,两组实验中的其他参数设置相同。结果表明,尽管$ \mathrm{e}\mathrm{n}{\mathrm{t}}_{\mathrm{m}\mathrm{a}\mathrm{x}‐\mathrm{m}\mathrm{i}\mathrm{n}} $正则项的引入使模型损失一定的SA,但会明显提升RA性能,这是因为$ \mathrm{e}\mathrm{n}{\mathrm{t}}_{\mathrm{m}\mathrm{a}\mathrm{x}‐\mathrm{m}\mathrm{i}\mathrm{n}} $降低了元模型与训练任务之间的相关性,缓解了过拟合问题,能在新任务中更好地适应对抗样本。表 6结果还显示,当引入$ R\left({\widehat{D}}_{i}^{q}, {\theta }_{i}^{'}\right) $正则项时($ {\lambda }_{\mathrm{o}\mathrm{u}\mathrm{t}1} > 0 $),算法的SA与RA性能明显优于$ {\lambda }_{\mathrm{o}\mathrm{u}\mathrm{t}1}=0 $时的算法性能,且随着$ {\lambda }_{\mathrm{o}\mathrm{u}\mathrm{t}1} $逐渐增大,RA性能提高,SA性能略微降低,这表明对抗鲁棒正则项系数$ {\lambda }_{\mathrm{o}\mathrm{u}\mathrm{t}1} $对模型的对抗鲁棒性能起主导作用,通过调整目标损失函数中的$ {\lambda }_{\mathrm{o}\mathrm{u}\mathrm{t}1} $系数,可使模型同时兼顾干净样本准确度和对抗鲁棒性。

下载CSV 表 6 正则项系数对算法性能的影响分析 Table 6 Analysis of the influence of regularization coefficients on algorithm performance
2.6 未见过类的未标注样本对算法性能的影响

在2.4节的实验中,为保证公平,实验数据集均使用见过类的未标注数据集,本节进一步研究未见过类对算法性能的影响。

表 7展示了未见过类样本数量对模型性能的影响。未标注样本$ {D}^{\mathrm{u}\mathrm{l}} $中已见过类样本数与上文中设置相同,为32 000,其余为额外追加的与训练集类别不相交的9 600个未见过类样本。从表 7可以看出,当引入干扰项,即$ {D}_{\mathrm{u}\mathrm{n}\mathrm{s}\mathrm{e}\mathrm{e}\mathrm{n}}\ne \mathrm{\varnothing } $时,semi-ARMAML的RA性能有所损失,但是,RA即使在最坏情况下相比表 3表 4中其他算法的RA也仍然具有优势,而且由于训练样本增加,semi-ARMAML的SA在大部分情况下会比未增加未见过类样本时有所提升。

下载CSV 表 7 未见过类样本数量对算法性能的影响分析 Table 7 Analysis of the influence of number of unseen class samples on algorithm performance
2.7 算法时间代价对比

表 8基于CIFAR-FS数据集对比不同算法的时间代价,ADML、R-MAML-TRADES和本文semi-ARMAML这3种算法是双层优化过程,且为保证公平,使用相同的对抗样本生成算法。

下载CSV 表 8 CIFAR-FS数据集上的时间代价 Table 8 Time cost on CIFAR-FS dataset

表 8中:Time表示500轮的训练时间,ADML使用干净样本与对抗样本交替训练网络,训练时间代价最高,R-MAML-TRADES和semi-ARMAML算法整体时间代价相差不大,本文算法略优;Fin steps表示在元测试时使模型$ {f}_{{\theta }_{\mathrm{n}\mathrm{e}\mathrm{w}}^{'}} $达到稳定性能所需的微调步数,由于semi-ARMAML在新任务的任务微调过程中也加入了对抗鲁棒正则项,使其能够更好地微调模型参数,更快地适应新任务,因此仅需2步梯度下降就能达到稳定性能。

3 结束语

本文针对半监督对抗元学习问题,提出一种对抗鲁棒模型无关元学习方法。该方法在元训练过程中同时使用标注样本与未标注样本进行训练,即使不知道未标注样本的类别信息,也能在大量相似任务中训练元模型,使其能够快速适应新任务。同时,在损失函数中加入对抗鲁棒正则项与任务无偏熵正则项,提升模型的对抗鲁棒性,缓解元模型在训练任务时的过拟合问题。在2个基准数据集上的实验结果表明,相较其他对抗元学习方法,该方法在干净样本上的正确率仅有微小降低,但获得了更高的对抗鲁棒性能,且对含未标注样本的真实场景适应性更好。下一步将在学习过程中探究如何利用未标注样本中占比更大的未见过类样本,进一步提高模型的泛化性与对抗鲁棒性。

参考文献
[1]
代磊超, 冯林, 杨玉亭, 等. 一种鲁棒性的少样本学习方法[J]. 小型微型计算机系统, 2021, 42(2): 340-347.
DAI L C, FENG L, YANG Y T, et al. Robust few-shot learning method[J]. Journal of Chinese Computer Systems, 2021, 42(2): 340-347. (in Chinese) DOI:10.3969/j.issn.1000-1220.2021.02.020
[2]
RAVI S, LAROCHELLE H. Optimization as a model for few-shot learning[EB/OL]. [2021-10-05]. https://openreview.net/pdf?id=rJY0-Kcll.
[3]
KINGMA D, BA J. Adam: a method for stochastic optimization[EB/OL]. [2021-10-05]. https://arxiv.org/pdf/1412.6980.pdf.
[4]
DUCHI J, HAZAN E, SINGER Y. Adaptive subgradient methods for online learning and stochastic optimization[EB/OL]. [2021-10-05]. https://www.jmlr.org/papers/volume12/duchi11a/duchi11a.pdf.
[5]
赵凯琳, 靳小龙, 王元卓. 小样本学习研究综述[J]. 软件学报, 2021, 32(2): 349-369.
ZHAO K L, JIN X L, WANG Y Z. Survey on few-shot learning[J]. Journal of Software, 2021, 32(2): 349-369. (in Chinese)
[6]
HOWARD J, RUDER S. Universal language model fine-tuning for text classification[C]//Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics. Stroudsburg, USA: Association for Computational Linguistics, 2018: 328-339.
[7]
GAO R, HOU X S, QIN J, et al. Zero-VAE-GAN: generating unseen features for generalized and transductive zero-shot learning[J]. IEEE Transactions on Image Processing, 2020, 29: 3665-3680. DOI:10.1109/TIP.2020.2964429
[8]
LIU L L, ZHANG H J, XU X F, et al. Collocating clothes with generative adversarial networks cosupervised by categories and attributes: a multidiscriminator framework[J]. IEEE Transactions on Neural Networks and Learning Systems, 2020, 31(9): 3540-3554. DOI:10.1109/TNNLS.2019.2944979
[9]
WEI Y Y, ZHANG Z, WANG Y, et al. DerainCycleGAN: rain attentive CycleGAN for single image deraining and rainmaking[J]. IEEE Transactions on Image Processing, 2021, 30: 4788-4801. DOI:10.1109/TIP.2021.3074804
[10]
WANG Y X, HEBERT M. Learning to learn: model regression networks for easy small sample learning[C]// Proceedings of European Conference on Computer Vision. Berlin, Germany: Springer, 2016: 616-634.
[11]
汪荣贵, 汤明空, 杨娟, 等. 语义匹配网络的小样本学习[J]. 计算机工程, 2021, 47(5): 244-250, 259.
WANG R G, TANG M K, YANG J, et al. Semantic matching network for few-shot learning[J]. Computer Engineering, 2021, 47(5): 244-250, 259. (in Chinese)
[12]
GIDARIS S, KOMODAKIS N. Generating classification weights with GNN denoising autoencoders for few-shot learning[C]//Proceedings of IEEE/CVF Conference on Computer Vision and Pattern Recognition. Washington D. C., USA: IEEE Press, 2019: 21-30.
[13]
THRUN S, PRATT L. Learning to learn: introduction and overview[M]. Berlin, Germany: Springer, 1998.
[14]
FINN C, ABBEEL P, LEVINE S. Model-agnostic meta-learning for fast adaptation of deep networks[C]//Proceedings of International Conference on Machine Learning. Washington D. C., USA: IEEE Press, 2017: 1126-1135.
[15]
GOLDBLUM M, FOWL L, GOLDSTEIN T. Adversarially robust few-shot learning: a meta-learning approach[J]. Advances in Neural Information Processing Systems, 2020, 33: 12-36.
[16]
SHIN H, KIM D, KWON Y, et al. Illusion and dazzle: adversarial optical channel exploits against lidars for automotive applications[C]//Proceedings of International Conference on Cryptographic Hardware and Embedded Systems. Berlin, Germany: Springer, 2017: 445-467.
[17]
SHAN S, WENGER E, ZHANG J, et al. Fawkes: protecting privacy against unauthorized deep learning models[EB/OL]. [2021-10-05]. https://arxiv.org/pdf/2002.08327.pdf.
[18]
YIN C, TANG J, XU Z, et al. Adversarial meta-learning[EB/OL]. [2021-10-05]. https://arxiv.org/pdf/1806.03316.pdf.
[19]
GOODFELLOW I J, SHLENS J, SZEGEDY C. Explaining and harnessing adversarial examples[EB/OL]. [2021-10-05]. https://arxiv.org/pdf/1412.6572.pdf.
[20]
MADRY A, MAKELOV A, SCHMIDT L, et al. Towards deep learning models resistant to adversarial attacks[EB/OL]. [2021-10-05]. https://arxiv.org/abs/1706.06083.
[21]
WANG R, XU K, LIU S, et al. On fast adversarial robustness adaptation in model-agnostic meta-learning[EB/OL]. [2021-10-05]. https://arxiv.org/pdf/2102.10454v1.pdf.
[22]
REN M, TRIANTAFILLOU E, RAVI S, et al. Meta-learning for semi-supervised few-shot classification[EB/OL]. [2021-10-05]. https://arxiv.org/pdf/1803.00676.pdf.
[23]
HUANG S X, ZENG X P, WU S, et al. Behavior regularized prototypical networks for semi-supervised few-shot image classification[J]. Pattern Recognition, 2021, 112: 107765. DOI:10.1016/j.patcog.2020.107765
[24]
MIYATO T, MAEDA S I, KOYAMA M, et al. Virtual adversarial training: a regularization method for supervised and semi-supervised learning[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2019, 41(8): 1979-1993. DOI:10.1109/TPAMI.2018.2858821
[25]
JAMAL M A, QI G J. Task agnostic meta-learning for few-shot learning[C]//Proceedings of IEEE/CVF Conference on Computer Vision and Pattern Recognition. Washington D. C., USA: IEEE Press, 2019: 11719-11727.