整体框架
本文主要有三个贡献点:
- 通过视角感知(viewpoint-aware)的注意力模型,获取多个视角的注意力映射(attention map)
- 通过GANs机制,通过单视角特征和注意力映射生成多视角特征
- 设计一种度量方式,拉近同id的图片之间的空间距离,推远不同id的图片之间的空间距离
整体框架图如下所示:
整体框架
本文简要介绍注意力模型(attention model) 和 多视角生成网络(multi-view generative network)
Viewpoint-aware attention model Mechanism
本文采用注意力模型,将网络模型的注意力集中到图片所含视角和目标视角的“交集”。
注意力模型
Attention map(即一个用来指示注意力区域的mask)由一个上下文向量(context text)产生的,而这个上下文向量在一组标签的弱监督下训练而来,标签共有三个维度,分别表示前、侧、后三个方位。
论文中将输入图像划分成N个区域,\{u_1, u_2, \dots, u_N\},其中u_i是256维的向量。
在step t,可以用如下公式得到针对某特定区域的上下文向量
上下文向量
Attention函数的具体公式如下所示。三个参数分别是上一个step的上下文向量、输入图像、和五个中央视点向量(central viewpoint features)中代表所需方向的一个。
注意力权重(attention weights)\{a_n^t\}_{n=1}^N通过下方第二个公式得到
上下文向量的初始化方式如下:
初始化
attention model最终目的是生成其它视角下的feature。输入图片自带视角的特征由分类网络F的Conv4特征提取,剩下的几个视角则由attention map \{a_v\}_{v=1}^V做mask运算而来。
疑点:具体实现中,是如何将256维的 c^t和3维的标签关联起来计算loss的?通过将c^t连接一个输出为3维的全连接层来预测概率?
Adversarial Multi-view Feature Learning
文中从GANs的思路中受到启发,用生成/对抗的方式将单视角的特征转化为多视角特征。
-
文中采用了两个生成器,G_f的输入是单视角图像的注意力特征(attention feature), 而G_r的输入是和G_f同一ID的、不同视角的真实图片的特征。
-
生成器G_f的目标不是令判别器的输出最大化,而是令单视角数据在判别器D第四层的特征具有和多视角数据的同一层特征具有相同的统计分布。(这一点从下图中的loss计算公式中可以看出)
Rather than maximizing the out- put of the discriminator for generated data, the objective of feature matching is employed to optimize Gf to match the statistics of features in an intermediate layer of D.
loss公式如下所示:
屏幕快照 2018-06-30 下午10.04.00.png
疑点:文中似乎没交代,D的判别概率是从哪来的。是2048维向量后面连了一个全连接层?L_{Advers}第一行中,D的输出可是被送入了log函数。
Optimization
这一段主要讲训练步骤
- 用分类网络F提取车辆特征
- 用K近邻将车辆特征按照视角聚成五类,训练注意力模型。
- G_r和D联合训练(注:G_r和G_f必须分开训练,否则会因为特征分布差异过大而难以收敛)
- G_f和D联合训练
- 引用L_{Reid}联合训练整个网络,F和G_r除外。
当前只看到了方法部分,正准备看实验部分。之前没有接触过attention机制,对自己文中的中文翻译感到惶惶不安,所以该附英文原词的都附上了,希望不会带来阅读障碍。
感想
第一次写技术博客,写于第二次读这篇论文的过程中。动笔写一写,发现了自己很多的弱点,比如对英文专业名词中文翻译的准确度还不够;平时读论文总是习惯性地浅尝辄止,也导致对算法的语言表达能力不足。
网友评论