Multi-Fiber Networks for Video Recognition (MFNet)

Motivation:减少时空网络的计算量,保持视频分类精度的基础上,使速度尽可能接近对应网络的2D版本。
为此提出 Multi-Fiber 网络,将复杂网络拆分成轻量网络的集成,利用 fibers 间的信息流引入多路器模块。
Result:比I3D和R(2+1)D分别少9倍,13倍的计算量,但精度更高,UCF-101, HMDB-51 and Kinetics 上的 state of the art。
2D网络需要10s GFLOP来处理单帧,3D网络需要100s GFLOP处理一个clip,作者认为3D网络有能力进一步提高因为融入了时空信息。
3D卷积开销很大,与Du tran和Xie Saining提出的R(2+1)D和S3D用1x3x3, 3x1x1时空分解卷积替代3x3x3这种做法不同,因为相对其2D版本仍有数量级的复杂度,以上两种方法很难在实际应用,受low-power MobileNet-v2网络的启发以及通过分组卷积稀疏化做法的启发,作者提出稀疏连接结构,并在2D CNN图片分类上实验确认结构的有效性,后扩展为时空CNN。

(a) resnet block (b) resNeXt block (c) fibers(author) (d) 加入multiplexer 传递不同fiber间信息 (e) 两个线性层降维和升维
resNeXt的中间模块对通道分组后分别用3x3卷积,bottleneck结构+分组卷积会很大程度降低计算量。d中可以看出去除了对整个通道的1x1卷积(全连接),引入了multiplexer层弥补信息损失,将主干feature的channel全部分组后,平行的残差计算,其中每一个分支称为(fiber)
resnet两个conv的简化连接数计算,其中Min表示输入channel,Mmid,Mout等同:

如果这个运算单元channel的维数增加k倍,那么运算量将增加K的平方倍。反之,减小也是2次的减小。

对channel切分为N个并行且独立的模块后,总的简化连接的数量,可见是直接resnet模块的1/N倍,实验中N=16。
Multi-Fiber Networks
2D图片域的验证:
1. 基于ResNet-18和MobileNet-v2的baseline,将其中的模块替换为多纤维模块
2. 重新设计了一个2D MF-Net

可以看出,Multi-Fiber结构在ResNet-18和MobileNet-v2上可以在少量降低计算量和参数量的情况下,精度上有一定提高,表明模块的有效性。而MF-Net也在参数和计算量较低的情况下达到了不错的效果。最后一栏实验则表明了Multiplexer模块大概会占据30%的计算量,但对效果的提升也是比较明显的。
3D版本

为了降低计算量,两层卷积只有一层进行了时序上的卷积
UCF101和HMDB51上的结果

Kinetics分类结果分析
在400类中有190类准确率超过80%,349类超过50%。只有17类低于30%效果糟糕。
特别的是那些准确率高的类,其特点:
1. 相对别的类有特殊的物体/背景
2. 跨越较长时间所发生的特殊动作
识别不好的类,其特点:
通常没有可区分的物体或在长视频中目标动作持续很短
部分参考自:
知乎林天威
Multi-Fiber Networks for Video Recognition (MFNet)的更多相关文章
- 【ML】Two-Stream Convolutional Networks for Action Recognition in Videos
Two-Stream Convolutional Networks for Action Recognition in Videos & Towards Good Practices for ...
- Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition
Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition Kaiming He, Xiangyu Zh ...
- 目标检测--Spatial pyramid pooling in deep convolutional networks for visual recognition(PAMI, 2015)
Spatial pyramid pooling in deep convolutional networks for visual recognition 作者: Kaiming He, Xiangy ...
- PredNet --- Deep Predictive coding networks for video prediction and unsupervised learning --- 论文笔记
PredNet --- Deep Predictive coding networks for video prediction and unsupervised learning ICLR 20 ...
- SPPNet论文翻译-空间金字塔池化Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition
http://www.dengfanxin.cn/?p=403 原文地址 我对物体检测的一篇重要著作SPPNet的论文的主要部分进行了翻译工作.SPPNet的初衷非常明晰,就是希望网络对输入的尺寸更加 ...
- Multi-Agent Reinforcement Learning Based Frame Sampling for Effective Untrimmed Video Recognition
Multi-Agent Reinforcement Learning Based Frame Sampling for Effective Untrimmed Video Recognition IC ...
- 深度学习论文翻译解析(九):Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition
论文标题:Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition 标题翻译:用于视觉识别的深度卷积神 ...
- Local Relation Networks for Image Recognition
目录 概 主要内容 Hu H., Zhang Z., Xie Z., Lin S. Local relation networks for image recognition. In Internat ...
- 论文阅读笔记二十五:Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition(SPPNet CVPR2014)
论文源址:https://arxiv.org/abs/1406.4729 tensorflow相关代码:https://github.com/peace195/sppnet 摘要 深度卷积网络需要输入 ...
随机推荐
- python3+selenium入门01-环境搭建
作为一个测试,在最近两年应该有明显的感觉.那就是工作变的难找,要求变的高了,自动化测试,性能测试等.没有自动化测试能力,只会点点点工作难找不说,工资也不高.所以还是要学习一些技术.首先要学习一门编程语 ...
- [debug]记一次竞态更新bug的解决
公司的django项目,有一个旧接口,使用POST方法更新用户的一种记录型数据. 这个接口的历史有点长,最早的时候没有那么多需求,只会更新两个布尔字段.后来,加入一个需要高频次记录的字段.这些字段都属 ...
- strstr()函数的使用
strstr(str1,str2) 函数用于判断字符串str2是否是str1的子串.如果是,则该函数返回str2在str1中首次出现的地址:否则,返回NULL. 实例: /** *Descriptio ...
- Unity3D游戏开发框架-资源管理类ResourceManage
新建文件夹:ResMgr.接着新建三个C#脚本.代码如下: IResLoadListener.cs AssetInfo.cs ResMgr.cs using UnityEngine; using Sy ...
- centos系统初始化配置
.改主机名: sed -i 's#HOSTNAME=.*#HOSTNAME=u05mix06.yaya.corp#g' /etc/sysconfig/network && hostna ...
- 利用表格分页显示数据的js组件bootstrap datatable的使用
前面展示了datatable的简单使用,还可以通过bootstrap结合datatable来使用,这样可以进一步美化datatable插件 <!DOCTYPE html> <html ...
- mgo mode说明
mgo 是 MongoDB 的 Golang 驱动. 连接池 我们通过 Dial 函数创建一个新的 session: session, err := mgo.Dial(url) 创建的 session ...
- HNU 2015暑期新队员训练赛2 H Blanket
把每个 bi *x + ri ( 0 <= ri <= ai)标记, 输出被标记 0 – N 次的个数 #include<iostream> #include<cstdi ...
- 【原创】大数据基础之Flume(2)Sink代码解析
flume sink核心类结构 1 核心接口Sink org.apache.flume.Sink /** * <p>Requests the sink to attempt to cons ...
- [PHP]curl上传多文件
码一下curl上传多文件的行 5.5之前版本的写法 $file = array( 'pic[0]'=>"@E:\\wwwroot\\10003\\temp_56.ini;type=te ...