行为识别论文笔记之多纤维网络 | ECCV 2018

简介: 这篇文章提出的网络结构有点像不带 channel shuffle 模块的 ShuffleNet,其核心思想还是利用 Group Conv 来降低网络的计算开销。

雷锋网 AI 科技评论按:本文为上海交通大学林天威为雷锋网 AI 科技评论撰写的独家稿件,未经许可不得转载。

TB18nK6iyrpK1RjSZFhXXXSdXXa.jpg

行为识别/视频分类是视频理解领域的重要方向。之前该方向的深度学习方法大致可以分为两个大类:一类是双流网络,即以 RGB 图像和光流图像作为 2D 网络两个分支的输入,再在网络的某处进行融合,典型的如 TSN;另一类则是将多帧 RGB 图像看做是 3D 输入,然后使用 3D 卷积网络进行处理,典型的如 C3D,I3D,ARTNet 等(当然也可以将光流作为 3D 网络的输入从而进一步提高效果)。

双流类方法的问题主要在于要提取光流,耗时比较多,在实际的场景中很难应用起来。所以近两年的论文更多集中在 3D 网络的研究上,3D 类方法此前的问题主要有两方面,一是 3D 卷积核的计算开销比较大,二是在效果上还是距离双流类方法有一定的距离。

ECCV2018 上,新加坡国立大学,FAIR 和 360AI 实验室合作发表了「Multi-Fiber Networks for Video Recognition」[1],代码见 PyTorch-MFNet。这篇论文主要针对 3D 网络的第一个问题进行了研究,具体而言,这篇论文的目的是要在保持网络效果的同时(主要对标 I3D-RGBmodel),大幅度降低网络的 FLOPs,从而提高网络的效率,使 3D 网络能够获得更多的应用场景。这篇文章提出的网络结构有点像不带 channel shuffle 模块的 ShuffleNet,其核心思想还是利用 Group Conv 来降低网络的计算开销。之前似乎没怎么参考 mobile 类模型思路来做 video classification 的工作,而计算量对于 3D 类网络又是比较重要的核心的瓶颈,所以这篇工作还是很有参考价值的。

下面开始介绍文章内容,如有不足烦请指正。

Motivation

这篇文章的核心 motivation 就是认为目前的 sota 的 3D 网络(比如 I3D 以及 R(2+1)D-34 网络)的计算量 FLOPs 都太高了。常用的 2D 卷积网络如 resnet-152 或是 vgg-16 网络大概是 10+ 的 GFLOPs,而刚刚提到的两种 3D 卷积网络则达到了 100+ GFLOPs。作者认为,当计算量相近的时候,由于 3D 网络模型能额外的学习到时空信息,clip-based 的模型(即指 3D 网络)应该要能比 frame-based 的模型(即指 2D 网络)有更好的效果。所以,这篇文章的目标就是在保持现有 sota 的 3D 模型的效果的同时,大大提高其网络效率。

多纤维网络

在方法部分,作者首先介绍了多纤维模块(Multi-Fiber Unit)的原理,然后在 2D 网络上实验了多纤维结构的有效性,最后将其推广到了 3D 网络上去。

多纤维模块

TB1qpPpiyLaK1RjSZFxXXamPFXa.jpg

这张图介绍了从 resnet 到多纤维模块的变化过程。

(a)中的结构即是一个简单的残差模块;(b)中的则为 Multi-Path 类型的 bottleneck 模块,比如 ResNeXt 就采用了该结构。在该结构中,前后均为一个 1x1 的卷积进行降维和升维,中间则将通道进行分组,分别用几个 3x3 卷积核进行处理。这样的处理可以大大降低中间层的计算量,但是 1x1 卷积层依旧有很大的计算量。所以这篇文章提出进行更加彻底的分组,即将整个残差模块按照通道切片成多个平行且独立的分支(称为 fiber,纤维),如(c)所示。(c)中的结构在输入和输出通道数量一致的情况下,可以将理论计算量降低到 N 分之一,此处 N 为分支或者说是纤维的数量。这种更加彻底分组的加速思路和去年的 ShuffleNet 其实也有些像,区别在于 ShuffleNet 中还提出了 channel shuffle 的模块,且在中间层采用了 depth-wise conv。

