ICCV 2021 Oral | AdaFocus:利用空间冗余性实现高效视频识别

dd9037512cf256253f466cc24359b92e.gif

©原创 · 作者 | 王语霖

单位 | 清华大学自动化系

研究方向 | 机器学习、计算机视觉

本文主要介绍我们被 ICCV 2021 会议录用为 Oral Presentation 的一篇文章:Adaptive Focus for Efficient Video Recognition。代码和预训练模型已经在 Github 上面放出,欢迎大家试用和吐槽。

a35994407f91db3036e7fe8469e06790.png

论文标题:

Adaptive Focus for Efficient Video Recognition

论文来源:

ICCV 2021

论文链接:

https://arxiv.org/pdf/2105.03245.pdf

代码链接:

https://github.com/blackfeather-wang/AdaFocus

B站视频简介:

https://www.bilibili.com/video/BV1vb4y1a7sD/

现有高效视频识别算法往往关注于降低视频的时间冗余性(即将计算集中于视频的部分关键帧),如图 1 (b)。本文则发现,降低视频的空间冗余性(即寻找和重点处理视频帧中最关键的图像区域),如图 1 (c),同样是一种效果显著、值得探索的方法;且后者与前者有效互补(即完全可以同时建模时空冗余性,例如关注于关键帧中的关键区域),如图 1 (d)。在方法上,本文提出了一个通用于大多数网络的 AdaFocus 框架,在同等精度的条件下,相较 AR-Net (ECCV-2020) 将计算开销降低了 2.1-3.2 倍,将 TSM 的 GPU 实测推理速度加快了 1.4 倍。

75ee34d30dc90e77ae18049c69c14eaa.png

▲ 图1 AdaFocus 与现有方法的对比

c2e8c667f850ba58391d8145650c817f.png

研究动机及简介

相较于图像,视频识别是一个分布范围更广、应用场景更多的任务。如下图所示,每分钟,即有超过 300 小时的视频上传至 YouTube;至 2022 年,超过 82% 的消费互联网流量将由在线视频组成。自动识别这些海量视频中的人类行为、事件、紧急情况等内容,对于视频推荐、监控等受众广泛的实际应用具有重要意义。

0a2b3caced9d74b5f8292bd6b7e25607.png

▲ 图2 在线视频的规模

近年来,已有很多基于深度学习的视频识别算法取得了较佳的性能,如 TSM、SlowFast、I3D 等。然而,一个严重的问题是,相较于图像,使用深度神经网络处理视频通常会引入很大的计算开销。如下图所示,将 ResNet-50 应用于视频识别将使运算量(FLOPs)扩大 8-75 倍。

4ac35c7ea0335e8b50ec186637fc0263.png

▲ 图3 视频识别模型计算成本较高

因此,一个关键问题在于,如何降低视频识别模型的计算开销。一个非常自然的想法是从视频的时间维度入手:一方面,相邻的视频帧之间往往具有较大的相似性,逐帧处理将引入冗余计算;另一方面,并非全部视频帧的内容都与识别任务相关。现有工作大多从这一时间冗余性出发,动态寻找视频中的若干关键帧进行重点处理,以降低计算成本,如下图所示。

b2133ca8c92ba2a14230f06dbcdbc4de.png

▲ 图4 基于时间冗余性的高效视频识别

但是,值得注意的一点是,我们发现,目前尚未有工作关注于视频中的空间冗余性。具体而言,在每一帧视频中,事实上只有一部分空间区域与识别任务相关,例如下图中的运动员、起跳动作、水花等。

18806764387774ddaf06ed16bba4fb28.png

▲ 图5 视频帧的空间冗余性

出于这一点,本文以回答图 6 中的两个问题作为主线:

1. 空间冗余性是否可以用于实现高效视频识别?假如我们能找到每一视频帧中的关键区域,并将主要的计算集中于这些更有价值的部分,而尽可能略过其他任务相关信息较少的区域,理论上,我们就可以显著降低网络的计算开销(事实上,我们之前基于单张图像验证过类似做法的效果:NeurIPS 2020 | Glance and Focus: 通用、高效的神经网络自适应推理框架 [1])。

2. 空间、时间冗余性是否互补?若上述假设成立的话,它应当可与现存的、基于时间冗余性的工作相结合,因为我们完全可以先找到少数关键帧,再仅在这些帧中寻找关键的图像区域进行重点处理。

111d557bfda362e05f836b7c10ed06dc.png

▲ 图6 使用空间冗余性进行高效视频识别

fd097b8e82dbe892fefc88d42dae55fd.png

方法详述

首先为了回答问题 1,我们设计了一个 AdaFocus 框架,其结构如下图所示:

