Action CLIIP:A New Paradigm for Video Action Recognition

任务:动作识别,加了时序信息的分类任务。

传统的动作识别模型,视频进过一个编码器(2D/3D),然后与有标签的GT计算loss。这就存在有监督学习的局限性,一定需要标签,有标签就会受限于数据集的规模,如何定义标签,如何标签更多数据都是很棘手的问题。

在图像分类这边使用one-hot编码没有问题,一般来讲一个物体对应一个名词,就存在一种“一一对应”关系。但是在视频这边比如“open the door”对应就是一个短语,对应三个单词,另外,open这个动词可以描述很多动作。这时就有一个trade off(折中),如果标记很多类人工标注成本提高,softmax效果也不好,常规的分类算法可能表现都很差。如果只标注大类,就无法预测细粒度的小类。最理想的方法就是摆脱标签的限制,从大量的视频数据中学一个好的特征,然后再去zero-shot或者few-shot迁移至下游任务。

Action CLIIP过程:文本和视频分别进入各自的编码器提取各自的特征,然后计算相似度得到相似度矩阵,然后将其与定义好的GT标签矩阵算一下损失。

改进有两个方面,一是如何将图像变成视频,也就是每一帧的特征如何与文本特征求相似度,这与CLIP4clip非常类似(平均池化、LSTM或带编码的Transformer时序信息、早期融合tight type)。CLIP是完全自监督的学习方式,图像文本对,对角线上是正样本。第二个改进是标签矩阵,使用的文本是标记好的标签,当batch比较大的时候,不是对角线的地方也可能是正样本(比如一个batch中可能有多个描述跑的动作)。这个问题可以将交叉熵损失换成KL散度(衡量两个分布的相似性)就可以解决。

文章主要架构:其实就是图像和文本变成token后经过各自的编码器,得到各自的特征后计算相似度然后与GT计算损失(KL散度)就可以了。

prompt(提示):在原来已经预训练好的参数之上,通过加一些小的模块,训练这些小的模块让训练好的模型参数尽快的迁移到下游任务上。

 

文本Prompt:前缀prefix、完形填空cloze、后缀suffix

和CLIP里的prompt一致,只不过被分成三类。

Pre-network Prompt:joint输入层面加入了时序信息。

In-network Prompt:shift特征图上做各种移动,达到更强的特征建模能力。

Post-network Prompt:其实就是CLIP4clip中的三种相似度计算。

消融实验

表一证明了多模态的框架(ActionCLIP)表现不错,相较于单模态Unimodality的框架可以提升2-3个点。也就是说用Language guidance的方式更合理。

第二个就是三阶段的方式(pre train-prompt-fine tune)预训练-提示-微调。预训练的阶段是否重要?答案不言而喻,预训练参数肯定是重要的。对于随机初始化,训练参数不够的情况下,CLIP很难训练出一个很好的模型。另外,对比可以发现图像视觉这边的预训练就显得十分重要,文本上的预训练提升不是特别明显。目前的多模态任务也都把重心放在了视觉这边。而且ViT初始化效果要比BERT好很多。

 

文本这边不用prompt,掉了不到一个点。但是视觉这边,如果不用joint,会掉2.74个点,如果不用shift,会掉5.38个点(都用MeanP)。作者认为出现这种情况的原因是灾难性的遗忘,具体原因是joint中输入模式的改变(prompt提示不够)以及预训练图像编码器(19年tsm论文用shift效果很好)特征的改变。这里在post-network中平均池化的效果不是最好的了,考虑是数据集有20-30w个视频,用来fine tune足够了。

作者又在三个数据集上展示了zero-shot和few-shot的结果,Action CLIP全面碾压。视频这边难点:训练数据集、测试数据集、测试指标、模型、任务。时序建模。

python的学习还是要多以练习为主,想要练习python的同学,推荐可以去看,他们现在的IT题库内容很丰富,属于国内做的很好的了,而且是课程+刷题+面经+求职+讨论区分享,一站式求职学习网站,最最最重要的里面的资源全部免费。

牛客网 - 找工作神器|笔试题库|面试经验|实习招聘内推,求职就业一站解决_牛客网求职之前,先上牛客,就业找工作一站解决。互联网IT技术/产品/运营/硬件/汽车机械制造/金融/财务管理/审计/银行/市场营销/地产/快消/管培生等等专业技能学习/备考/求职神器,在线进行企业校招实习笔试面试真题模拟考试练习,全面提升求职竞争力,找到好工作,拿到好offer。icon-default.png?t=M85Bhttps://www.nowcoder.com/link/pc_csdncpt_ssdxjg_python

他们这个python的练习题,知识点编排详细,题目安排合理,题目表述以指导的形式进行。整个题单覆盖了Python入门的全部知识点以及全部语法,通过知识点分类逐层递进,从Hello World开始到最后的实践任务,都会非常详细地指导你应该使用什么函数,应该怎么输入输出。

牛客网(牛客网 - 找工作神器|笔试题库|面试经验|实习招聘内推,求职就业一站解决_牛客网)还提供题解专区和讨论区会有大神提供题解思路,对新手玩家及其友好,有不清楚的语法,不理解的地方,看看别人的思路,别人的代码,也许就能豁然开朗。

快点击下方链接学起来吧!

牛客网 - 找工作神器|笔试题库|面试经验|实习招聘内推,求职就业一站解决_牛客网

参考:

参考:CLIP 改进工作串讲(下)【论文精读】_哔哩哔哩_bilibili

论文下载:https://arxiv.org/abs/2109.08472v1

猜你喜欢

转载自blog.csdn.net/weixin_45104951/article/details/127117314