Deep Domain Adversarial Neural Network(深度领域对抗神经网络,DDANN)
是一类结合 深度学习 与 领域自适应(domain adaptation) 思想的神经网络结构,主要用于不同数据域之间的知识迁移,尤其是在源域(source domain)和目标域(target domain)数据分布存在差异时,依然能够保持较好的特征表示和预测性能。
1. 背景
在很多实际场景中,我们有:
-
源域:有充足的标注数据(如实验室样本)
-
目标域:无标注或少量标注数据(如真实应用环境中的样本)
由于 数据分布差异(domain shift) ,直接用源域训练的模型在目标域上性能会大幅下降。
领域对抗网络(Domain Adversarial Network) 就是通过对抗学习,让模型学到的特征在不同域之间"不可区分",从而实现领域无关的特征提取。
2. 核心思想
DDANN 在普通的深度神经网络中引入一个 域分类器(domain classifier) ,并通过 梯度反转层(Gradient Reversal Layer, GRL) 实现对抗训练:
-
特征提取器(Feature Extractor)
- 深度神经网络(CNN、MLP 等),从输入数据中提取高层特征表示。
-
任务分类器(Task Classifier)
- 用源域标注数据进行监督训练,完成目标任务(如分类、回归、分解等)。
-
域分类器(Domain Classifier)
-
预测样本来自哪个域(源域还是目标域)。
-
通过 GRL 实现特征提取器与域分类器的对抗训练:
-
域分类器希望能分辨域的不同;
-
特征提取器希望生成的特征让域分类器无法区分 ,即学习域不变特征。
-
-
3. 工作机制
DDANN 的训练目标包含两个部分:
-
任务损失 LtaskL_{task}:确保在源域任务上性能最优。
-
对抗域损失 LdomainL_{domain}:确保源域与目标域的特征分布尽可能接近。
整体优化目标为:

其中 λ控制任务性能与领域不变性的权衡。
4. 应用场景
-
跨域图像分类(如不同相机拍摄的图片)
-
跨批次生物数据分析(如蛋白质组、转录组中不同批次实验数据)
-
语音识别(不同口音、不同录音设备)
-
医学影像(不同医院、不同成像条件)
