Domain Separation Networks(2016)

  • “低级”(low-level)差异:由于噪声,分辨率,照明和颜色引起的差异。
  • “高级”(high-level)差异:与分类的数量,对象的类型和几何变化(如3D位置和姿态(pose什么的))有关。
  • 文章假设source domain和target domain的图像差异主要来自于低级差异,而在高级参数上有相似的分布且在同一个标签空间(标签一致,没有缺漏)内
  • 论文作者提出了一种新颖的架构: Domain Separation Networks (DSN)来学习域不变特性(domain-invariance feature)。
  • 之前的研究尝试寻找一个从source domain到target domain的一个映射,或者找出source domain和target domain上的共同的特征(representation),但是作者认为这种方式学习得出的特征(representation)很容易收到与低级分布相关的噪声的污染。
  • 引入了各自域内的private subspace来获取各自域内部的特征,比如背景和low level image statistics(低阶图像信息统计量)
  • 引入shared subspace,通过使用autoencoders and explicit loss functions来获取各个子空间中共同的特征(shared subspace和private subspace 相互正交)

算法描述

  • Xs:source domain里的数据(被标记的)
  • Xt:target domain里的数据(尚未被标记的)
  • Ec( θc,X):函数,论文中似乎也把它称为一个encoder。将X(数据)里共有的特征(source domain和target domain里)提取出来(shared subspace里的)作为隐藏特征hc(hidden representation,common)。参数为 θc和X
  • Ep( θp,X):函数,论文中似乎也把它称为一个encoder。与Ec类似。将X(数据)里私有的特征(分别是source domain和target domain里的)分别提取出来(private subspace里的)作为隐藏特征hp(hidden representation,private)。参数为 θp和X
  • D(h,θd)作为一个解码函数(decoder),将隐藏特征重建为图像。


  • G(h; θg): task-specific function。利用隐藏特征作出预测(task-specific predictions)


Learning

  • 网络结构


    Domain Separation Networks(2016)_第1张图片

    Domain Separation Networks(2016)_第2张图片
  • loss terms:


  • L task(分类损失) :(文章假设target domain是unlabeled)因为预测导致的损失。使用负对数似然法估计。因为只有source domain上有标签,所以:



    是softmax预测,ys是个one-hot vector
  • Lrecon:对重建的图像和原图像使用scale-invariant mean squared error term(长度不变的均方损失)(并且两个域都有)。




    其中,k是输入图像的像素个数,1k是input中一个长度为k的元素全为1的向量



    均方误差可以惩罚图像重建任务(通过prediction),但scale-invariant mean squared error term可以惩罚每个像素对之间的不同。
  • Ldifference:鼓励Ep和Ec编码inputX中不同的部分。实现的方式是将两个私有子空间(private subspace)和共有空间(shared subspace)的soft subspace orthogonality constraint(?)加起来。这个loss鼓励private subspace和public subspace之间的正交性。
source domain的共有特征

target domain的共有特征

source domain的私有特征

target domain的私有特征

以上四个分别作为下面公式中对应矩阵的行


Forbenius范数,即矩阵里每个元素的平方和的开方,通常只用于希尔伯特空间
  • Lsimilarity:鼓励两个domain产生的shared presentation(即Hc)的相似性。
  • 使用domain adversarial similarity。需要一些DANN(Domain–Adversarial Neural Networks)的知识
    • GRL(Gradient Reversal Layer):对于某个函数f(u),有:
    • 定义一个domain classifier(域分类器)从GRL产生的结果中学习,即(Z):


      d是预测的标签,{0,1},这个特征究竟来自source domain还是target domain
    • 使用GRL学习是对抗性的,因为优化θz可以提高domain classifier分类的精度,但是因为梯度的反转,更新θc(就是shared subspace那个encoder)会导致domain classifier分类的精度的下降
    • 因此,我们在更新θz时最大化domain classfier的交叉熵损失函数(就是基于DANN的Lsimilarity),而在更新θc时最小化它:


  • 使用基于核方法的Maximum Mean Discrepancy形式的损失函数
    • 计算由source domain产生的shared presentation(hsc)和target domain产生的shared presentation(htc)之间的MMD的平方:


    • 核函数使用高斯核:


      σn:标准差;ηn:the weight for our n th RBF kernel(径向基核函数,高斯核函数就是径向基的一种)

性能

Domain Separation Networks(2016)_第3张图片

Domain Separation Networks(2016)_第4张图片

Domain Separation Networks(2016)_第5张图片

结论

  • 使用基于DANN的Lsimilarity优于基于MMD的,即使MMD使用了许多高斯核函数的线性组合。
  • 重建的图像可以用于观察学习的进度

你可能感兴趣的:(Domain Separation Networks(2016))