一种基于散度计算的异构域适应方法与流程

文档序号:18167823发布日期:2019-07-13 09:43阅读:247来源:国知局
一种基于散度计算的异构域适应方法与流程

本发明涉及机器学习技术领域,具体涉及一种基于散度计算的异构域适应方法。



背景技术:

采用机器学习算法进行分类研究,是机器视觉和模式识别领域的热门研究课题。分类算法旨在将目标对象划分至其所属的类。为保证模型的准确性和可靠性,传统分类学习存在两个基本假设:(1)训练集和测试集的样本满足独立同分布;(2)只有具有足够多的可用训练样本,才能得到好的分类模型。但在实际问题中,有标签样本数据往往很缺乏且很难获得;训练集与测试集大多分布不匹配。因此,如何利用少量的有标签训练样本或者源领域数据,建立一个可靠的模型,对具有不同数据分布的目标领域进行预测,成为亟待解决的问题。

迁移学习是运用已有知识,对不同但相关领域的问题进行求解的一种新的机器学习算法。它放宽了分类学习中的两个基本假设,旨在迁移源域中已有的知识,来解决目标领域中由于标签极少甚至没有而无法解决的学习问题。

作为迁移学习的强大分支,域适应希望利用源域中大量的标签信息来学习目标域的有效分类器,已经在许多领域得到了应用,如目标识别、图像分类和文本分类等。最初,该方法被广泛应用于同构问题,即源域与目标域具有相同的特征类型。但随着实际应用的扩展,很难确保总能找到由类似特征取样得到的源域和目标域。因此,对于训练集和测试集具有不同分布及特征的情况,异构域适应方法更具通用性和挑战性。

散度作为一个简单的几何函数,量化了一个分布距离其质心的平均平方距离。通过最大化整体散度和类间散度,并最小化类内散度,达到保留数据的总体可变性,并加强类的可分离型的目的,进一步缩小域之间的不匹配性,为域适应带来优秀的分类精度,获得令人满意的结果。



技术实现要素:

本发明的目的是为了解决现有技术中的上述缺陷,提供一种基于散度计算的异构域适应方法,达到对来自不同分布和特征下的源域及目标域的有效迁移,并在异构域适应问题中引入散度计算,进一步提高数据可分离性,提高分类性能。

本发明的目的可以通过采取如下技术方案达到:

一种基于散度计算的异构域适应方法,包含以下步骤:

s1、对源域和目标域中的数据样本分别进行预处理,获取源域和目标域数据集xs和xt;

s2、假定源域及目标域分别存在映射as和at,将两者映射至潜在的共享子空间,并利用最大均值差异距离,即mmd距离,进行分布匹配,最小化两者的分布差异。为达到同时训练源域及目标域的目的,将源域及目标域的数据和映射分别重新组合得到数据x和映射a,进行同步训练。为适应非线性问题,可进一步引入核函数;

s3、根据流行学习引入结构一致性,保证经过分布匹配后的同类数据距离接近,同时对映射矩阵引入正则化,进行合理的特征选择;

s4、对源域数据最大化整体散度和类间散度,并最小化类内散度,在保留数据特性的同时,加强类别间的可分性,提高分类精度;

s5、结合上述步骤s1-s4,优化目标函数,得到最终映射矩阵,利用映射后的源域数据训练svm分类器,对映射后的目标域数据进行标签预测。

进一步地,所述的步骤s1过程如下:

s11、分别选取源域及目标域数据样本xs1和xt1;

s12、对目标域数据中每个类,随机筛选三个样本,保留其标签,并将有标签样本置于数据集头部,得到xt2。通过以上处理可以提高分布匹配准确率,避免传统无监督学习可能导致的匹配偏差;

s13、对源域和目标域的数据样本xs1和xt2分别进行归一化处理,得到源域和目标域的数据集xs和xt。

进一步地,所述的mmd距离公式如下:

其中,mmd(xs,xt)表示源域和目标域的整体mmd距离,mmd0(xs,xt)和mmdc(xs,xt)分别表示源域及目标域间的边缘分布适配和条件分布适配,ns和nt分别表示源域和目标域数据数量,c为某个数据类别,分别表示源域和目标域中第c类的数据数量,分别表示源域第c类的所有数据和目标域第c类的所有数据,xs,i表示源域中第i个数据,xt,j表示目标域中第j个数据,xk表示源域第c类中的某个数据,xl表示目标域第c类中的某个数据。

