Few-Shot Action Recognition with Compromised Metric via Optimal Transport

这篇文章基于最优传输OT来设计distance函数
paper: https://arxiv.org/pdf/2104.03737.pdf


Motivation

在小样本行为识别方法中,作者分析大致可以分为两种。一种是基于aggregation,即将视频分为若干segment,提取每个segment特征,采用average pooling等方式对segment特征进行聚合得到一个视频级特征,设计一个距离函数,计算unseen类特征到seen类特征距离,得到预测标签;另一种是基于matching的方法,即提取视频的segment特征后,对两个视频的n个segment进行align操作,比如OTAM中采用DTW对齐路径,将对齐损失作为两个视频的距离。

基于aggregation的方法直接采用sum操作将n个特征转化为一个特征,忽略了long-term时间信息;而基于matching的方法采用了严格的对齐函数,损伤了视频的内容特征。因此作者提出结合这两个方法来设计一个distance函数,从而使得既可以保留内容信息又不会忽视时间信息。

相关知识

小样本问题描述

在这里插入图片描述
小样本的episodic训练过程,在meta-training阶段从 D t r D^{tr} Dtr中采样N-way K-shot任务进行训练优化模型;在meta-testing阶段,采样类不相交的N-way K-shot任务计算准确率,target就是在meta-testing阶段,在unseen类上获得高准确率。公式(1) (2) (3)描述该过程,其中 p ( y ^ j = n ∣ x j ) p\left(\hat{y}_{j}=n \mid \mathbf{x}_{j}\right) p(y^j=nxj)是unseen类到seen各个类的概率分布, D I S ‾ ( ϕ ( x j ) ; n ) \overline{\mathrm{DIS}}\left(\phi\left(\mathrm{x}_{j}\right) ; n\right) DIS(ϕ(xj);n)为两个视频的距离,目标是最小化交叉熵损失。

p ( y ^ j = n ∣ x j ) = exp ⁡ { − DIS ⁡ ‾ ( ϕ ( x j ) ; n ) } ∑ n ′ = 1 N exp ⁡ { − DIS ⁡ ‾ ( ϕ ( x j ) ; n ′ ) } p\left(\hat{y}_{j}=n \mid \mathbf{x}_{j}\right)=\frac{\exp \left\{-\overline{\operatorname{DIS}}\left(\phi\left(\mathbf{x}_{j}\right) ; n\right)\right\}}{\sum_{n^{\prime}=1}^{N} \exp \left\{- \overline{\operatorname{DIS}}\left(\phi\left(\mathbf{x}_{j}\right) ; n^{\prime}\right)\right\}} p(y^j=nxj)=n=1Nexp{DIS(ϕ(xj);n)}exp{DIS(ϕ(xj);n)} (1)

D I S ‾ ( ϕ ( x j ) ; n ) = 1 K ∑ ( x i , y j ) ∈ S t r ∧ y i = n dis ⁡ ( ϕ ( x i ) , ϕ ( x j ) ) \overline{\mathrm{DIS}}\left(\phi\left(\mathrm{x}_{j}\right) ; n\right)=\frac{1}{K} \sum_{\left(\mathrm{x}_{i}, y_{j}\right) \in \mathcal{S}^{t r} \wedge y_{i}=n} \operatorname{dis}\left(\phi\left(\mathrm{x}_{i}\right), \phi\left(\mathrm{x}_{j}\right)\right) DIS(ϕ(xj);n)=K1(xi,yj)Stryi=ndis(ϕ(xi),ϕ(xj)) (2)

min ⁡ ϕ ∑ T t r ∼ D t r ∑ ( x j , y j ) ∈ Q t r − log ⁡ p ( y ^ j = y j ∣ x j ) \min _{\phi} \sum_{\mathcal{T}^{t r} \sim \mathcal{D}^{t r}} \sum_{\left(\mathbf{x}_{j}, y_{j}\right) \in \mathcal{Q}^{t r}}-\log p\left(\hat{y}_{j}=y_{j} \mid \mathbf{x}_{j}\right) minϕTtrDtr(xj,yj)Qtrlogp(y^j=yjxj) (3)

从公式中可以看出,距离函数的设计会很大程度地影响分类的效率,因此如何设计distance函数,是小样本行为识别的一个关键问题。

