开放集域适应(Open Set Domain Adaptation)

开放集域适应(Open Set Domain Adaptation)

阅读论文:Open Set Domain Adaptation

http://openaccess.thecvf.com/content_ICCV_2017/papers/Busto_Open_Set_Domain_ICCV_2017_paper.pdf

Closed Set:目标域和源域包含了同一组对象类的图像(例如:source有5类,target也是这完全相同的5类)

例如:a图中的源域中有car、chair、dog三类,而目标域中的数据也都在car、chair、dog三类中;

Open Set:目标域与源域的对象类别可能并不都相同,同时,目标域中可能包含了与源域毫无相关的图像(source有5类,target只共享了其中某些类,还有未知类)

例如:b图中除了之前的三类还有unknown类型的数据,而在目标域中也存在源域中不存在的类别的数据

直观理解

论文中实现Open Set Domain Adaptation的方法

a图中的源域中包括三角、矩形、菱形三种类型以及unknown(灰色),目标域中没有标签

1.通过源域给目标域分配标签(异常点没有标签)

2.将源域映射到目标域,最小化它们之间的距离,经过变换后的目标域为c

3.通过步骤1 2迭代至收敛,使用从源域训练的分类器对目标域进行分类

 

通过源域给目标域分配标签:

无监督场景:

目标域的个体数据分类到源域类别的损失定义为:

其中Tt为目标域的特征表示,Sc表示类别中的数据均值

整体的损失函数:

Xct表示样本是否要被标记为某一类别,Ot表示样本是否是一个异常点

约束一:样本必须分配,不是为已知类别就是异常点

约束二:保证每个类别至少要有一个样本

 

半监督场景:

半监督的场景中目标域是包含一定带标签数据的,所以已经有标签的数据不需要标签的分配

总的损失函数变为:

其中的Xc·t·表示已有标签的数据不改变其标签,其中的dcc为

将源域映射到目标域:

映射损失函数:

对目标域分类:

使用在源域训练完成的分类器对目标域的数据进行训练分类

原文地址:https://www.cnblogs.com/Jason66661010/p/13565323.html