摘要
尽管许多方法旨在匹配源样本和目标样本的分布,但是仅匹配分布并不能确保目标域上的准确性。为了学习目标域的判别表示,我们假设人工标记目标样本可以产生良好的表示。Tri-training均等地利用三个分类器为未标记的样本提供伪标签,但是该方法不假定标记样本是从其他域生成的。
在本文中,我们提出了一种用于非监督域自适应的 asymmetric tri-training 方法,该方法将伪标签分配给未标记的样本,并训练神经网络,就像它们是真实的标签一样。我们的意思是两个网络用于标记未标记的目标样本,一个网络由这些样本训练以获取目标判别表示。
1. Introduction
也就是说,即使在非判别表示上匹配分布,分类器也可能无法在目标域上正常运行。由于在没有目标标签的情况下,直接学习目标域的判别性表示非常困难。
Co-training and tri-training[1] 利用多个分类器来标记未标记的样本并重新训练分类器。但这些方法没有假设无标签样本来自不同的域。
2. Related Work
[2]研究了伪标签在神经网络中的作用。 他们认为,使用伪标签训练分类器的效果等同于熵正则化,从而导致类之间的低密度分离。 另外,在我们的实验中,我们观察到目标样本在隐藏特征中是分开的
3. Method
3.1 Loss for Multiview Features Network
为域适应的co-training[3]将给定的特征被分为不同的部分,并被认为是不同的观点。
为了使
基于不同视角分类样本。因此我们添加
到损失函数,其中
是分类器与特征连接的全连接层的权重。因此
的目标函数为:
3.2 Learning Procedure and Labeling Method
第一步:使用训练集训练整个网络, 使用式(1), 使用标准的分类损失训练。
第二步:为目标域样本提供伪标签,要求1: 的预测类别相同;2: 预测的概率大于0.9或0.95(本文实验中使用的阈值)。
为了防止过拟合到伪标签,我们重采样参与的伪标签样本。设置 ,然后逐步增加参与的数量 , 为所有目标域样本数量。设置参与训练的伪标签样本最大数量为40000。
通过构建仅在目标域样本上训练的特定于目标域的网络,将学习判别性表示。但是仅使用有噪声的伪标签样本训练,网络可能无法学习有用的表示。然后我们使用源域和伪标签样本训练三个分类器以保证准确率。同随着训练, 将学习目标域判别性表示,使分类器 的正确率提升。这个周期逐渐增强目标域上的准确率。
3.3 Batch Normalization for Domain Adaptation
Batch Normalization(BN)[4]白化CNN中隐藏层的输出,是一种有效的加快训练、提升模型准确率的技术。除此之外,在域适应任务中,白化隐藏层的输出使不同域的分布相似,能有效提升性能。
我们在 的最后一层添加BN层。
4. Analysis
5. Experiments and Evaluation
5.1 Implementation Detial
MNIST->SVHN为0.95,其他都为0.9。
SGD,momentum=0.9,学习率由分割出的验证集决定使用[0.01, 0.05]
设为0.01。
而对于亚马孙评论数据集, 设为0.001。
在MNIST->MNIST-M实验中从训练集(即源域)选取1000个样本做验证集来调节超参数。