What is domain adaptation?
Domain adaptation is the task of taking a model that works on data from one source and making it work on data from another source where the job is the same but the data looks different. The source might be daytime photos and the target nighttime photos, or general English speech and the target radiology dictation. The task has not changed, but the distribution of inputs has.
The simplest technique is fine-tuning on a small labeled sample from the target domain. When target labels are unavailable, unsupervised methods align the statistics of the two domains or train the model to ignore the features that tell them apart. Domain adaptation is a branch of transfer learning focused on this shift in inputs.
Domain adaptation in practice
A manufacturer trains a vibration model that predicts bearing failures on compressors at its Ohio plant. At its Texas plant the model performs poorly, because different compressor models, mounting positions, and ambient temperatures change the signal. Rather than wait two years to accumulate Texas failure history, the team fine-tunes the Ohio model on three months of Texas data and recovers most of the accuracy.
What to watch for
- Measure performance on target-domain data before assuming a model transfers.
- Distinguish a domain shift at deployment from data drift over time, because the fixes differ.
- Keep a small labeled sample from every new domain, because even a few hundred examples make adaptation far easier.