文章来自CVPR 2020,这是对师兄汇报的总结。
Problem:
1、large inter-domain variations(巨大的域内差异)
2、small inter-class variations(小的类间差异):可以理解为狗类和猫类的差异小。
3、large intra-class variations(巨大的类内差异):可以理解为狗类中金毛和斗牛犬的差异大,接近甚至超过狗类和猫类的差异。
为此,本文提出Progressive Adversarial Network(PAN):对抗学习+课程学习(由易到难)
Related work:
PAN对样本的要求比较低,只需hierarchical(分层的)源域样本标签。
源域:
x表示样本,yf表示样本标签,yck表示样本在细粒度层为k的时候的标签,K表示一共有K层细粒度。
目标域:
源域样本的训练:
1、x->G->label classifier Ck->预测值 与 coarse label yck 的CE loss。
在每个细粒度为k的层面,都有一个损失,应该一共有K个。
训练的参数是:G、Ck
2、x->F-label classifier Y->预测值 与 progressive labels 的 hybrid loss。
progressive labels是由真实值yf和yck组成,且有个动态的epsilon关系。
epsilon是课程学习启发,根据实验确定,epsilon图像如幂函数图像,效果最好。
yck平均时,因为不同维度,要对向量扩充。
训练的参数是:F、Y
???训练的参数应该有G、Ck吧
3、x->F->Y 和 x->F 啥啥啥之后训练discriminator D。
???训练的参数只有D吗
目标域的样本:
1、经discriminator D 训练参数。
2、x->F->Y 得到标签完成分类。
下面是总的损失和训练函数。