8dc9a3c342f957ff3246a1ba7b909700.png

▲ 图7 AdaFocus 网络结构

此处我们假设视频帧按时间次序逐个输入网络,AdaFocus 使用四个组件对其进行处理:

1. 全局CNN(Global CNN)是一个轻量化的卷积网络(例如MobileNet-V2),用于以低成本对每一帧视频进行粗略处理,获取其空间分布信息。

2. 策略网络  (Policy Network)是一个循环神经网络(RNN),以 的提取出的特征图作为输入,用于整合到目前为止所有视频帧的信息,进而决定当前帧中包含最重要信息的一个图像小块(patch)的位置。值得注意的是由于取得patch 的 crop 操作不可求导,是使用强化学习中的策略梯度方法(policy gradient)训练的。

3. 局部 CNN  (Local CNN)是一个容量大、准确率高但参数量和计算开销较大的卷积网络(例如 ResNet),仅处理策略网络  选择出的局部 patch,由于 patch 的空间尺寸小于原图,处理其的计算开销显著低于处理整个视频帧。

4. 分类器  (Classifier)为另一个循环神经网络(RNN),输入为 和  输出特征的并联,用于整合过去所有视频帧的信息,以得到目前最优的识别结果 (  表示帧序号)。

AdaFocus 的训练分为三个阶段。在第一阶段,我们移除策略网络  ,随机选取局部 patch,训练网络的分类部分最小化交叉熵损失,如下图所示。这一阶段意在训练网络从随机的 patch 序列中自适应提取信息,我们进而便可以根据分类部分网络的行为判断不同 patch 的重要性。

29436694c0fda48288e7c1f318319d83.png

▲ 图8 训练阶段1

在第二阶段,我们引入随机初始化的策略网络  ,将之建模为智能体(agent),固定分类部分,以强化学习算法对  进行训练,优化目标为最大化折扣奖励函数。

ced7c25ff9e145365badf894fcf93db5.png

▲ 图9 训练阶段2

关于强化学习的具体细节,请参见我们的 paper。粗略而言,我们将选择 patch 建模为一个在若干个候选 patch 上的多类离散分布,每一类别的概率由策略网络  的输出决定。训练时,我们随机从这个分布中采样出一个动作,并得到一个对应的奖励函数值(reward),reward 较大的动作将受到鼓励,reward较低的动作则将受到抑制。我们将 reward 的值定义为给定动作在标签类别上的 confidence 上升的效果与随机选择 patch 所得效果的比较。

15e14323e20cc2a9b62dc1590ba233bf.png

▲ 图10 策略网络的训练方法

在第三个阶段,我们固定阶段二学到的 patch 选择策略,对 AdaFocus 的分类部分进行微调。这一阶段并非必须,但可以些微提升网络的分类性能。 

331420912a8dd305da7412028da77420.png

▲ 图11 训练阶段3

到目前为止,AdaFocus 对每一帧视频花费的计算量是均等的,换言之,其只建模了空间冗余性。为了探索空间、时间冗余性是否互补的问题,我们提出了增强版本的 AdaFocus,AdaFocus+。具体而言,我们加入了一个与  结构完全相同的策略网络  ,用于判断对于每一帧视频是否激活  处理由  选择出的局部 patch,如下图所示。

0895db1203d892a5e52296a174f9b2ee.png

▲ 图12 AdaFocus+

  可以在训练阶段二中, 的训练完成后采用与其相同的强化学习算法进行训练。 的输出决定了一个二分类分布(Bernoulli distribution)的参数,训练时,我们随机从该分布中采样,并在采样得激活  时将该操作所带来的标签类别上的confidence上升的效果与激活 的计算开销进行比较。只有当这一比较结果为正时,激活  这一动作才会得到鼓励。

关于 AdaFocus 和 AdaFocus+ 的更多细节,由于比较繁杂,不在这里赘述,可以参阅我们的 paper。

aff5ea58538caa5d149880b4bf1989b2.png

实验结果

与其他高效视频识别框架的比较(基于 ActivityNet):

51ef0815447235521b9e927b47de1e6e.png

▲ 图13 ActivityNet

在 FCVID 和 Mini-Kinetics 上的结果:

960a3070482f9ea4cbb97eb5f77c4d6e.png

▲ 图14 FCVID, Mini-Kinetics

基于 TSM 部署 AdaFocus 的结果,包含理论计算开销、CPU 和 GPU 的实际测速结果:

ce2c5a1ec800c8946cf4f8d18b622230.png

▲ 图15 AdaFocus-TSM在something-something V1, V2上的实际效果

AdaFocus 的可视化结果,绿色方框代表我们的方法在每一帧选择的 patch,可见 AdaFocus 成功定位到视频帧中的任务相关区域,例如帆船、自行车、做三明治的手部动作、摩托、长笛、运动员等。

