APP下载

基于稀疏字典表示的无监督域适应学习算法

2023-08-10王赛男郑雄风

计算机应用与软件 2023年7期
关键词:源域字典分类器

王赛男 郑雄风

1(江苏联合职业技术学院南京工程分院 江苏 南京 211135) 2(南京邮电大学计算机学院 江苏 南京 210023)

0 引 言

迁移学习同人类的学习思想一样,利用以往学习过的相关经验,迁移到目标领域或任务的学习当中。迁移学习的主要学习形式是利用相关的源域知识辅助目标域学习,以解决目标域数据或数据标签稀缺的问题。人类对于迁移学习的能力则是与生俱来的,一些成语如“举一反三”“照猫画虎”和“依葫芦画瓢”等也俱能反映出人类的迁移学习能力很强。但是,这种迁移能力往往体现在两种相同的事物中,如学会自行车的骑行可以较好地帮助学习骑电动自行车,自行车和电动自行车在大体结构上是相同的。学会象棋的人也能较为容易地学会国际象棋,因为两种棋类有很多的共通知识。因此,迁移学习的主要方法就是寻找源领域和目标领域中有相同或相近知识的部分,完成知识的迁移。

对于不同的迁移学习场景,有不同的迁移学习方法[1],大致可分为四种基于特征[2-4]的迁移学习、基于样本[5-6]的迁移学习、基于参数[7-9]的迁移学习、基于关系[10-11]的迁移学习。Pan等[5]提出迁移成分分析方法(Transfer Component Analysis,TCA),利用MMD来计算源域和目标域的边缘分布差异,然后在再生核Hilbert空间中学习其潜在特征,在保持源域数据结构的同时,找出两个域之间具有相同分布的潜在特征。最终利用其他传统的机器学习方法训练目标分类模型。

Pan等[5]提出了核均值匹配(Kernel Mean Matching,KMM)的方法,在再生核希尔伯特空间(Reproducing Kernel Hilbert Space,RKHS)中对源域和目标域中的样本的概率分布进行估计,通过对样本进行均值差异匹配,获得源域样本的权值,使得加权后源域样本的概率分布与目标域样本尽可能接近。Yang等[7]提出一种自适应支持向量机(Adaptive Support Vector Machine,A-SVM)方法用于目标域分类器的训练,ASVM假设源域分类器和目标域分类器之间存在一个偏差,随后将这个偏差加入到源域分类器上,从而得到一个新的分类器,并应用在目标域的分类任务上。Mihalkova等[10]基于马尔可夫逻辑网络提出一种对相关联知识的自主映射和修正迁移学习方法。

为了找到与目标域相关的源域知识,部分研究方法通过创建中间表示信息来拉近源域和目标域的样本分布,但这些表示信息不能完全地重构出源数据和目标数据的概率分布,此类方法常用于解决源域和目标域之间分布差异较大的场景,如异构迁移学习,因此无法取得最佳分类性能。基于样本选择或样本加权的域适应方法通过找到与目标域数据最相关的源域样本,使得改变后的源域样本分布和目标域样本分布匹配。但是,这类方法不能解决以下场景:图像特征本身可能已因域偏差而失真,并且某些图像特征可能特定于某一个域,因此与另一域的分类无关。

针对上述问题,提出一种基于稀疏字典表示的无监督学习框架。算法共分为两个阶段,第一阶段通过字典学习分别对源域样本和目标域样本进行重构,在真实还原源域和目标域样本的同时,约束源域和目标域的样本在稀疏表示空间上尽可能接近;第二阶段通过对源域的样本表示空间进行学习得到分类器参数,再对目标域进行分类。SRDA利用字典学习拉近了两个域样本的稀疏表示,使得源域和目标域在稀疏表示空间可以共享同一个分类器,完成知识迁移。SRDA完全忽略目标域的标签信息,因此也是一种无监督的域适应学习框架。

1 相关工作

1.1 字典学习