进一步地,所述的步骤s2中将源域及目标域的数据和映射分别重新组合得到数据x和映射a具体如下:

将源域及目标域的数据和映射分别组合为:a=[as;at],并对映射核化处理,其中,均为全零矩阵,ds和dt分别为源域和目标域维度。

进一步地,所述的步骤s2中还包括:

对于非线性问题,考虑核映射即ψ(x)=[ψ(x1),…ψ(xn)],可得核矩阵k=ψ(x)tψ(x),故映射重写为a=ψ(x)p,其中p=[ps;pt]代表转化矩阵,为源域及目标域转化矩阵ps和pt的组合。

进一步地,所述的步骤s2中经过组合及核映射之后,mmd度量转化为如下计算:mmd=tr(ptkmktp),其中,

为mmd矩阵,(mc)wv代表该矩阵第w行第v列的数值,xw和xv为计算该数值的某两个数据。

进一步地,所述的步骤s3过程如下:

s31、将结构一致性问题转化为最小化如下函数:

其中zf和zg为相应数据xf和xg经过映射后所得的数据,n=ns+nt为源域及目标域数据数量之和,w为对称邻接矩阵,表示两数据间的相似度,其中每一项nk(zg)为zg的k近邻,l=d-w为图拉普拉斯算符,其中d为对角矩阵,且对角项

s32、对映射矩阵引入l2,1范数:||p||2,1,进行合理的特征选择。

进一步地,所述的步骤s4中,整体散度为所有数据间的均方距离,类内散度为每个类中各数据间的均方距离,类间散度为各类均值间的均方距离,最终获得如下优化问题:其中,s=sw-st-sb为散度矩阵,为类内散度矩阵,为整体散度矩阵,为类间散度矩阵。且u为整体数据均值,uc为第c类数据的均值,c为类别c的集合,xm和xn分别代表数据集中的某个数据,为源域第c类数据。

最小化类内散度可以减小类内距离,使同类数据更加紧凑;最大化整体散度可以最大化整体数据方差,保留数据特性;最大化类间散度可以增大各类数据间的差异,提高数据可分性。因此,我们在异构域适应问题中引入散度计算,且不局限于常用的类内散度。此举可以更加完善的保留数据特征,并进一步增大各类数据之间的距离,提高数据可分性,优化分类结果。

进一步地,所述的步骤s5中,

待优化的目标函数为:

其中,α>0,β>0,γ>0为惩罚系数,且1n为大小为n×n的全1矩阵,s.t.ptkhktp=i为用于避免平凡解的约束项。

本发明相对于现有技术具有如下的优点及效果:

(1)对来自不同域的数据样本分别学习其对应的映射,得到更加匹配的结果,避免学习单一映射导致的匹配差异。

(2)在分别学习各域对应映射的基础上,组合源域和目标域的数据及映射,达到同步训练的目的,保证两者被映射至同一潜在子空间。

(3)引入结构一致性和正则化,在保证同类数据紧凑的基础上进一步提取有用特征。

(4)在异构问题中进一步引入散度计算,且不局限于类内散度的计算,通过对源域数据最大化整体散度和类间散度,并最小化类内散度,更加完善的保留数据特征,并进一步增大各类数据之间的距离,提高数据可分性,优化分类结果。

附图说明

图1是本发明中公开的一种基于散度计算的异构域适应方法的流程图;

图2是本发明中分布匹配分类及目的示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

实施例

如图1所示,本实施例公开了一种基于散度计算的异构域适应方法,采用迁移学习思想,通过对异构的源域及目标域分别进行映射和特征转换,得到具有相似特征及分布的子空间。并在异构应用中引入散度,利用散度特性进一步加强数据可分性,帮助提升目标任务的学习效果。基于散度计算的异构域适应算法将散度应用与异构数据迁移相结合,是解决异构域适应问题的新技术。

该方法包括:数据预处理、分布匹配、结构一致性、正则化、散度计算以及整体优化步骤。

t1、数据预处理:

实验采用amazon(从网上商店下载来的数据集)、webcam(网络摄像机拍摄的低分辨率图像)、dslr(由数码单反相机拍摄的高解析度图像)和caltech-256(用于对象识别的标准数据库)数据集,并且使用800维的surf特征和4096维的decaf6特征。

