论文笔记 Multi-modal Prompting for Low-Shot Temporal Action Localization

本文最后更新于:2024年2月5日 下午

论文笔记 Multi-modal Prompting for Low-Shot Temporal Action Localization

论文链接:Multi-modal Prompting for Low-Shot Temporal Action Localization (arxiv.org)

上交谢伟迪组23年3月的一篇Arxiv,通过LLM细化prompt或者生成视觉相关的soft prompt来优化多模态few-shot和zero-shot的TAL任务。

如上图所示,左边是原本的方法,视频通过编码器再加一个时序编码,然后与文本对齐。

作者发现这种方式有一些问题,比如描述的模糊性,如中间所示,Fencing这个单词既可以表示击剑中的一个动作,也可以表示围起栅栏的动作。为了消除歧义,作者通过LLM来细化动作描述作为prompt。然而,语言终究是有限的,所以作者还设计了一种方法从视觉中来获取prompt。

此外,作者发现通常这类方法没有利用光流模态,所以作者也是引入了光流模态一同与语言模态进行对齐。

方法

类别无关的Action Proposal

RGB Encoder是CLIP或者I3D-RGB,Flow Encoder是TV-L1经过I3D,时序聚合网络是一个可学习的Transformer,每层之间进行时序上的下采样来构建多尺度特征。

与ActionFormer一样,这里使用一个检测头和一个回归头,前者预测帧级别的二分类行为概率(有动作或者无动作),后者估计当前帧与其动作边界的距离。两个头均使用1D-Conv。得到的proposal范围内取平均值作为聚合特征。这部分非该文章贡献:

计算损失时,和ActionFormer一样使用DIoU损失,另外还有一个加权交叉熵损失,即对于正例和负例使用不一样的损失权重。

Open-vocabulary 动作分类

如下图所示,作者提供了A、B两个策略来增强open-vocabulary的性能,A是detailed language descriptions,B是vision-conditioned prompting。

detailed language descriptions

使用以下三个属性模板:

1
2
3
what tools are needed for [action]?
where [action] usually takes place?
how to decompose steps for [action]?

然后得到描述直接送入CLIP。

vision-conditioned prompting

对于视觉不好描述的内容,作者通过一个vision-conditional prompt module来将视觉特征映射成KK个prompt,然后拼接在原本类别的前后。

跨模态对齐

通过一个简单映射器得到嵌入向量,然后使用InfoNCE计算损失。

实验

最后使用的还是vision-conditioned prompting。

实验还是做得比较扎实的,对各个模块的细节都做了消融实验,但是没有什么想特别拿出来讨论的,所以就参考原文吧……

总结

对于一个23年3月的论文来说,也许这种利用LLM来生成CLIP的prompt的方式比较新颖吧,但是目前看来这个算不上是一个创新点。至于光流和RGB的多模态,就更不算创新了。从视觉获得vision-conditioned的prompt比较有趣,但是也只是实现了一个很简单的方法,没有深入探究。总的来说,为什么这篇论文叫Multi-modal Prompting啊(#`O′),有点失望其实(难怪快一年还在arxiv上……)。