论文:《Learning Similarity Conditions Without Explicit Supervision》
论文地址:https://arxiv.org/pdf/1908.08589.pdf
代码地址:https://github.com/rxtan2/Learning-Similarity-Conditions
本文首发于 https://mp.weixin.qq.com/s/WHnYNvWWkPmqh1HrytCHqg
联系方式:
Github:https://github.com/ccc013
知乎专栏:机器学习与计算机视觉,AI 论文笔记
微信公众号:AI 算法笔记
论文笔记
1. 简介
目前搭配方面的工作都比较依赖于多种相似条件,比如在颜色、类型和形状的相似性,通过学习到基于条件的 embedding,这些模型可以学习到不同的相似信息,但是也受限于这种做法以及显式的标签问题,导致它们没办法生成没见过的类别。
所以,本文希望在弱监督的条件下,将不同的相似条件和属性作为一个隐变量,学习到对应的特征子空间,如下图所示,对比了本文的方法和先前的一些工作。
先前的工作需要用户定义的标签来学习不同相似性的特征子空间,比如上衣和裤子的子空间,或者裤子和鞋子的子空间。而对于本文的方法来说,并不需要这些显式的标签来学习特征子空间。
本文是提出了一个相似条件向量网络(Similarity Condition Embedding Network,SCE-Net)模型从一个统一的向量空间中联合学习不同的相似条件,一个整体结构示意图如下所示:
- 每张图片会经过一个 CNN 网络,然后映射到统一的向量空间中
- 该网络比较核心的部分是一系列平行的相似条件 masks,即图中的 C 1 , C 2 , ⋯ , C M C_1, C_2,\cdots, C_M C1,C2,⋯,CM,这些 masks 是通过图中的条件权重分支所学习到的;
- 图中的条件权重分支可以被看做是一种 attention 机制,对正在进行比较的对象,动态分配每种条件 mask;
本文的贡献归纳如下:
- 本文提出了一个 SCE-Net 模型,它可以在没有显式类别或者属性的监督条件下,从图片中学习到丰富的不同相似条件的特征;
- 本文提出的 SCE-Net 模型也很适合 zero-shot 任务中的新类别和属性;
- 更重要的是,我们证明了一个动态加权机制在帮助一个弱监督模型学习不同相似概念的表示是不可或缺的。
2. 方法
这部分将介绍本文提出的 SCE-Net 模型,它是在一个弱监督条件下,将不同的相似条件以及属性当做隐变量,从而学习到对应的特征子空间。
首先输入的图片将输入到 CNN 中提取特征,这里我们用 g ( x ; θ ) g(x;\theta) g(x;θ) 进行表示,其中 x 表示输入图片,而 θ \theta θ 表示模型参数。本文的网络主要包含两个部件:
- 一套平行相似条件的掩码;
- 一个条件权重分支
这会在接下来的两个小节里分别介绍,然后第三小节会介绍在不同输入形式下,条件权重分支的变形。
2.1 学习相似的条件
本文的模型的一个关键组件就是一组 M 个平行的相似条件掩码,记作 C 1 , C 2 , ⋯ , C M C_1, C_2,\cdots,C_M C