笔记:Semi-supervised domain adaptation with subspace learning for visual recognition (cvpr15)

本文基于子空间学习提出了一种半监督的域自适应框架(SDASL)。在这个框架中,一方面学习一个领域不变(domain invariant)的低维结构(low-dimension structure),也就是子空间,从而减少不同域上数据分布不同带来domain shift影响;另一方面通过正则项利用目标域上的unlabeled样本来学习目标域上的结构信息。具体而言,首先在源域和目标域上分别学习一个映射(这个映射用一个矩阵表示),可以将样本表示映射到一个低维的公共子空间上,然后在这个子空间上进行分类,使用线性分类器。整个流程可以用下图表示:
笔记:Semi-supervised domain adaptation with subspace learning for visual recognition (cvpr15)_第1张图片
需要注意的是文章算法使用的并不是直接图像rgb特征,而是图像在decaf上第8层全连接层输出。
我们希望这个子空间首先具有这样的性质:对于属于同类的样本,不管来自于哪个域,它们的表示应该尽可能相似,这个通过拉普拉斯矩阵来构造损失;同时,为了充分利用目标域上丰富的无标记样本,我们要求相近的无标记样本最后得到的分类器输出也相似。这种相似关系在算法的输入空间上刻画,通过affinity matrix表示。本文针对上面的目标构造了三个损失项,一个在文章称为结构化风险(structural risk),它是分类损失;第二个称为结构保护(structure preservation),保证同类的样本(不管来自于哪个域)都有相近的表示;第三个称为流形正则(manifold regularization),它的假设是如果两个样本相似,那么最终分类器的输出也应该相似。这样就可以充分利用半监督条件下的不带标记的样本。最后目标函数的构成如下:
笔记:Semi-supervised domain adaptation with subspace learning for visual recognition (cvpr15)_第2张图片
本文对目标函数,优化方法对工作进行了介绍,下面具体分析。
目标函数
1. 结构化风险(structural risk)
这个损失可以看成一个子空间上线性分类器的分类损失,它的表示如下:
笔记:Semi-supervised domain adaptation with subspace learning for visual recognition (cvpr15)_第3张图片
其中的w与b表示线性分类器的系数,对于不同的域上的样本我们采用不同的分类器系数,第一项是分类损失,这里采用2范数;第二项是模型复杂度的正则项。M是一个映射矩阵。它是将样本从原始的数据集(源域或者目标域)上映射到子空间的映射,X*m可以看作样本在子空间上的特征表示。我们一般规定这种映射矩阵的两列是互相垂直的,所以两个m举证都是正交矩阵。
在子空间学习中,我们假设不同视角的样本来自于来源于相同的子空间,我们的目标是学习寻找这个子空间(也就是学习到从源域或目标域到空间的映射),从而学到这种不变的结构,从而减少不同域上的偏移。基于这个假设的线性分类器可以表示如下:
classifier
2. 结构保护(structure preservation):在子空间问题中,我们希望同类的物体是基于相近的或者相似的特征,也就是在源域或者目标域上标签相同的样本,我们希望它们在子空间上有相似的表示。这个通过laplacian矩阵的性质来实现。
3. 流行正则(manifold regularization):流型的正则项常用于半监督学习,在这种条件下,有一些样本是有标签的,另外的样本是无标签的。流形正则项有关的是无标记的样本,它的形式是保证在分类器上相似的无标签样本有相似的输出。从而保证分类器的合理性。这里涉及到如何衡量两个样本的相似关系,本文采用的是基于K近邻的高斯函数表示,来构造亲和矩阵衡量两个样本之间的相似度关系。具体而言,这个正则项表示为:
笔记:Semi-supervised domain adaptation with subspace learning for visual recognition (cvpr15)_第4张图片
其中S就是亲和矩阵,后面是衡量分类器的结果的距离。S的元素的表示如下:
通过这种方式,可以充分利用相似的无标记样本之间的关系。
模型的求解
求解这个模型并不是一个凸问题。作者将整个目标函数中的参数分为两个部分进行优化:
1. 映射矩阵m,它将观测的样本映射到一个subspace,学习它实际上就可以看作寻找子空间的过程;
2. 分类器函数w和b,它是基于子空间学习到的分类器参数,学习它可以看作在子空间上寻找合适分类界面的过程。
对于这两个部分的参数,本文通过将分类器参数用映射矩阵表示来进行模型求解:
1. 首先求得在给定映射矩阵m的条件下,求目标函数的导数,得到参数之间的关系,将分类器的参数使用子空间的参数表示。
2. 将上面的结果代入到目标函数,将目标函数表示为子空间的参数的形式。
那么整个模型的形式可以表示为:
transfer
这个模型由于后面的正交约束,是一个非凸的。对于上面的非凸问题,本文采用了结合曲线搜索的梯度法,参考文章:
[1] Yin W, Wen Z. A feasible method for optimization with orthogonality constraints[J]., 2012.
然后根据参数之间的关系得到分类器的最有参数。
对于测试样本,首先将样本映射到子空间上,然后用目标域上的学到的参数进行映射以及分类,最后取分类器的符号得到最后的结果。
整个模型优化的流程如下:
笔记:Semi-supervised domain adaptation with subspace learning for visual recognition (cvpr15)_第5张图片
实验:本文用decaf的第八层FC8层的输出作为本文算法的输入。

你可能感兴趣的:(迁移学习,域自适应,子空间学习)