首先,分别选取源域及目标域数据样本xs1和xt1,对目标域数据中每个类,随机筛选三个样本,保留其标签,并将有标签样本置于数据集头部,得到xt2。通过以上处理可以提高分布匹配准确率,避免传统无监督学习可能导致的匹配偏差。之后对源域和目标域的数据样本xs1和xt2分别进行归一化处理,得到源域和目标域的数据集xs和xt。

t2、分布匹配:

假定源域及目标域分别存在映射as和at,将两者映射至潜在的共享子空间,并利用最大均值差异(mmd)距离,进行分布匹配,最小化两者的分布差异。由图2可知分布匹配分为边缘分布适配和条件分布适配,分别对两域间整体分布和其内部各类分布进行匹配。

mmd距离公式如下:

其中,mmd(xs,xt)表示源域和目标域的整体mmd距离,mmd0(xs,xt)和mmdc(xs,xt)分别表示源域及目标域间的边缘分布适配和条件分布适配,ns和nt分别表示源域和目标域数据数量,c为某个数据类别,分别表示源域和目标域中第c类的数据数量,分别表示源域第c类的所有数据和目标域第c类的所有数据,xs,i表示源域中第i个数据,xt,j表示目标域中第j个数据,xk表示源域第c类中的某个数据,xl表示目标域第c类中的某个数据。

为了达到同时对两映射进行学习的目的,将源域及目标域的数据和映射分别重新组合为:a=[as;at],其中,均为全零矩阵,ds和dt分别为源域和目标域维度。对于非线性问题,考虑核映射即ψ(x)=[ψ(x1),…ψ(xn)],可得核矩阵k=ψ(x)tψ(x),故映射重写为a=ψ(x)p,其中p=[ps;pt]代表转化矩阵,为源域及目标域转化矩阵ps和pt的组合。

经过组合及核映射之后,mmd度量转化为如下计算:mmd=tr(ptkmktp),同时将边缘分布适配的表达式看作特殊的条件分布适配,得到统一的mmd矩阵

(mc)wv代表该矩阵第w行第v列的数值,xw和xv为计算该数值的某两个数据。

t3、结构一致性:

结构一致性是指,经过映射后,应保证原本相近的数据间的距离依旧很小,可转化为最小化如下函数:

其中zf和zg为相应数据xf和xg经过映射后所得的数据,n=ns+nt为源域及目标域数据数量之和,w为对称邻接矩阵,表示两数据间的相似度,其中每一项nk(zg)为zg的k近邻,l=d-w为图拉普拉斯算符,其中d为对角矩阵,且对角项

t4、正则化:

对映射矩阵引入l2,1范数:||p||2,1,进行合理的特征选择,提高算法效率。

t5、散度计算

散度计算最终可转化为对源域数据进行如下优化:

其中s=sw-st-sb为散度矩阵,称为类内散度矩阵,代表每个类中各数据间的均方距离,称为整体散度矩阵,代表所有数据间的均方距离,称为类间散度矩阵,代表各类均值间的均方距离,其中,u为整体数据均值,uc为第c类数据的均值,c为类别c的集合,xm和xn分别代表数据集中的某个数据,为源域第c类数据。

最小化类内散度可以减小类内距离,使同类数据更加紧凑;最大化整体散度可以最大化整体数据方差,保留数据特性;最大化类间散度可以增大各类数据间的差异,提高数据可分性。

t6、整体优化

最终优化目标为:其中,α>0,β>0,γ>0为惩罚系数,且1n为大小为n×n的全1矩阵,引入约束项s.t.ptkhktp=i以避免平凡解。

交叉优化各参数,取最优值,得到最终映射矩阵,利用映射后源域数据训练svm分类器,对映射后目标域数据进行标签预测。

综上所述,本实施例公开了一种基于散度计算的异构域适应方法,该方法采取分别映射,同时训练的方法,将来自不同域的异构数据映射至同一共享子空间上,在提高映射性能的同时达到同步训练的目的。同时,算法引入结构一致性和正则化,进一步提取特征并限制映射矩阵,提高算法精度。此外,算法还引入散度计算,通过对源域数据最大化整体散度和类间散度,并最小化类内散度,使数据更具可分性,进一步提升性能。

上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1