文章目录
Abstract
现存re-id方法要么假定了输入的行人图像是充分对齐的,要么依赖于注意力选择机制来标定未对齐的图像。因此当行人图像中存在较大的姿势变化,或者标定时存在检测错误时,这类方法将表现不佳。
本文提出(1)注意力选择(attention selection)和特征表达(feature representation)联合学习的方法,最大化不同层面的视觉注意力之间的互补信息。(2)Harmonious Attention模型联合学习soft pixel attention和hard regional attention,同时优化特征表达。
1 Introduction
为了解决由于视角不同、遮挡问题等带来的图像不对齐问题,attention selection变得非常有必要。一个普遍的策略是局部区域标定和显著性加权,但这类方法依赖于手工特征,很少有深度学习的方法。并且为数不多的深度学习方法隐性的假定了大量标签训练数据集的存在,采用的网络模型复杂度较高。此外,它们只粗略考虑了region-level,而忽略了细颗粒度pixel-level的显著性。当训练集中只有少量标注数据,且行人图像不对齐程度较大背景较杂乱时,这类方法不够有效。
本文主要贡献:
(1)多颗粒度注意力选择机制和特征表达联合学习用于优化行人重识别 (first attempt of jointly deep learning multiple complementary attention)
(2)提出HA-CNN联合学习hard region level和soft pixel-level attention,同时优化特征表达
(3)提出cross-attention交互学习机制进一步增强注意力选择和特征表达之间的兼容性
2 Related Work
3 Harmonious Attention Network
- hard attention & soft attention
- global feature & local feature
——最大化互补信息,增强判别性,简化cnn模型
HA-CNN模型包活两个分支:
(1)local branch(包括T个具有相同的结构的stream):每个stream分别用于学习T个局部图像区域中最显著的视觉特征
(2)global branch:用于学习整个行人图像的最优全局特征
对于每个分支,选择Inception-A/B单元作为基础的building blocks。
特征提取
全局分支包括3个Inception-A和3个Inception-B,局部分支的每个stream包含3个Inception-B,每个Inception的宽度(通道数)用
d
1
d_1
d1、
d
2
d_2
d2、
d
3
d_3
d3表示。全局网络最后通过全局平均池化层和全连接层之后输出一个512维的向量。局部网络也同样采用一个512维的全连接特征层来将所有stream的输出融合到一起。
注意力选择
考虑harmonious attention learning,学习两个互补的注意力maps,一个hard attention用于局部分支,一个soft attention用于全局分支。
最后采用跨注意力交互学习机制(cross-attention interaction learning scheme),同时优化每个分支的判别性特征表达。
3.1 Harmonious Attention Learning
HA采用一种学习策略可以用少量的参数同时学习三种不同类型的注意力:软空间注意力、软通道注意力和硬区域注意力。
HA模块的输入是一个三维张量
X
l
∈
R
h
×
w
×
c
\boldsymbol{X}^l\in\mathcal{R^{h \times w \times c}}
Xl∈Rh×w×c,
h
,
w
,
c
h,w,c
h,w,c表示高度宽度通道数,
l
l
l表示该模块在整个网络中的层数(网络中存在很多个这样的模块)。
(
I
)
(\bold{I})
(I)软空间通道注意力
学习一个与
X
\boldsymbol{X}
X相同大小的显著性权重映射
A
l
∈
R
h
×
w
×
c
\boldsymbol{A}^l\in\mathcal{R^{h \times w \times c}}
Al∈Rh×w×c,考虑到空间注意力和通道注意力之间的独立性,可以在学习时将其进行如下分解:
A
l
=
S
l
×
C
l
\boldsymbol{A}^l=\boldsymbol{S}^l \times \boldsymbol{C}^l
Al=Sl×Cl
- 空间注意力
上图绿色框所示,输入 h × w × c h \times w \times c h×w×c的图像,先经过通道的平均池化(0个参数):
由于所有通道享有同样的空间注意力map,所以该池化是合理的。同时这种设计压缩了输入的size,可以减少下一步卷积所需参数个数。
再经过卷积核为 3 × 3 3\times3 3×3步长2的卷积层(9个参数),通过双线性差值恢复原大小 h × w h \times w h×w(0个参数),最后经过 1 × 1 1\times1 1×1步长1的卷积(1个参数)用于自动学习一个fusion scale使空间注意力和后面学习的通道注意力进行最优的结合。
- 通道注意力
如上图黄色框所示,输入 h × w × c h \times w \times c h×w×c的图像,先经过一个池化层(0个参数)将空间分布的特征信息整合成通道特征( 1 × 1 × c 1 \times 1 \times c 1×1×c):
再通过 c r \dfrac{c}{r} rc个 1 × 1 1\times1 1×1步长为1的卷积得到 1 × 1 × c r 1 \times 1 \times \dfrac{c}{r} 1×1×rc的特征,( c 2 r \dfrac{c^2}{r} rc2个参数),最后通过 c c c个 1 × 1 1\times1 1×1步长为1的卷积得到 1 × 1 × c 1\times1\times c 1×1×c的特征( c 2 r \dfrac{c^2}{r} rc2个参数)。
如果直接用c个 1 × 1 1\times1 1×1的卷积核进行卷积,需要 c 2 c^2 c2个参数,而本文设计两层卷积只用 2 c 2 r \dfrac{2c^2}{r} r2c2个参数。
最后,将空间注意力分支得到的 h × w × 1 h\times w\times 1 h×w×1h和通道注意力分支得到的 1 × 1 × c 1\times1\times c 1×1×c相乘之后,再经过 c c c个 1 × 1 1\times1 1×1的卷积核,得到最终的软注意力采用sigmod操作将其正则化到0.5-1之间。这是因为空间和通道注意力并不是完全互斥的,它们之间也存在一定的互补关系。
(
I
I
)
(\bold{II})
(II)硬区域注意力
通过学习如下转换矩阵来定位T个潜在的显著性区域:
通过变换两个尺度参数(
s
h
,
s
w
s_h,s_w
sh,sw)和空间位置(
t
x
,
t
y
t_x,t_y
tx,ty)来对图像进行裁剪,平移和缩放变换。为了减小模型复杂度,事先固定区域大小即
s
h
,
s
w
s_h,s_w
sh,sw的值,因此学习的模型只用输出T对
t
x
,
t
y
t_x,t_y
tx,ty的值。
如上图3d所示,硬注意力学习时采用两层的网络结构,第一层是全连接层,我们将通道注意力第一层的输出(
1
×
c
1\times c
1×c)作为全连接层的输入,然后输出一个2T维的向量,即全连接层共
2
×
T
×
c
2\times T\times c
2×T×c个参数。第二层采用tanh缩放,将2T个位置缩放到
[
−
1
,
1
]
[-1,1]
[−1,1]的范围中(表示在图片中的百分比位置)。取到负值时适用于显著性区域超出了图像边界,即行人只有部分位置被拍摄到的情况。
(
I
I
I
)
(\bold{III})
(III)跨注意力交叉学习
对于第
l
l
l个level,采用第k个区域的全局特征
X
G
(
l
,
k
)
\boldsymbol{X}^{(l,k)}_G
XG(l,k)和其相应位置的局部特征
X
L
(
l
,
k
)
\boldsymbol{X}^{(l,k)}_L
XL(l,k)相结合:
其中
X
G
(
l
,
k
)
\boldsymbol{X}^{(l,k)}_G
XG(l,k)是由
l
+
1
l+1
l+1层得到的硬注意力区域输入回来的对应到
l
l
l层的相应位置的全局特征。
(例如第一层HA模块输出的全局特征为 40 × 16 × d 1 40\times16\times d_1 40×16×d1,经过两个Inception后将大小为 20 × 8 × d 2 20\times8\times d_2 20×8×d2的特征输入给第二层HA模块,学到一个同样大小为 20 × 8 × d 2 20\times8\times d_2 20×8×d2的软注意力权重和T个大小为 12 × 14 12\times14 12×14硬注意力区域的位置坐标,并输出第二层的全局特征 20 × 8 × d 2 20\times8\times d_2 20×8×d2,第一层的局部特征由InceptionB输出的 12 × 14 × d 1 12\times14\times d_1 12×14×d1以及第一层全局特征 40 × 16 × d 1 40\times16\times d_1 40×16×d1对应第二层输回来的硬注意力区域位置的特征相加得到。)
这种交叉学习的方法相当于把global branch学到的知识分给了local branch,那么在学习local feature时可以适当简化local branch网络。
反向传播训练时,由于global的参数对local部分也有影响,所以计算梯度时也要加上局部损失对它的梯度。
4 Experiment
4.1 与现有方法对比
- Market 1501
- DukeMTMC
- CUHK03
4.2 进一步分析讨论
- 不同attention的影响
结果表明,加上不同attention各自都能取得好的效果,将其联合应用效果更好。 - cross-attention interaction learning的作用
- 局部和全局特征相结合的作用
- 可视化
- 网络复杂度