字典学习方法广泛应用于解决各种计算机视觉和图像分析的问题,如图像去噪、图像分类和图像恢复等。稀疏表示与字典学习通常是一个相互交替的过程,首先是为输入的样本找到一个合适的稀疏表示,然后再通过样本的稀疏表示来优化字典。字典学习旨在为输入数据找到合适的字典,将其转化为稀疏表达形式,从而可以挖掘数据的有用特征,在简化学习任务的同时,降低模型的复杂度。对于一个原始的训练样本集合X={x1,x2,…,xm}∈Rd×m,其中:m代表样本的数量;xi∈Rd代表第i个d维样本。字典学习损失函数可概括为如下公式:

(1)

式中:D=(d1,d2,…,dk)是含有k个原子的字典矩阵;A是X的稀疏表示;第一项使得稀疏矩阵A能够通过字典D更好地重构样本矩阵X;第二项则是让稀疏矩阵A更好地保持稀疏性;λ表示正则参数。因此,通过对字典中的原子进行简单的线性组合来表示原先的样本,可以使得重构后的样本的分类性能有效提升。

1.2 基于标签一致性的K-SVD算法

在机器学习中,对于通用的分类器参数W∈Rm×K,损失函数定义如下:

(2)

式中:m是类别数量;L是分类损失函数,如平方损失或者铰链损失等。

在学习分类器参数时,如果将字典学习的过程和分类器的学习过程分开,那么学习得到的分类器的分类性能有可能达不到最好的效果,所以一部分研究专注于将字典与分类参数联合在一起,在完成分类任务的同时对字典进行优化,其公式定义如下:

s.t.∀i,‖xi‖0≤T

(3)

在实际实验中,这些方法往往要求学习一个相对较大的词典才能实现良好的分类性能,但是这样将会导致较高的计算成本。在某些只能使用基于多个成对的分类器或“一对一”分类器的分类架构才能获得良好分类结果的场景时,这种问题带来的影响会更加严重。

为了解决以上问题,Jiang等[12]提出一种基于标签一致性的K-SVD(Label Consistent K-SVD,LC-KSVD)算法,将字典学习方法用于图像识别当中,LC-KSVD认为样本的稀疏编码也可以看作是一种可以分类的特征。损失函数如式(4)所示。

式中:字典D是在稀疏编码阶段隐式求解。同样,可以通过梯度下降法对字典D求解。本文的实验表明,单独使用字典和一个多分类分类器能有效提升样本的分类性能。

2 本文算法

首先,与其他无监督域适应算法不同,SRDA算法通过对源域样本的特征进行重构,然后学习在样本重构的稀疏表示空间上的分类参数,在源域和目标域的公共样本重构空间上对目标域的分类。SRDA在源域和目标域的重构后的稀疏表示空间上添加约束,使得在源域样本的稀疏表示空间上学习得到的分类器可以在目标域样本的稀疏表示空间上取得较好的性能。图1给出了SRDA的模型框架。

图1 基于稀疏字典表示的无监督域适应学习模型框架

2.1 基于源域样本的字典学习

SRDA算法与LC-KSVD算法一样,都希望可以从源域样本的稀疏表示空间中学习得到合适的分类器参数,而LC-KSVD仅仅是基于一个监督学习的字典学习方法,SRDA则将其扩展到了无监督域适应学习中。基于源域样本的学习框架可概括为如下公式:

(5)

式中:Xs={x1,x2,…,xns},表示源域的样本空间;Vs是源域样本的稀疏编码。Ds={d1,d2,…,dk} 为从源域中学习到的字典;Ys=[y1,y2,…,yns]∈Rm×ns为源域样本Xs对应的类标签,yi=[0,…,1,…,0];W是从源域的稀疏表示空间中学习到的分类器参数。式(5)中:第一项为控制分类器模型复杂度,防止模型出现过拟合现象;第二项为源域样本在稀疏空间中的分类损失;第三项为字典学习项,学习源域样本的字典与稀疏表示;第四项控制源域样本在稀疏空间中尽可能稀疏。α、β和λs为正则化参数。

