Pr(Pi=Pj|vi,vj)
= Pr(Pi=Pj|Si=Sj) * Pr(Si=Sj|vi,vj) + Pr(Pi=Pj|Si≠Sj) * Pr(Si≠Sj|vi,vj)
= (1-Ep) * Pr(Si=Sj|vi,vj) + En* (1-Pr(Si=Sj|vi,vj) )
= (1-Ep-En) * Pr(Si=Sj|vi,vj) + En (论文公式8)
推导,Pr(ci,cj,∆ij|Pi=Pj) 和Pr(ci,cj,∆ij|Si=Sj) 的关系(这个没法像视觉相似度那样直接推导,因为因果关系不同)
Pr(ci,cj,∆ij|Si=Sj)
= Pr(ci,cj,∆ij|Pi=Pj) * (Pr(Pi=Pj)|Si=Sj) + Pr(ci,cj,∆ij|Pi≠Pj) * (Pr(Pi=Pj)|Si≠Sj)
= Pr(ci,cj,∆ij|Pi=Pj) * (1- Ep) + Pr(ci,cj,∆ij|Pi≠Pj) * Ep
同样可以得到
Pr(ci,cj,∆ij|Si≠Sj)
= Pr(ci,cj,∆ij|Pi=Pj) * En + Pr(ci,cj,∆ij|Pi≠Pj) * (1 - Ep)
联立上面两个式子解方程,消掉Pr(ci,cj,∆ij|Si≠Sj) 可以得到
Pr(ci,cj,∆ij|Pi=Pj)
= (1 - Ep - En)-1(1-En) * Pr(ci,cj,∆ij|Si=Sj) - Ep * Pr(ci,cj,∆ij|Si≠Sj) (论文公式5)
其中有个新概念Pr(ci,cj,∆ij|Si≠Sj) ,意味着图像分类器认为不是同一个人的时候,这种时空点出现的概率,实现上也不难,统计视觉相似度top10以后的点对应的时间差,作为反时空概率模型即可。
我们把两个近似(公式5和公式8)代进公式7,
可以得到
Pr(Pi=Pj | vi, vj, ∆ij, ci, cj)
= (M1 + En/(1 - En - Ep))((1-En)M2 - EpM3)/Pr(∆ij, ci, cj))(论文公式9)
其中,
M1 = Pr(Si=Sj|vi,vj),视觉相似度
M2 = Pr(∆ij,ci,cj|Si=Sj),正时空概率模型
M3 = Pr(∆ij,ci,cj|Si≠Sj),反时空概率模型
分母Pr(∆ij, ci, cj))为随机概率模型
以上四项都是可以从无标签目标数据集中结合图像分类器求解到的,并且,当En=Ep=0时(意味着图像分类器完全准确),这个公式可以退化为近似解:
Pr(Si=Sj|vi,vj) * Pr(ci,cj,∆ij|Si=Sj) /P(ci,cj,∆ij)
到这里,你是不是以为我们就可以用公式9算融合评分了?非也,公式9中,还有个问题:Ep,En是未知的!
如果想要正儿八经地算Ep,En,要求目标数据集有标签,然后我们用图像分类器先算一遍,数数哪些算错了,才能把Ep,En算出来。因此我们用两个常数α和β分别替代Ep,En,整个模型的近似就都集中在了这两个常数上。
在论文Table1,2,3,4,Fig6相关的实验中,α=β=0,并且,在Fig5中,我们设置了其他常数来检查模型对于这种近似的敏感性
可以看到,虽然α和β较大时,准确率会有所下降,但是仍然能保持一定的水准,当你看到纯图像分类器的准确率之后,还会发现融合模型的准确率一直高于纯图像分类器。
你可能注意到了,图中α+β都是小于1的,这是因为,只有当Ep+En</sub><1且α+β<1时,融合模型的Ep+En才会小于图像模型的Ep+En,说人话就是,只有图像模型不是特别糟糕,且近似的参数也比较正常的时候,融合模型才会比单个的图像模型要准,融合才有意义。这个定理的具体的证明放到论文附录里了,有兴趣的可以邮件私信我拿附录去看,这里摆出来就太多了。
于是我们得到了一个由条件概率推断支撑的多模态数据融合方法,称为贝叶斯融合
看一眼融合得到的时空分布图:
再从数据上看一眼融合的模型有多强:
源数据集 目标数据集 纯 图像 结果 融合 时空 结果rank-1 rank-5 rank-10 rank-1 rank-5 rank-10
CUHK01 GRID 10.70 20.20 23.80 30.90 63.70 79.10
VIPeR GRID 9.70 17.40 21.50 28.40 65.60 80.40
Market1501 GRID 17.80 31.20 36.80 49.60 81.40 88.70
GRID Market1501 20.72 35.39 42.99 51.16 65.08 70.04
VIPeR Market1501 24.70 40.91 49.52 56.18 71.50 76.48
CUHK01 Market1501 29.39 45.46 52.55 56.53 70.22 74.64
可以看到,
跨数据集直接迁移效果确实很差
融合之后的准确率Rank1准确率变成2-4倍
说明这种融合方式是确实行之有效的。
基于Learning to Rank的迁移学习