如(c)所示的结构虽然效率提高了很多,但通道间缺乏信息交换,可能会损害效果。所以该文进一步提出了一个 Multiplexer 模块用来以残差连接的形式结合纤维之间的信息。该模块实际上是一个两层的 1x1 卷积,第一个卷积会将通道数量降低到 k 分之一,第二个卷积再升维,因此该模块的计算量是一层 1x1 卷积的 k/2 分之一。不过,在文章中没看到作者具体设置的 k 值。

多纤维结构有效性的验证

接下来,作者通过在 ImageNet-1k 数据集上的图片分类实验来验证所提出的多纤维结构的有效性。这里主要有两种形式,一是基于 ResNet-18 和 MobileNet-v2 的 baseline,将其中的模块替换为多纤维模块(这里具体的实现细节不是很确定);二是重新设计了一个 2D MF-Net,具体网络结构可以见论文。实验结果如下所示。

TB1Tfi5ipzqK1RjSZFoXXbfcXXa.jpg

通过这个表格里面的实验结果可以看出。多纤维结构在 MobileNet-v2 和 ResNet-18 上可以在少量降低计算量和参数量的情况下,提高一定的效果,表明了多纤维模块的有效性。而 MF-Net 也在参数和计算量较低的情况下达到了不错的效果。最后一栏实验则表明了 Multiplexer 模块大概会占据 30% 的计算量,但对效果的提升也是比较明显的。

3D-多纤维网络

在确认了提出的多纤维模块的有效性后,本文就将多纤维结构推广到了 3D 网络上,并提出了 3D MF-Net。3D MF-Net 的模块结构和网络结构如下图所示:

TB1PBO7irvpK1RjSZFqXXcXUVXa.jpg

可以看出,3D 和 2D 的多纤维模块结构基本一致,只是将卷积的维度升到了三维。为了降低计算量,两层卷积只有一层进行了时序上的卷积。

实验内容

在实验部分,本文主要做了 trained from scratch 以及 fine tuned 两类实验,分别对应 Kinetics 以及 UCF101,HMDB51 数据集。

视频分类-Trained from Scratch

TB1evm3ipzqK1RjSZFvXXcB7VXa.jpg

在 Kinetics 数据集上,MF-Net 以比之前 3D 模型低非常多的 FLOPs 达到了更好的效果。

视频分类-Fine-tuned Models

TB1SXaZiCzqK1RjSZPcXXbTepXa.jpg

在这部分实验中,先将模型在大数据集(Kinetics)上训练,再在小数据集(UCF-101, HMDB51)上进行 finetune。从实验结果可以看出,MF-Net 以较小的计算量达到或超过了目前 sota 的效果。本文首图可视化地展现了计算量和效果的关系,可以看出 MF-Net 较好地占据了左上角的位置,即以较小的计算量达到 sota 的效果。

论文小结

这篇文章主要是进一步优化了 Multi-Path 模块的结构,并将其用于了 3D 卷积网络,从而大大提高 3D 卷积网络的效率。在效率大大提高后,其实也更有利于我们继续将网络做的更复杂更有效,像之前的 I3D 的效率实在太差了,很难进一步增加复杂度(当然另外一方面也给大家提供了很多优化空间和写论文空间...)。一方面通过引入网络加速技巧对模型速度进行优化,一方面通过增加网络对时序建模的能力来对模型效果进行提高,应该是未来 3D 网络研究更平衡的一种发展道路吧。

参考文献

[1]Chen Y, Kalantidis Y, Li J, et al. Multi-Fiber Networks for Video Recognition[C]//Proceedings of the European Conference on Computer Vision (ECCV). 2018: 352-367.

[2] Xie S, Girshick R, Dollár P, et al. Aggregated residual transformations for deep neural networks[C]//Computer Vision and Pattern Recognition (CVPR), 2017 IEEE Conference on. IEEE, 2017: 5987-5995.

[3] Carreira J, Zisserman A. Quo vadis, action recognition? a new model and the kinetics dataset[C]//Computer Vision and Pattern Recognition (CVPR), 2017 IEEE Conference on. IEEE, 2017: 4724-4733.

雷锋网(公众号:雷锋网)

