Attributes as Operators
Tushar Nagarajan and Kristen Grauman
The University of Texas at Austin
{tushar,grauman}@cs.utexas.edu
1.Introduction
属性和物体在本质上是两种东西:物体是物理上存在的,而属性是这些物品的特质。然而现有的属性识别方式很大程度上和物体识别的方法相同。也就是用有着根据属性分类的标签的图像来训练有分辨能力的model。例如使用CNN的方法。
上述这种做法在数据的效率和泛化能力上都是有问题的。这种方法默认了在训练过程中,属性已经与所有潜在的对象相结合(不符合实际)以及属性的影响在所有对象中都有着相同的表现。
作者用上图说明了属性与对象之间的差异,对于切片这个属性,没有很好的视觉原型来定义,而对于车子这样的对象则不同。由此作者提出将属性视作一种操作,学习属性如何对对象进行转换。一旦学习完成,属性对对象的影响可以泛化到未见过的对象上。
比起将属性视为高维空间中可分类的点,作者将属性视作一种操作,可以将视觉数据从一种外观转换为另一种。
2.Approach
2.1 Unseen pair recognition as embedding learning
注意到P包含了未在训练集中出现的A-O对,如果仅仅将推理过程定义为分类问题,是无法完成对未出现的A-O对识别的。
2.2 Attribute-operator model for composition
他的视觉原型是什么样的?
因此,作者将每一个对象表达为D维的向量,使用GloVe 词汇映射.每一个属性a都对应于一个函数Ga
2.3 Learning objective for attributes as operators
下面是一些正则化项
L-aux:要求g(p)=MaO得到的向量能够分别正确预测出对应的A/O,防止训练过程中丢失A/O信息。
Linv:利用属性的可逆性质,隐式的合成新的对象来进行正则化.
首先左乘Mα_inv相当于从原始图像中移除了属性α,然后乘以Mα'以增加一个新的随机属性,生成的伪实例f(x')拥有一个新的O-A对,例如,对于sliced banana,移除slice并增加ripe属性后,将slice banan作为负样本,ripe banana作为正样本。
Lcomm:要求属性操作之间的可交换性,例如sliced banana进行ripe操作之后效果等同于ripe banana进行slice操作
Lant:要求反义的属性操作可以相互抵消。例如'钝'属性抵消'锋利'属性,'ancient'属性抵消'modern'属性
2.4 Training and inference
训练过程的Loss由以上5个loss组合而成,进行端到端的训练,更新的参数包括对图片x的映射f(x),属性操作对应的矩阵Mα,Object向量o,以及对Mα*o进行分类的两个全连接层以及Laux用到的Softmax分类器。
在训练过程,给出输入的图像以及对应的O-A对,得到相应的f(x)以及Mα*o,然后进行训练。
在推理过程,计算所有O-A对,计算f(x),根据f(x)与O-A对之间的欧式距离排序决定预测出的结果。
总结:本文将属性视为对对象的一种操作,其中属性映射为一个矩阵,对象为一个列向量, O-A对就是两者的乘积。类似于数学上对向量进行旋转/平移等操作。并且将图像与O-A对映射到同一个空间。有种在模板上加上各种Mask的感觉。
对于时尚衣物来说,这种属性的定义也许可以迁移。比如对象可以是各种基本款的裙子 T恤 衬衫,袖子的长短/男士女士/风格/颜色等都可以视为在基本款进行各种属性操作。