论文链接:GRL框架论文
论文总结
本文提出一个基于视频的全局引导的交互学习框架(GRL Global-guided Reciprocal Learning)。
- 提出全局引导相关估计生成局部特征和全局特征的特征相关图,然后将区分特征分界为高相关特征和低相关特征。
- 提出全局特征估计模块生成解纠缠视频表示下的引导图。
- 提出一种新的TRL(时间交互学习)模块,可以有效监控信息和视频中的细粒度信息,用于依次增强高相关性语义信息和积累低相关性亚关键线索。
模型特点:
可以增强来自高相关区域的显著信息,还可以积累来自低相关特征的细粒度线索。
概述:本文将全局特征与帧中像素级局部特征相关联,以生成两个相关图,这两个相关图用于将一般特征分解为高相关性和低相关性特征。
高相关性特征意味着在时间上频繁出现在空间上显著。需要增强策略显著挖掘时空信息。
低相关性意味着特征不明显不连续但是有意义。需进一步揭开时空特征挖掘细粒度线索。引入临时记忆策略逐帧对特征进行分析。
算法过程:
视频–(RRS严格随机采样)–> 训练视频帧 --(主干网络ResNet50)–> 提取帧级特征 --TAP&GAP(时间平均池化,全局平均池化)–> 视频级表示 --(GCE全局指导的相关性估计)–>相关性图 -->高级相关性特征/低级相关性特征–(TRL时间交互学习)–>增强和积累前向和后向的解纠缠特征–(OIM在线实例损失验证损失)–>优化后的网络
具体部件分析:
GFD(Global-guided Feature Disentanglement):
GCE模块解开两个互补的空间特征。
一个标注每一帧的注意力信息,另一个保留细粒度的亚临界线索
具体部件分析:
在视频sample出T帧来,
ν
=
{
I
1
,
I
2
,
.
.
.
,
I
T
}
\nu=\{I_1,I_2,...,I_T\}
ν={I1,I2,...,IT}作为输入,在ResNet50提取出帧级特征,
χ
=
{
X
t
∣
t
=
1
,
2
,
.
.
.
,
T
}
\chi=\{X_t|t=1,2,...,T\}
χ={Xt∣t=1,2,...,T},用TAP和GAP获取视频级别的表示:
F
g
=
∑
t
,
h
,
w
=
0
T
,
H
,
W
X
t
,
h
,
w
H
×
W
×
T
F_g = \frac {\sum^{T,H,W}_{t,h,w=0}X_{t,h,w}} {H \times W \times T}
Fg=H×W×T∑t,h,w=0T,H,WXt,h,w
GCE将帧特征
X
t
,
F
g
X_t,F^g
Xt,Fg作为输入,
F
g
F^g
Fg经过线性投影并扩展成与
X
t
X_t
Xt同样size的
F
~
g
\tilde F^g
F~g与
X
t
X_t
Xt连接起来,整个全局和局部特征并共同推断相关度。
全局引导下与 X t X_t Xt有关的特征映射 R t ∈ R 1 × H × W R_t\in R^{1\times H \times W} Rt∈R1×H×W可计算为: R t = σ ( W r ( [ F ~ g , X t ] ) ) R_t = \sigma(W_r([\tilde F^g,X_t])) Rt=σ(Wr([F~g,Xt])), W r W_r Wr是两个 1 × 1 1 \times 1 1×1的卷积层的可学习权值,它是通过BN层和ReLU激活函数插入的。
低相关图是通过反转获得相关图得到的。将相关图与原始帧级特征相乘激活不同的区域最后在全局表示指导下将帧级特征分解为:
高相关特征: X t h = X t ⊙ R t X^h_t=X_t \odot R_t Xth=Xt⊙Rt
低相关特征: X t l = X t ⊙ ( 1 − R t ) X^l_t = X_t \odot (1-R_t) Xtl=Xt⊙(1−Rt)
TRL机制
用来探索高相关性和低相关性之间的关系,引入EMUs(Enhancement and Memory Units)增强高相关性GCE在全局视图中突出显示信息区域。最后通过前向和后向方向提供的特征被集成为输出结果。
EMU输入: 高相关性特征,低相关性特征,来自先前时间步长的积累
X
t
h
,
X
t
l
,
M
t
−
1
X^h_t,X^l_t,M_{t-1}
Xth,Xtl,Mt−1,
D
t
=
(
f
2
(
M
t
−
1
)
−
f
1
(
X
t
h
)
)
2
D_t = (f_2(M_{t-1})-f_1(X^h_t))^2
Dt=(f2(Mt−1)−f1(Xth))2
此处的减法模拟的事语义上的差异,
f
1
,
f
2
f_1,f_2
f1,f2两个带有ReLU激活函数独立的
1
×
1
1 \times 1
1×1卷积操作。
差异映射有GAP汇总以生成每个通道的总体响应
d
t
∈
R
C
d_t \in R^C
dt∈RC,引入特征选择的通道注意力机制,
a
t
=
σ
(
W
c
(
d
t
)
)
a_t = \sigma(W_c(d_t))
at=σ(Wc(dt)),
W
c
W_c
Wc是生成信道权重的参数。
X
′
t
h
=
(
1
+
a
t
)
⊙
X
t
h
{X'}^h_t = (1 + a_t) \odot X^h_t
X′th=(1+at)⊙Xth
设计内存块积累细粒度特征,用于充分低相关性特征。
将t时刻的低相关性特征添加到t-1步的累积特征中,
M t = R e s ( M t − 1 + X t l ) M_t = Res(M_{t-1}+X^l_t) Mt=Res(Mt−1+Xtl),开始时, M 0 M_0 M0被初始化为 { X t l } t = 1 T \{X^l_t\}^T_{t=1} {Xtl}t=1T的均值。
双向信息集成:
前进方向定义为视频帧的排列顺序。
前后向的增强特征,
F
t
h
,
1
,
F
t
h
,
2
F^{h,1}_t,F^{h,2}_t
Fth,1,Fth,2,累计特征
M
T
1
,
M
T
2
M^1_T,M^2_T
MT1,MT2在GAP后被连接起来,然后使用全连接层集成更鲁棒的表示:
F
t
h
=
W
h
(
[
F
t
h
,
1
,
F
t
h
,
2
]
)
F
T
l
=
W
l
(
[
M
T
1
,
M
T
2
]
)
F^h_t = W_h([F^{h,1}_t,F^{h,2}_t]) \\ F^l_T = W_l([M^1_T,M^2_T])
Fth=Wh([Fth,1,Fth,2])FTl=Wl([MT1,MT2])
增强高相关区域的显著特征,并自适应的从低相关特征区域空挖掘亚关键细节。
训练方式:
使用交叉熵损失和OIM,对输入的向量对
{
p
j
,
g
k
}
\{p_j,g_k\}
{pj,gk}有
ℓ
v
e
r
i
=
−
1
J
∑
n
=
1
J
y
i
log
(
[
p
j
,
g
k
]
)
+
(
1
−
y
i
)
log
(
1
−
[
p
j
,
g
k
]
)
\ell_{veri} = - \frac 1 J \sum^J_{n=1}y_i\log([p_j,g_k])+(1-y_i)\log(1-[p_j,g_k])
ℓveri=−J1n=1∑Jyilog([pj,gk])+(1−yi)log(1−[pj,gk])
J
J
J是采样序列对的总和,
y
i
y_i
yi表示
[
p
j
,
g
k
]
[p_j,g_k]
[pj,gk]的真实值标签,
[
p
j
,
g
k
]
∈
(
0
,
1
)
[p_j,g_k]\in (0,1)
[pj,gk]∈(0,1),若属于同一个人,则
y
i
=
1
y_i=1
yi=1否则为0.
OIM损失函数使用查找表来存储训练集中所有标识特征,而不是传统的具有多类softmax层的交叉熵。可以将OIM分为帧级别的和视频级别的。
帧级别的OIM:
ℓ
f
=
−
1
N
×
T
∑
n
=
1
N
∑
t
=
1
T
∑
i
=
1
I
y
t
,
n
i
log
e
W
i
,
F
t
,
n
h
∑
j
=
1
I
e
w
j
,
F
t
,
n
h
\ell_f = - \frac 1 {N\times T}\sum^N_{n=1}\sum^T_{t=1}\sum^I_{i=1}y^i_{t,n}\log \frac {e^{W_i,F^h_{t,n}}} {\sum^I_{j=1}e^{w_j,F^h_{t,n}}}
ℓf=−N×T1n=1∑Nt=1∑Ti=1∑Iyt,nilog∑j=1Iewj,Ft,nheWi,Ft,nh
F
t
,
n
h
F^h_{t,n}
Ft,nh第n个视频第t帧的增强高相关特征向量,若第n个视频频第t帧图像属于第i个人,则
y
t
,
n
i
=
1
y^i_{t,n}=1
yt,ni=1,否则为0.
W i W_i Wi是与第i个的特征系数是相关联的。
在最后一个时间步长有存储块累积的特征
F
t
l
F^l_t
Ftl由视频级别的OIM损失来监督,其试图从低相关区域逐步收集所有亚关键细节。
ℓ
v
=
−
1
N
∑
n
=
1
N
∑
i
=
1
I
y
n
i
log
e
W
i
F
t
l
∑
j
=
1
I
e
W
j
F
T
l
ℓ
=
λ
1
ℓ
f
+
λ
2
ℓ
v
+
λ
3
ℓ
v
e
r
i
\ell_v = - \frac 1 N \sum^N_{n=1}\sum^I_{i=1} y^i_n\log \frac {e^{W_iF^l_t}} {\sum^I_{j=1}e^{W_jF^l_T}}\\ \ell = \lambda_1 \ell_f + \lambda_2 \ell_v + \lambda_3 \ell_{veri}
ℓv=−N1n=1∑Ni=1∑Iynilog∑j=1IeWjFTleWiFtlℓ=λ1ℓf+λ2ℓv+λ3ℓveri
实验设置:
硬件和数据集
作者在实验中所使用的数据集:PRID-2011,MARS,iLIDS-VID。
iLIDS-VID:小数据集,由300个不同身份的600个视频序列组成,两个摄像头来采集图像。每个视频序列包含23-192帧。
PRID-2011:两个非重叠摄像机的200个身份的400个图像序列组成。序列长度5-675帧不等,但是只使用超过21帧的序列对。
MARS:大规模数据集,有18000视频序列1261个身份组成。所有视频序列由至少两个摄像机捕获。
评估标准:CMS累计平均特征和mAP平均精度。因为iLIDS-VID图库集中只包含一个正确的匹配,所以只有累积的重识别精度。
设备:i4790 CPU 和 两个 NVIDIA GTX 2080ti GPU(12G内存)
BatchSize = 16, T=8,视频图像大小256 * 128 输入图像经过随机裁剪水平翻转和随机擦除进行增强。
实验结果
一个采样序列通常会有另一个相同标识不同角度的视频序列的序列来填充。删除最后的空间下采样来提高特征分辨率。训练时,使用多级OIM损失和二元交叉熵损失对网络进行50个epoch的训练。
实验结果如上图所示。
消融实验:
- 看模型中如果去掉一部分对模型有什么影响。 F g F^g Fg表示不带解纠缠元素的全局特征向量, F l F^l Fl代表最终特征向量,具有未纠缠的低相关特征,并有视频级OIM损失来监督。 F h F^h Fh表示最终的特征向量, 具有分离的高相关特征,由帧级OIM损失进行监督。+GCE意味着我们添加了全局引导的相关性估计来引导空间特征的解纠缠。解纠缠之后性能有了显著的提高。因此全局视图下引导特征解纠缠是有益的。+TRL意味着双向的时间交互学习用于增强和积累时间信息。**低相关性和高相关性特征的组合可以进一步提高性能。**上述结果清楚地证明了我们所提出的GCE和TRL模块的有效性。
- EMU模块的作用:GRL是本文的方法,第二行移除了EMUs。其中高相关特征 X t h X^h_t Xth在没有信道关注的情况下受到帧级OIM损失的监督。mAP和等级1的准确率在MARS上分别下降了1.4%和0.9%。增强块和记忆块都有利于学习更多有区别的空间特征。
- 不同帧的长度对模型的影响:用不同的序列长度训练和测试我们的双向全局引导的交互学习。增加序列长度获得更好的性能,8的长度获得最佳性能。一个可能的原因是,**随着序列长度的增加,我们的时间往复学习可以捕捉到更细粒度的线索。**太长的序列对于训练时间交互学习模块是不利的。
- 时间方向的影响,验证GRL时间方向的有效性。双向交互学习表现出更高的性能,这得益于前向和后向时间学习的结合。实验结果表明,通过往复学习得到的聚集特征对识别更为鲁棒。
- 多尺度的OIM损失影响:F_OIM用于帧级损失,V-OIM用于视频的损失。
可视化分析:
高相关图中学习的特征相比,前向或后向过程中的低相关图的特征可以用红色边界框捕获不连贯和有意义的线索。在同一个时间步长内,前向和后向过程的特征之间存在一定的差异。因此,收集更多有区别的信息是有用的。视觉映射能进一步验证该方法能够在时间上突出最显著和对齐的信息,在空间上捕捉次关键线索。