龙空技术网

视频理解复现难?详解FAIR冠军算法开源代码 PySlowFast

AI科技评论 207

前言:

今天各位老铁们对“slowfast算法复现”大约比较看重,姐妹们都想要知道一些“slowfast算法复现”的相关文章。那么小编在网上汇集了一些关于“slowfast算法复现””的相关内容,希望你们能喜欢,同学们快快来学习一下吧!

作者 | 京枚

编辑 | Camel

在近些年的视频理解研究中,Facebook AI Research贡献了许多精彩的工作。其视频团队不但在CVPR,ICCV等会议上刊载了数篇视频研究工作,同时也在各大数据集榜单中拔得头筹,并获得了2019年CVPR行为检测挑战赛的冠军。如今其团队在ICCV研讨会上开源了其视频识别检测代码库:PySlowFast,并同时发布了预训练的模型库。团队称旨在推动视频理解领域的研究工作,同时将实时添加其前沿工作至其代码库。

视频与动作理解俨然已成为当今最火热的研究方向之一,然而在开源社区中找到一个简洁、高效、易于修改(easy to hack)的视频理解代码库(video understanding codebase)仍不是一件简单的事情。

更重要的是,复现当今前沿的(state-of-the-art)的深度学习模型(video understand backbone)一直是令研究者头疼的一件事,视频理解模型往往动辄几十GFlops,需要训练数天,复现出一个模型需要反复的实验调参,让每个细节都正确。这往往会耗费大量的时间和资源,让很多研究者望而却步。

2019年,Facebook AI Research(脸书人工智能研究院,FAIR)在 CVPR 上发布了多项研究工作,并赢得了CVPR 2019 行为检测挑战赛的冠军。

在 ICCV 2019 上,FAIR 推出了视频理解代码库:PySlowFast。

PySlowfast是一个基于PyTorch的代码库, 让研究者可以轻而易举的复现从基础至前沿的视频识别(Video Classification)和行为检测(Action Detection)算法。

不但如此,PySlowFast代码库同时开源了大量预训练模型(pretrain models),让研究者省去了反复训练模型的烦恼,可以直接使用FAIR预训练的前沿(cutting edge performance)模型。

自开源后,PySlowFast就一度蝉联GitHub趋势榜前十。

根据其研讨会提供的教程和其开源代码库的信息,PySlowFast不但可以提供视频理解的基线(baseline)模型,还能提供当今前沿的视频理解算法复现。

其算法不单单囊括视频分类(video classification),同时也包括行为检测(Action Classification)算法。与当今开源社区中各种视频识别库复现出参差不齐的性能相比,使用PySlowFast可轻而易举的复现出当今前沿的模型。

视频识别(Kinetics)

行为检测(AVA)

(表1:PySlowFast在视频分类数据库Kinetics 400 上的性能) (节选自 )

PySlowFast不单单可以用于视频分类,同时也可用于视频理解,并提供赢得了2019年CVPR ActivityNet Challenge Winner的视频检测模型。

此外,PySlowFast 还预留了接口,可通过简单的编辑支持多模态视频理解,视频自监督学习等等任务。据FAIR研究团队表示,PySlowFast将被积极维护,实时更新其团队及业界的前沿算法,同时一并开源其预训练模型,使代码库成为视频理解领域的基线标杆。

笔者参考教程简单试用了PySlowFast代码库。在完成安装后,通过下载MODEL_ZOO提供的预训练模型和相应的配置文件,运行如下代码,就可以测试(Test)模型在不同视频数据库上的性能:

python tools/run_net.py \

--cfg configs/Kinetics/C2D_8x8_R50.yaml \

DATA.PATH_TO_DATA_DIR path_to_your_dataset \

NUM_GPUS 2 \

笔者可以轻易通过代码库复现出前沿的高性能模型,同时笔者也尝试通过简单的修改来实现自己的模型,并用多台GPU进行训练得到前沿的性能。

笔者未尝试更加复杂的任务,感兴趣的读者可以直接前往其Github页面一探究竟:

标签: #slowfast算法复现