Domain adaptation

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

Domain adaptation[1][2] is a field associated with machine learning and transfer learning. This scenario arises when we aim at learning from a source data distribution a well performing model on a different (but related) target data distribution. For instance, one of the tasks of the common spam filtering problem consists in adapting a model from one user (the source distribution) to a new one who receives significantly different emails (the target distribution). Note that, when more than one source distribution is available the problem is referred to as multi-source domain adaptation.[3]

Distinction between usual machine learning setting and transfer learning, and positioning of domain adaptation.


Let be the input space (or description space) and let be the output space (or label space). The objective of a machine learning algorithm is to learn a mathematical model (a hypothesis) able to affect a label of to an example from . This model is learned from a learning sample .

Usually in supervised learning (without domain adaptation), we suppose that the examples are drawn i.i.d. from a distribution of support (unknown and fixed). The objective is then to learn (from ) such that it commits the least error as possible for labelling new examples coming from the distribution .

The main difference between supervised learning and domain adaptation is that in the latter situation we study two different (but related) distributions and on . The domain adaptation task then consists of the transfer of knowledge from the source domain to the target one . The goal is then to learn (from labeled or unlabelled samples coming from the two domains) such that it commits as little error as possible on the target domain .

The major issue is the following: if a model is learned from a source domain, what is its capacity to correctly label data coming from the target domain?

The different types of domain adaptation[edit]

There are several contexts of domain adaptation. They differ in the informations considered for the target task.

  1. The unsupervised domain adaptation: the learning sample contains a set of labeled source examples, a set of unlabeled source examples and an unlabeled set of target examples.
  2. The semi-supervised domain adaptation: in this situation, we also consider a "small" set of labeled target examples.
  3. The supervised domain adaptation: all the examples considered are supposed to be labeled.

Three algorithmic principles[edit]

Reweighting algorithms[edit]

The objective is to reweight the source labeled sample such that it "looks like" the target sample (in term of the error measure considered)[4][5]

Iterative algorithms[edit]

A method for adapting consists in iteratively "auto-labeling" the target examples. The principle is simple:

  1. a model is learned from the labeled examples;
  2. automatically labels some target examples;
  3. a new model is learned from the new labeled examples.

Note that there exists other iterative approaches, but they usually need target labeled examples.[6]

Search of a common representation space[edit]

The goal is to find or construct a common representation space for the two domains. The objective is to obtain a space in which the domains are close to each other while keeping good performances on the source labeling task. This can be achieved through the use of Adversarial machine learning techniques where feature representations from samples in different domains are encouraged to be indistinguishable [7][8].


  1. ^ Bridle, John S.; Cox, Stephen J (1990). "RecNorm: Simultaneous normalisation and classification applied to speech recognition" (PDF). Conference on Neural Information Processing Systems (NIPS): 234–240.
  2. ^ Ben-David, Shai; Blitzer, John; Crammer, Koby; Kulesza, Alex; Pereira, Fernando; Wortman Vaughan, Jennifer (2010). "A theory of learning from different domains" (PDF). Machine Learning Journal. 79 (1–2).
  3. ^ Crammer, Koby; Kearns, Michael; Wortman, Jeniifer (2008). "Learning from Multiple Sources" (PDF). Journal of Machine Learning Research. 9: 1757–1774.
  4. ^ Huang, Jiayuan; Smola, Alexander J.; Gretton, Arthur; Borgwardt, Karster M.; Schölkopf, Bernhard (2006). "Correcting Sample Selection Bias by Unlabeled Data" (PDF). Conference on Neural Information Processing Systems (NIPS): 601–608.
  5. ^ Shimodaira, Hidetoshi (2000). "Improving predictive inference under covariate shift by weighting the log-likelihood function" (PDF). Journal of statistical planning and inference: 227–244.
  6. ^ Arief-Ang, I.B.; Salim, F.D.; Hamilton, M. (2017-11-08). DA-HOC: semi-supervised domain adaptation for room occupancy prediction using CO2 sensor data. 4th ACM International Conference on Systems for Energy-Efficient Built Environments (BuildSys). Delft, Netherlands. pp. 1–10. doi:10.1145/3137133.3137146. ISBN 978-1-4503-5544-5.
  7. ^ Ganin, Yaroslav; Ustinova, Evgeniya; Ajakan, Hana; Germain, Pascal; Larochelle, Hugo; Laviolette, François; Marchand, Mario; Lempitsky, Victor (2016). "Domain-Adversarial Training of Neural Networks". Journal of Machine Learning Research, 17:1–35.
  8. ^ Wulfmeier, Markus; Bewley, Alex; Posber, Ingmar (2017). "Addressing Appearance Change in Outdoor Robotics with Adversarial Domain Adaptation". International Conference on Intelligent Robotics Systems (IROS).