2.2 联合目标域样本的字典学习

为了更好地利用源域的知识,使得从源域中学习得到的分类器能够适用于目标域分类器,首先对于目标域进行字典学习和稀疏表示。

(6)

式中:Xt={x1,x2,…,xnt},表示目标域样本空间;Dt为从目标域样本的特征中学习到的字典;Vt是目标域样本的稀疏表示。基于目标域的字典学习同普通的字典学习一致,可通过交替优化方法优化字典项Dt和系数项Vt。

联合式(5)和式(6),结合源域的字典学习与目标域的字典学习,有如下公式:

λs‖Vs‖2,1+λt‖Vt‖2,1

(7)

此外,在字典学习的框架内,希望可以通过一个约束项使源域和目标域之间的分布差异减小,从而使得在源域中学习到的分类器参数可以应用于目标域分类任务。文献[13]中提出,通过拉近稀疏表示空间Vs与Vt的距离,等同于在一个潜在的公共稀疏表示空间中,源域样本和目标域样本的分布基本一致。尽管此时的源域和目标域样本分布相近,但是仍然存在少许差异。因此,在式(7)中加入一个源域与目标域之间的约束项,最终基于稀疏字典表示的无监督域适应学习算法可表示为:

(8)

与文献[12]类似,通过最小化‖Vs-Vt‖F来刻画源域样本与目标域样本在公共稀疏表示空间的距离。α、β、γ、λs、λt为正则化参数。

2.3 模型求解

式(8)的优化是一个双凸问题,根据文献[14]中的理论,可以将其分解为两个凸优化问题,随后通过交替迭代方法进行求解。实验中,每个参数都进行随机初始化。接下来将展示每个参数的求解方法。

(1) 固定Vs,更新W。式(8)可简化为:

(9)

式中:J表示式(8)。

令W偏导为0,可得:

(10)

(2) 固定Vs、Vt,更新Ds、Dt。式(8)可简化为:

(11)

(12)

分别令Ds、Dt偏导为0,可得:

(13)

(14)

(3) 固定Ds、Dt,更新Vs、Vt。

分别令Vs、Vt偏导为0,可得:

2λ1MsVs+γ(Vs-Vt)=0

(17)

γ(Vs-Vt)=0

(18)

最终,算法中关于W、Ds、Dt、Vs、Vt的闭式解如下:

(19)

具体算法流程如算法1所示。

算法1SRDA算法

输入:源域和目标域数据集Xs、Xt,正则化参数α、β、γ、λ1、λ2,字典大小r迭代停止阈值ε。

输出:源域和目标域共享分类器参数W。

1. 初始化W,Ds,Dt,Vs,Vt;

2.初始化迭代次数k=1,目标函数初始值为J0=INF;

3. Repeat:

4. 根据式(19)更新W;

5.根据式(19)更新Ds;

6.根据式(19)更新Dt;

7.更新Vs,Vt;

9. Repeat:

13. Until收敛:

14. 更新目标函数Jk;

15. 若|Jk-Jk-1|<ε;

16. Break;

17. 结束,输出W。

3 实验与结果分析

为了评估SRDA的性能,将SRDA与目前一些常见的经典的分类方法进行比较,其中包括SVM、GFK、TCA,以及一些其他新颖的算法,如ARTL。每个算法都在多个数据集上进行了多次实验。

3.1 数据集

如图2所示,在实验中,采用USPS、MNIST、MSRC、VOC2007、Office和Caltech256等数据集,这些数据集均是用于评估计算机视觉与模式识别等领域的算法的常用数据集。

(a) USPS(b) MNIST (c) MSRC(d) VOC2007

(1) USPS数据集中共有7 291幅训练样本图像和2 007幅测试样本图像,大小是16×16。