Optimal Transform最优传输

最优传输问题定义一个几何来比较度量概率空间上的概率分布,基于我们设定的两种分布的cost matrix,它可以找到两个分布的最佳匹配来最小化传输代价。显然可以用在行为识别中,用于找到两个视频的最小传输代价。

定义1. Transportation Plan

对于两个离散分布 μ \mu μ ν \nu ν(d维概率分布集合),定义 Π ( μ , ν ) \Pi(\mu, \nu) Π(μ,ν)为传输三元组的集合,它包含了所有从 μ \mu μ ν \nu ν的合法传输路径。
Π ( μ , ν ) = { T ∈ R + d × d ∣ T 1 d = μ , T ⊤ 1 d = ν } \Pi(\mu, \nu)=\left\{\mathbf{T} \in \mathbb{R}_{+}^{d \times d} \mid \mathbf{T} 1_{d}=\mu, \mathbf{T}^{\top} \mathbf{1}_{d}=\nu\right\} Π(μ,ν)={TR+d×dT1d=μ,T1d=ν} (4)

定义2. Optimal Transport

给定一个代价矩阵 C ∈ R d × d \mathbf{C} \in \mathbb{R}^{d \times d} CRd×d,使用传输路径 T \mathbf{T} T μ \mu μ ν \nu ν的总代价可以定义为 ⟨ T , C ⟩ \langle\mathbf{T}, \mathbf{C}\rangle T,C μ \mu μ ν \nu ν之间的距离就定义为一个OT问题。

η C ≜ min ⁡ T ∈ Π ( μ , ν ) ⟨ T , C ⟩ \eta_{\mathrm{C}} \triangleq \min _{\mathrm{T} \in \Pi(\boldsymbol{\mu}, \boldsymbol{\nu})}\langle\mathbf{T}, \mathbf{C}\rangle ηCminTΠ(μ,ν)T,C (5)
公式(5)是经典的最优运输问题,但是解决这个问题在计算上很昂贵。向传输对象 T {\mathbf{T}} T添加熵正则化可以得到一个平滑版本的OT问题,从而使得目标函数为严格凸函数,有高效的算法对其求解。

定义3. Sinkhorn Distance

定义 T {\mathbf{T}} T的熵为 H ( T ) = − ∑ i = 1 d ∑ j = 1 d   T i j log ⁡ ( T i j ) \mathcal{H}(\mathrm{T})=-\sum_{i=1}^{d} \sum_{j=1}^{d} \mathrm{~T}_{i j} \log \left(\mathrm{T}_{i j}\right) H(T)=i=1dj=1d Tijlog(Tij),通过使用OT问题的一个平滑版本,得到了Sinkhorn Distance。

η C λ ≜ min ⁡ T ∈ Π ( μ , ν ) ⟨ T , C ⟩ − 1 λ H ( T ) \eta_{\mathrm{C}}^{\lambda} \triangleq \min _{\mathrm{T} \in \Pi(\mu, \nu)}\langle\mathrm{T}, \mathrm{C}\rangle-\frac{1}{\lambda} \mathcal{H}(\mathrm{T}) ηCλminTΠ(μ,ν)T,Cλ1H(T) (6)

定义3. Sinkhorn Algorithm

定义矩阵 G = e x p ( − λ C ) {\mathbf{G}}=exp(-\lambda\mathbf{C}) G=exp(λC)作为 λ C \lambda\mathbf{C} λC的组成元素,公式(6)的最优 T ∗ {\mathbf{T}^*} T可以转换为公式(7)。
T ⋆ = diag ⁡ ( u ) G diag ⁡ ( v ) \mathbf{T}^{\star}=\operatorname{diag}(\mathbf{u}) \mathbf{G} \operatorname{diag}(\mathbf{v}) T=diag(u)Gdiag(v) (7)
其中u和v是由迭代算法得到, u ← μ ⊘ ( G v ) , v ← ν ⊘ ( G ⊤ u ) \mathbf{u} \leftarrow \boldsymbol{\mu} \oslash(\mathbf{G} \mathbf{v}), \mathbf{v} \leftarrow \boldsymbol{\nu} \oslash\left(\mathbf{G}^{\top} \mathbf{u}\right) uμ(Gv),vν(Gu)