960dfc683e230cfba86ad1c541c2fffe.png

▲ 图16 可视化结果

关于网络结构设计的细节、奖励函数的设计、习得 patch 选择策略的有效性,我们还提供了详尽的消融实验(Ablation Study)结果,细节请参阅我们的 paper。

d0193677aae9197aef2b2f9b71279511.png

结语

总结来说,这项工作的贡献点在于:

1. 在现有的基于时间冗余性的方法之外,思考利用空间冗余性实现高效视频识别;

2. 基于强化学习,提出了一种在理论上和实测速度上效果都比较明显的通用框架,AdaFocus;

3. 在五个数据集上进行了实验,包括与其他通用框架的比较和部署于现有高效识别网络(例如 TSM)上的效果等。

欢迎大家 follow 我们的工作。

@InProceedings{Wang_2021_ICCV,
    author = {Wang, Yulin and Chen, Zhaoxi and Jiang, Haojun and Song, Shiji and Han, Yizeng and Huang, Gao},
     title = {Adaptive Focus for Efficient Video Recognition},
 booktitle = {Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV)},
     month = {October},
      year = {2021}
}

如有任何问题,欢迎留言或者给我发邮件,附上我的主页链接:
http://www.rainforest-wang.cool/

outside_default.png

参考文献

outside_default.png

[1] https://zhuanlan.zhihu.com/p/266306870

特别鸣谢

感谢 TCCI 天桥脑科学研究院对于 PaperWeekly 的支持。TCCI 关注大脑探知、大脑功能和大脑健康。

更多阅读

f9b7d9ebbf46eb4de89383e51c3ec50e.png

ea40b0bb4ca1c609bac8b75ec12d83e4.png

3c9d9cc41bb1e5a3a2a00af511c36c41.png

14e8bf728a39a42869bd912fccc0b603.gif

#投 稿 通 道#

 让你的文字被更多人看到 

如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。

总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 

PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析科研心得竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。

📝 稿件基本要求:

• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注 

• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题

• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算

📬 投稿通道:

• 投稿邮箱:hr@paperweekly.site 

• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者

• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿

4b9fcc65bca4deec2f26da41879e06b1.png

△长按添加PaperWeekly小编

🔍

现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧

·

cc88ad9abbc359fded9958a7b9b1d93c.png

本文的视频人脸检测识别方法的基本设计思想是,在给出一段视频文件以及这个视频文件的字幕和剧本之后,可以自动的对视频中的人物进行检测和识别,不需要任何的训练样本。视频人脸检测识别方法主要由四个部分组成:字幕剧本融合部分,人脸检测部分,样本集自动生成部分和基于深度学习的人脸识别部分。本文将深度学习算法引入到了视频人脸识别中来,有两方面的重要意义,一方面,视频人脸的识别要求算法具备一定的抗干扰能力,并且能够保证一定的实时,本文的实验与分析表明,深度学习算法具备这方面的要求;另一方面,从深度学习算法特的角度来说,深度学习算法最大的缺点就是构造深度模型需要大量的样木,这很大程度上限制了深度学习算法的应用,然而本文所设计的基于视频的人脸检测模块可以轻松的产生数万、数十万的样本,从而满足了深度学习算法的大样本集要求。 基于深度学习模型的人脸识别部分是整个系统的重点,这一部分主要有两方面的意义:一,经历了视频人脸的检测部分之后,虽然视频人脸集合中人脸的纯度有了很大的提升,但是依然会存在一些杂质,因此必须通过识别模块来进一步的过滤掉人脸集合中的杂质;二,通过视频所得到的帧文件中,经常会出现多张人脸同时出现的情况,在这种情况下,视频人脸的检测部分是无法将说话者与人脸进行对应的,必须通过识别模块才能区分出一个帧中的多个人脸。 基于深度学习模型的人脸识别部分主要包含三个模块:数据预处理模块、深度学习模块和识别模块。数据预处理模块主要由数据整合和构造数据立方体两个部分组成。深度学习模块通过两个具体过程来实现:RBM调节和深度模型的反馈微调。RBM的调节过程是自下而上的各个层间的调节过程,以这种方式来初始化整个深度模型的系统权值,而深度模型的反馈微调,首先进行自下而上的识别模型转换,然后再进行自上而下的生成模型转换,最后通过不同层次之间的不断调节,使生成模型可以重构出具有较低误差的原样本,这样就得到了此样本的本质特征,即深度模型的最高抽象表示形式。经过深度学习模型的处理,可以得到降维之后的样本特征,在此基础上运用识别模块,本文中所采用的识别方法是人工神经网络识别方法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值