  In domain adaptation for neural machine translation, translation performance
can benefit from separating features into domain-specific features and common
features. In this paper, we propose a method to explicitly model the two kinds
of information in the encoder-decoder framework so as to exploit out-of-domain
data in in-domain training. In our method, we maintain a private encoder and a
private decoder for each domain which are used to model domain-specific
information. In the meantime, we introduce a common encoder and a common
decoder shared by all the domains which can only have domain-independent
information flow through. Besides, we add a discriminator to the shared encoder
and employ adversarial training for the whole model to reinforce the
performance of information separation and machine translation simultaneously.
Experiment results show that our method can outperform competitive baselines
greatly on multiple data sets.