方法

首先采用3D卷积提取特征,将输入 x = [ x 1 , ⋯   , x m , ⋯   , x M ] \mathbf{x}=\left[\mathrm{x}^{1}, \cdots, \mathrm{x}^{m}, \cdots, \mathrm{x}^{M}\right] x=[x1,,xm,,xM]编码为 [ ϕ ( x 1 ) , ⋯   , ϕ ( x m ) , ⋯   , ϕ ( x M ) ] \left[\phi\left(\mathrm{x}^{1}\right), \cdots, \phi\left(\mathrm{x}^{m}\right), \cdots, \phi\left(\mathrm{x}^{M}\right)\right] [ϕ(x1),,ϕ(xm),,ϕ(xM)]

content distance

用OT方法,首先需要定义 μ \mu μ ν \nu ν,作者采用视频在segment上的分布作为 μ \mu μ ν \nu ν,然后使用Sinkhorn Distance测量两个视频的差异。使用公式(8)和(9)计算两个视频 x 1 {x_1} x1 x 2 {x_2} x2的语义距离, μ 1 \mu_1 μ1 μ 2 \mu_2 μ2为一个M维的随机分布,采用欧氏距离计算segment距离。

dis ⁡ S E ( x 1 , x 2 ) = min ⁡ T ∈ Π ( μ 1 , μ 2 ) ⟨ T , C S E ⟩ − 1 λ H ( T ) \operatorname{dis}^{\mathrm{SE}}\left(\mathrm{x}_{1}, \mathrm{x}_{2}\right)=\min _{\mathrm{T} \in \Pi\left(\boldsymbol{\mu}_{1}, \boldsymbol{\mu}_{2}\right)}\left\langle\mathbf{T}, \mathbf{C}^{\mathrm{SE}}\right\rangle-\frac{1}{\lambda} \mathcal{H}(\mathbf{T}) disSE(x1,x2)=minTΠ(μ1,μ2)T,CSEλ1H(T) (8)

C p q S E = ∥ ϕ ( x 1 p ) − ϕ ( x 2 q ) ∥ 2 , ∀ p , q ∈ [ M ] \mathrm{C}_{p q}^{\mathrm{SE}}=\left\|\phi\left(\mathrm{x}_{1}^{p}\right)-\phi\left(\mathrm{x}_{2}^{q}\right)\right\|_{2}, \forall p, q \in[M] CpqSE=ϕ(x1p)ϕ(x2q)2,p,q[M] (9)

dis ⁡ S E ( x 1 , x 2 ) \operatorname{dis}^{\mathrm{SE}}\left(\mathrm{x}_{1}, \mathrm{x}_{2}\right) disSE(x1,x2)即为两个视频内容上的距离,还要考虑两个视频的order距离。

temporal distance

positional Cost Matrix:考虑long-term关系的目的是确保视频1中的segment被映射到视频2的segment的邻近位置,这可以用来区分一些对顺序敏感的动作。作者定义了一个positional cost matrix C P O {\mathbf{C}^{PO}} CPO,它的值随着相关位置距离 ( p M − q M ) 2 \left(\frac{p}{M}-\frac{q}{M}\right)^{2} (MpMq)2的增加而增加。和公式(8)类似,可以定义两个视频的位置距离为公式(11)。可以看出 C P O {\mathbf{C}^{PO}} CPO通过给距离远的片段分配更大的运输成本,来实现对视频顺序的软调整。

C p q P O = exp ⁡ { − 1 σ 2 1 ( p M − q M ) 2 + 1 } , ∀ p , q ∈ [ M ] \mathbf{C}_{p q}^{\mathrm{PO}}=\exp \left\{-\frac{1}{\sigma^{2}} \frac{1}{\left(\frac{p}{M}-\frac{q}{M}\right)^{2}+1}\right\}, \forall p, q \in[M] CpqPO=exp{σ21(MpMq)2+11},p,q[M] (10)

