Learning to cluster in order to transfer across domains and tasks
Learning to cluster in order to transfer across domains and tasks
Under Review
Intro
使用similarity network来学习task之间的相似度。然后进行cluster。
这篇paper研究的是,在进行transfer learning的过程中,除了feature,还有什么可以进行transfer,来支持cross-domain和cross-task transfer learning。这里把这个问题通过一个学习到的similarity function,来作为clustering的重要组成部分。然后使用neural network基于similarity function的输出进行训练,就可以实现knowledge transfer。
The Transfer Learning Tasks
将信息从source target $$S=(X_S, Y_S)$$转移到target task $$T=(X_T, Y_T)$$。有两种情况
- $${ Y_T } \ne { Y_S }$$,也就是category不一样,是cross-task的knowledge transfer。就是不同数据集,并且task也变了。
- $${ Y_T } = { Y_S }$$,但是包含了domain shift。换句话说,输入数据$$X$$的边缘分布不一样,$$P( X_T ) = P( X_S )$$,这叫做cross-domain learning,也叫做transductive learning。简单的说,就是不同的数据集,但是task没变;可能改变的/应该改变的就是特征的分布。
The Learnable Clustering Objective (LCO)
学习pairwise similar/dissimilar pairs,作为constraints clustering。而且尽管有很多constrained clustering算法被研发,但是并没有能够和deep neural network整合到一起。这里为了clustering构造了一个constrastive loss,在softmax的概率输出上。但是这里并不需要output node和cluster是完全一一对应,而是直接使用它们的概率输出。
对于两个instance,使用pairwise KL-divergence,在k个cluster的预测概率上,作为相互之间的距离。
最后的total loss就定义为相似距离+不相似距离
$$\mathcal{L}(x_q, x_p) = G(x_p, x_q) \mathcal(X_p, x_q)^+ + (1-G(x_p, x_q))\mathcal(X_p, x_q)^-$$,其中$$G(x_p,x_q)$$是similarity prediction function。
The Pairwise Similarity Prediction Network
这里使用一个CNN来预测image-level semantic similarity。结构如图三,核心是pair enumeration layer,手动将N个instance的pair组合都列出,然后将两个instance的特征直接concatenate。
因为是supervision,会有oracle得知每一对task是否similar。
The Objective Function With Dense Similarity Prediction
将pair-wise similarity和公式5的LCO结合。也就是sofrmax的output会按照pair的形式进行enumerate。把这个结构叫做constrained clustering network (CCN)。
Combining with Other Objectives
在cross-domain的情况下,我们会有额外的source data信息。结构和前面描述的一样,只是会将source和target数据分别使用不同的loss function。
Appendix
这里的clustering结果会动态学习,但是因为是supervised,需要oracle告知哪些pair是同一个类。这类数据在很多情况下并不容易获得。