(2) MNIST数据集中共有60 000个训练样本图像和10 000个测试样本图像,大小都是28×28。

从图2中可以看出,USPS和MNIST的数据分布是不一样的,但是它们共享10个类别的数字图像,因MNIST数据集图片数量过大,所以每次实验都随机抽取一些样本,在USPS to MNIST实验中,从USPS数据集中随机选取1 200个样本作为源域数据,从MNIST数据集中随机选取1 500个样本作为目标域数据,MNIS to SPS也做同样操作。同时实验中将所有样本图像统一缩放为16×16大小,并通过对灰度像素值重新编码得到表示每个图像特征向量。如此,源数据和目标数据就可以共享相同的特征空间。

(3) MSRC数据集由Microsoft Research Cambridge提供,其中包含18个类别共4 323幅标记的图像。

(4) VOC2007数据集共包含20个类别共5 011幅图像。

图2(c)和图(d)的分布明显不同,因为MSRC都是基于评估而采集的标准数据图像,而VOC2007的图片采集较为随意。MSRC与VOC2007共享6个类别:“飞机”“自行车”“鸟”“汽车”“牛”和“羊”。同样,在MSRC to VOC2007的实验中,分别从MSRC中选取1 269幅图像作为源域数据、VOC2007中选取1 530幅图像作为目标域数据构成数据集,在VOC2007 to MSRC的实验中交换数据构成数据集即可。为方便实验进行,所有图像均被缩放至256个像素,提取其128维的SIFT特征。

(5) Office数据集中共有4 652幅图片数据,包含了31个类别,也是计算机视觉领域较为流行的基准评估数据集。

(6) Caltech-256一般用于目标识别实验,由30 607幅数据图像和256个类别组成。

本文的实验采用一个较小的Office to Caltech数据集,该数据集共享10个类别,所有的图片都进行特征提取并量化为带有码本计算的800-bin直方图。实验一共包含四个数据域:C(Caltech-256)、A(Amazon)、W(Webcam)和D(DSLR),每次实验随机选择两个不同的域作为源域和目标域,一共可以构建出12个跨域对象识别数据集:C to W,C to A,C to D,…,D to W。

3.2 实验设置

本实验为基于稀疏字典表示的无监督域适应学习,即在源域中所有的数据都是有标签数据,而目标域所有数据都没有标签。实验中共涉及到5个超参数:α、β、γ、λs、λt,以及字典大小r。对于参数优化,实验中采取网格搜索方式,具体如表1所示。

表1 各超参数搜索范围表

3.3 性能评价指标

本实验采用测试数据(目标域无标签样本)的分类准确率作为算法评价指标,这种评价标准在很多算法中都有使用。

(20)

式中:yT(x)表示测试样本(目标域无标签样本)x的真实标签;fT(x)是最终应用在目标域样本x的预测函数;fT(x)的值则是对样本x预测标签;|x:x∈DTu∧fT(x)=yT(x)|表示预测正确的样本数量;|x:x∈DTu|代表总的测试样本数量。

为保证实验结果的稳定性及有效性,对于本文算法以及其他对比实验方法,在实验中将每种组合的数据集实验运行10次,取平均值作为最终的算法评价准确率。

3.4 实验结果

本文将所提出的SRDA方法与其他4种对比方法进行比较,实验共在16组数据集上进行,实验结果如表2所示。基于实验结果,可得出以下结论:

表2 真实数据集的性能比较

(1) 在所有数据子集组合的实验中,除了SVM算法,其他几种算法均是基于迁移的分类学习方法,这表明了迁移学习对于目标域数据分类是有帮助的,源域中的分类知识可以有效地迁移到目标域,帮助目标域实现更好的分类结果。

(2) 在USPS to MNIST手写体数据集和MSRC to VOC图像数据集上,本文提出的SRDA明显优于其他无监督域适应方法,这表明字典学习可以真实地还原出源域和目标与图像,同时在样本的稀疏表示空间拉近源域和目标域样本,达到减小域之间的分布差异的目的。

