首发于PaperWeekly
CVPR论文ZSL系列(二)

CVPR论文ZSL系列(二)

今天介绍一篇关于利用类之间的三种联系,缓解hubness问题的论文。

《Preserving Semantic Relations for Zero-Shot Learning》

思想

  1. 定义图片的三种联系。作者分别定义了图片之间的三种关系,分别是相同,类似和不同。比如类标签是猫,那么相同类就是猫,类似是狮子,不同是猪等等。

    由于利用图片之间的三种联系,可以拉近同类之间的距离,疏远异类之间的关系。相当于在训练过程中,多增加了一层限制,使预测结果更加靠近所属类。
  2. 利用视觉空间,可缓解hubness问题。在语义空间中寻找相关类,会出现hubness问题,也就是在搜索结果中,会出现多个同级结果,造成误判。比如预测结果为(1,1,1,0),但是搜索到(0,1,1,1),(1,0,1,1)等结果。这些都是可能出现的情况,

    但是在视觉空间中,由于每张图片的差异性,不同类之间计算出的结果相同的可能性几乎为0、所以作者提出有语义空间转为视觉空间更为有利。
  3. encoder-decoder机制,使模型更为精确。sematic space->visiual feature -> sematic spce。共有两次转换,每一次转换,都增加一层限制

方法

1.定义语义关系。将图片之间的关系分为相同、类似和不同。语义关系公式如下。

定义联系:

a. s(p,q) = 1,属于同类。

b. s(p,q) > τ 且 s(p,q) < 1,相似类。

c. s(p,q) < τ,不同类。

τ 是设置的阈值,可根据具体数据设置。

2. encoder-decoder空间转换。

sematic space->embedding space,这里embedding space 就是visiual space。

然后找一个三元组(Xi,Xj,Xk)满足相同、类似和不同的关系。比如(0,1,1,1)是代表猫的语义描述,那么encoder会将其转为视觉特征。接着在训练集中寻找三张图片,分别代表(Xi,Xj,Xk)构造损失函数。寻找方法下面会介绍。

embedding space 转为 reconstruction,是利用encoder-decoder的优势,将其再次重构,使结果能更加精确。

损失函数

semetic -> embedding space 相同与不同。


semetic -> embedding space 类似。

embedding space -> reconstruction 重构。

总损失函数

预测函数

寻找三元组

Xi寻找可直接根据标签寻找相同类。Xj和Xk可有多种寻找方法,其中作者选取了最具代表性且保留最大信息的方法。

Xj的寻找。首先在训练集样本中寻找满足关系b的m个样本,然后分别计算损失函数O2,选取损失最大的样本为Xj。

Xk的寻找。首先在训练集样本中寻找满足关系c的m个样本,然后分别计算损失函数O1,选取损失最大的样本为Xj。

发布于 2019-01-14 11:41