【论文复现PaddlePaddle】 # Learning Spatio-Temporal Features with 3D Residual Networks for Action Recognition(一)论文阅读
这篇文章是一篇2017ICCV ,该篇论文提出了一种基于2D ResNets 的3D ResNets网络结构。
卷积神经网络在动作识中有着较高的性能,基于CNN的动作识别的流行方法之一是二维卷积核的双流CNN,由RGB和叠加光流帧组成的双流体系结构来获取视频中的时空信息。另一种是使用3D卷积核提取视频中的时空特征。由于已有的C3D网络会产生大量参数,整个网络的体系结构相对较浅,对动作的识别还不够,于是作者就加入了ResNets网络。
尽管模型的参数依然很多,但是比相对较浅的网络(如 C3D)获得了更好的性能。
网络结构
论文中提出了一种3D ResNets 的网络结构。输入大小为3 × 16 × 112 × 112。每个卷积层后面都有批归一化和RELU。 下采样由conv3_1, conv4_1, conv5_1执行, 步长为2。最后一个完全连接层的维度被设置为Kinetics数据集(400个类别)
数据集
ActivityNet (v1.3)数据集提供来自 200 个人类行动类的样本, 每个类平均有 137 个未修剪的视频,每个视频有 1.41 个活 动实例。 视频总时长 849 小时,活动实例总数 28108 个。 数据集被随机分成三个不同的子集:训练,验证和测试, 其中 50%用于训练,25%用于验证和测试。
Kinetics 数据集有 400 个人类动作类,每个类包含 400 个 或更多视频。 视频被临时修剪,使它们不包括非动作帧, 并持续大约 10 秒。 视频总数为 30 万或以上。 培训、验 证和测试集的数量分别约为 240,000、20,000、40,000。
训练
在训练时,优化算法使用的是动量随机梯度下降(SGD),mini-batch size为256,weight decay=0.001,动量为0.9。学习率初始值为0.1,在验证损失饱和后,将其除以10进行三次。测试时,使用滑动窗口的方式生成视频段(将每个视频分成若干不重叠的16帧的视频段),使用模型估计每段视频的类别,最后将所有视频段的预估结果平均,识别视频中的动作。
结果
在ActivityNet(20000个视频)数据集上训练模型。由于C3D的尺寸相对较小,3D ResNet 被过度拟合,而 C3D 在没有过拟合的情况下得到了更好的精度。
在Kinetics(300000个视频)数据集上训练。3D ResNet由于使用了大规模的数据集,在不过度拟合的情况下获得了良好的性能。
在Kinetics数据集上的准确性,3D ResNet 比 C3D 获得了更高的精度,但是由于资源的限制,3D ResNet的精度要比I3D要低(计算资源是很重要的)。
总结
这篇文章探讨了3D Resnet 的有效性,为3D CNN在视频动作识别方向提供了进一步的研究进展。
论文链接:
https://arxiv.org/abs/1708.07632
代码链接:
https://github.com/kenshohara/3D-ResNets
论文复现课程链接:https://aistudio.baidu.com/aistudio/education/group/info/1340