(3) 在Office to Caltech 图像数据集中,本文提出的SRDA框架性能在大部分实验组合里表现也优于其他算法,这表明相对于其他基于特征迁移的域适应方法,SRDA可以有效地利用源域样本的特征,减少负迁移的产生。

3.5 实验结果分析与对比

本文提出的SRDA是一个迭代算法,通过不断迭代求解参数W、Ds,Dt、Vs、Vt,从图3中可以看出,在A to W、MSRC to VOC、USPS to MINST实验数据组中,随着迭代次数的增加,SRDA模型的目标函数值快速地下降,在迭代4次之后目标函数值收敛,得到局部最优解。这表明运行SRDA模型所耗时间很短,模型效率较高。

图3 目标函数值随迭代次数的变化

实验采用了16组数据集组合和5种算法进行对比,分类准确率对比结果如表3所示,其中SRDA列准确率下标代表10次测试结果的标准差,用于表示结果误差。本节针对USPS to MNIST数据集组合对SRDA算法中的各个参数进行分析。首先是字典大小r,SRDA方法中目标域的分类使用从源域的稀疏表示空间学习的分类器,因此源域字典与目标域字典大小相同。参数r表示字典的词汇量,从图4中可知,词汇量的大小与目标域的分类精度密切相关,对于参数r,其搜索范围为[10,15,25,50,75,100],当r=25时,目标域准确率最高,当r>25时,分类精度有所下降并趋于稳定,这表明了过完备的字典包含了更多的无用信息(即基于源域稀疏表示的字典特征空间存在特征冗余),这些特征也会影响目标域的分类准确率。

图4 字典大小分析图

在图5中,分别从USPS to MNIST和MNIST to USPS两个数据组合分析了源域与目标域的稀疏参数λs、λt、正则化参数γ对目标域分类性能的影响。图5(a)和图5(b)是固定正则化参数,仅对λs和λt进行分析,图5(c)和图5(d)是对λs和γ的分析,图5(e)和图5(f)是对λt和γ的分析。从中可以得到如下结论:

(a)

(1)λs=0.01、λt=0.01,目标域可以取得最好的分类性能,此时从源域和目标域学习到的样本的稀疏表示均能较为完美地重构原样本。

(2)γ=1 000时,目标域分类性能达到最佳,这表明在SRDA算法中,对于源域和目标域样本的稀疏表示进行约束,能够有效拉近样本之间的距离,减少源域和目标域之间的差异,从而使得从源域稀疏表示空间学习得到的分类器可以应用于目标域稀疏表示空间的分类。

4 结 语

本文提出一种基于稀疏字典表示的无监督域适应学习算法SRDA,本文算法与其他基于特征的迁移学习算法不同,SRDA通过引入字典学习方法,通过相似性约束挖掘源域和目标域样本之间的内在联系,以此提升目标域的分类性能。大多数特征迁移算法主要学习一种映射函数,通过映射后的特征来最小化源域和目标域的分布差异。在分类器的学习过程中,大部分域适应研究都是针对源域样本进行学习得到分类器参数,SRDA则借鉴稀疏表示学习中的一些技巧,即在样本的稀疏表示空间学习分类器参数,而在样本的稀疏表示空间学习到的分类器参数也能有效地完成源域和目标域的分类任务,相比在样本空间上进行分类,其性能会有很大的提升。

猜你喜欢

源域字典分类器
基于参数字典的多源域自适应学习算法
字典的由来
BP-GA光照分类器在车道线识别中的应用
加权空-谱与最近邻分类器相结合的高光谱图像分类
结合模糊(C+P)均值聚类和SP-V-支持向量机的TSK分类器
我是小字典
正版字典
可迁移测度准则下的协变量偏移修正多源集成方法
基于LLE降维和BP_Adaboost分类器的GIS局部放电模式识别