目录
相关文章
|
9天前
|
机器学习/深度学习 数据可视化 计算机视觉
目标检测笔记(五):详细介绍并实现可视化深度学习中每层特征层的网络训练情况
这篇文章详细介绍了如何通过可视化深度学习中每层特征层来理解网络的内部运作,并使用ResNet系列网络作为例子,展示了如何在训练过程中加入代码来绘制和保存特征图。
28 1
目标检测笔记(五):详细介绍并实现可视化深度学习中每层特征层的网络训练情况
|
9天前
|
机器学习/深度学习 Web App开发 人工智能
轻量级网络论文精度笔(一):《Micro-YOLO: Exploring Efficient Methods to Compress CNN based Object Detection Model》
《Micro-YOLO: Exploring Efficient Methods to Compress CNN based Object Detection Model》这篇论文提出了一种基于YOLOv3-Tiny的轻量级目标检测模型Micro-YOLO,通过渐进式通道剪枝和轻量级卷积层,显著减少了参数数量和计算成本,同时保持了较高的检测性能。
18 2
轻量级网络论文精度笔(一):《Micro-YOLO: Exploring Efficient Methods to Compress CNN based Object Detection Model》
|
9天前
|
机器学习/深度学习 编解码 算法
轻量级网络论文精度笔记(三):《Searching for MobileNetV3》
MobileNetV3是谷歌为移动设备优化的神经网络模型,通过神经架构搜索和新设计计算块提升效率和精度。它引入了h-swish激活函数和高效的分割解码器LR-ASPP,实现了移动端分类、检测和分割的最新SOTA成果。大模型在ImageNet分类上比MobileNetV2更准确,延迟降低20%;小模型准确度提升,延迟相当。
29 1
轻量级网络论文精度笔记(三):《Searching for MobileNetV3》
|
9天前
|
机器学习/深度学习 网络架构 计算机视觉
目标检测笔记(一):不同模型的网络架构介绍和代码
这篇文章介绍了ShuffleNetV2网络架构及其代码实现,包括模型结构、代码细节和不同版本的模型。ShuffleNetV2是一个高效的卷积神经网络,适用于深度学习中的目标检测任务。
37 1
目标检测笔记(一):不同模型的网络架构介绍和代码
|
9天前
|
机器学习/深度学习 数据采集 算法
目标分类笔记(一): 利用包含多个网络多种训练策略的框架来完成多目标分类任务(从数据准备到训练测试部署的完整流程)
这篇博客文章介绍了如何使用包含多个网络和多种训练策略的框架来完成多目标分类任务,涵盖了从数据准备到训练、测试和部署的完整流程,并提供了相关代码和配置文件。
20 0
目标分类笔记(一): 利用包含多个网络多种训练策略的框架来完成多目标分类任务(从数据准备到训练测试部署的完整流程)
|
9天前
|
编解码 人工智能 文件存储
轻量级网络论文精度笔记(二):《YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object ..》
YOLOv7是一种新的实时目标检测器,通过引入可训练的免费技术包和优化的网络架构,显著提高了检测精度,同时减少了参数和计算量。该研究还提出了新的模型重参数化和标签分配策略,有效提升了模型性能。实验结果显示,YOLOv7在速度和准确性上超越了其他目标检测器。
24 0
轻量级网络论文精度笔记(二):《YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object ..》
|
11天前
|
机器学习/深度学习 Python
深度学习笔记(九):神经网络剪枝(Neural Network Pruning)详细介绍
神经网络剪枝是一种通过移除不重要的权重来减小模型大小并提高效率的技术,同时尽量保持模型性能。
30 0
深度学习笔记(九):神经网络剪枝(Neural Network Pruning)详细介绍
|
11天前
|
安全 网络安全 数据安全/隐私保护
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
【10月更文挑战第6天】在数字化时代,网络安全和信息安全已成为我们生活中不可或缺的一部分。本文将探讨网络安全漏洞、加密技术和安全意识等方面的内容,以帮助读者更好地了解这些主题,并采取适当的措施保护自己的信息安全。我们将通过代码示例来演示一些常见的安全漏洞,并提供解决方案。最后,我们将强调培养良好的安全意识对于维护个人和组织的信息安全的重要性。
|
8天前
|
安全 网络安全 数据安全/隐私保护
网络安全与信息安全:守护数字世界的坚盾
在数字化浪潮中,网络安全已成为维系现代社会正常运转的关键。本文旨在探讨网络安全漏洞的成因、加密技术的应用及安全意识的提升,以期为广大用户和技术人员提供实用的知识分享。通过对这些方面的深入剖析,我们期望能够共同构建一个更加安全可靠的数字环境。
|
9天前
|
存储 SQL 安全
网络安全与信息安全的守护之盾
本文将深入探讨网络安全漏洞、加密技术及安全意识的重要性,旨在帮助读者建立全面的网络安全知识体系。