Deep Domain Adaptation

The goal of Deep Domain Adaptation is to make it possible to use Deep Nets trained in one domain where there is enough annotated training data in another where there is little or none. Most current approaches have focused on learning feature representations that are invariant to the changes that occur when going from one domain to the other, which means using the same network parameters in both domains. While some recent algorithms explicitly model the changes by adapting the network parameters, they either severely restrict the possible domain changes, or significantly increase the number of model parameters.

By contrast, we introduce a network architecture that includes auxiliary residual networks, which we train to predict the parameters in the domain with little annotated data from those in the other one. This architecture enables us to flexibly preserve the similarities between domains where they exist and model the differences when necessary.

two-stream architecture

Fig. 1. Our two-stream architecture. One stream operates on the source data and the other on the target one. The parameters of the corresponding layers across streams are related through a residual transformation network.


Residual transformation can be represented as follows:

Residual transformation

For more information please check the Residual Parameter Transfer for Deep Domain Adaptation paper, as depicted below.

Framework overview

We start by pretraining the source stream on the source data. We then continue training both the source stream and the residual transformation parameters by minimizing the objective function that consists of four components:

  • Classification loss term  (cross-entropy);
  • Domain discrepancy loss term (any loss that maximizes domain confusion);
  • Residual Transformation Regularization loss term;
  • Automatic architecture selection loss term.

The overall training and testing procedure is described in the following figure.

Framework overview

Fig. 2. Approach overview. We first pre-train the network on the source data. We then jointly learn the source stream parameters and their transformations using adversarial domain adaptation. Finally, at test time, we use the network with transformed parameters to predict the labels of images from the target domain.

For more information please check the Residual Parameter Transfer for Deep Domain Adaptation paper, as depicted below.

Code

The code for the project is available under the following links: drive.switchc4science.

References

A. Rozantsev, M. Salzmann and P. Fua. Beyond Sharing Weights for Deep Domain Adaptation, accepted in Transactions on Pattern Analysis and Machine Intelligence (PAMI), 2018.
A. Rozantsev, M. Salzmann and P. Fua. Residual Parameter Transfer for Deep Domain Adaptation. Conference on Computer Vision and Pattern Recognition (CVPR), Salt Lake City, Utah, USA, 2018.