dis ⁡ P O ( x 1 , x 2 ) = min ⁡ T ∈ Π ( μ 1 , μ 2 ) ⟨ T , C P O ⟩ − 1 λ H ( T ) \operatorname{dis}^{\mathrm{PO}}\left(\mathbf{x}_{1}, \mathbf{x}_{2}\right)=\min _{\mathbf{T} \in \Pi\left(\boldsymbol{\mu}_{1}, \boldsymbol{\mu}_{2}\right)}\left\langle\mathbf{T}, \mathbf{C}^{\mathrm{PO}}\right\rangle-\frac{1}{\lambda} \mathcal{H}(\mathbf{T}) disPO(x1,x2)=minTΠ(μ1,μ2)T,CPOλ1H(T) (11)

CMOT

在这里插入图片描述

根据前面计算得到的语义距离和时序距离,定义两个视频的距离为:

dis ⁡ ( x 1 , x 2 ) = dis ⁡ S E ( x 1 , x 2 ) + α dis ⁡ P O ( x 1 , x 2 ) \operatorname{dis}\left(\mathrm{x}_{1}, \mathrm{x}_{2}\right)=\operatorname{dis}^{\mathrm{SE}}\left(\mathrm{x}_{1}, \mathrm{x}_{2}\right)+\alpha \operatorname{dis}^{\mathrm{PO}}\left(\mathrm{x}_{1}, \mathrm{x}_{2}\right) dis(x1,x2)=disSE(x1,x2)+αdisPO(x1,x2) (12)

通过一个矩阵的点积操作,还可以将公式(12)写为:
dis ⁡ ( x 1 , x 2 ) = min ⁡ T ∈ Π ( μ 1 , μ 2 ) ⟨ T , C ⟩ − 1 λ H ( T )  s.t.  C = C S E + α C P O \begin{aligned} \operatorname{dis}\left(\mathbf{x}_{1}, \mathbf{x}_{2}\right) &=\min _{\mathbf{T} \in \Pi\left(\boldsymbol{\mu}_{1}, \boldsymbol{\mu}_{2}\right)}\langle\mathbf{T}, \mathbf{C}\rangle-\frac{1}{\lambda} \mathcal{H}(\mathbf{T}) \\ \text { s.t. } & \mathbf{C}=\mathbf{C}^{\mathrm{SE}}+\alpha \mathbf{C}^{\mathrm{PO}} \end{aligned} dis(x1,x2) s.t. =TΠ(μ1,μ2)minT,Cλ1H(T)C=CSE+αCPO (13)

结合前面小样本的N-way K-shot的公式,最终CMOT的模型表示为:
min ⁡ ϕ ∑ T t r ∼ D t r ∑ ( x j , y j ) ∈ Q t r − log ⁡ p ( y ^ j = y j ∣ x j )  s.t.  dis ⁡ ( x i , x j ) = min ⁡ T ∈ Π ( μ i , μ j ) ⟨ T , C ⟩ − 1 λ H ( T ) C = C S E + α C P O \begin{array}{ll}\min _{\phi} & \sum_{\mathcal{T}^{t r} \sim \mathcal{D}^{t r}} \sum_{\left(\mathbf{x}_{j}, y_{j}\right) \in \mathcal{Q}^{t r}}-\log p\left(\hat{y}_{j}=y_{j} \mid \mathbf{x}_{j}\right) \\ \text { s.t. } & \operatorname{dis}\left(\mathbf{x}_{i}, \mathbf{x}_{j}\right)=\min _{\mathbf{T} \in \Pi\left(\boldsymbol{\mu}_{i}, \boldsymbol{\mu}_{j}\right)}\langle\mathbf{T}, \mathbf{C}\rangle-\frac{1}{\lambda} \mathcal{H}(\mathbf{T}) \\ & \mathbf{C}=\mathbf{C}^{\mathrm{SE}}+\alpha \mathbf{C}^{\mathrm{PO}}\end{array} minϕ s.t. TtrDtr(xj,yj)Qtrlogp(y^j=yjxj)dis(xi,xj)=minTΠ(μi,μj)T,Cλ1H(T)C=CSE+αCPO (14)

实验

数据集:HMDB51、UCF101、SM2SM
在这里插入图片描述

总结

作者基于最优传输问题OT,重定义了小样本中的距离函数,同时考虑了视频的语义信息和时序信息,最后取得了SOTA。
1、定义了Semantic distance和positional distance
2、基于视频在segment上的分布计算positional distance,通过对相距远的片段施加更大传输代价实现一个排序的软调整。

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

秃头嘤嘤魔

感谢厚爱

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值