Two-Stream Inflated 3D ConvNets (I3D):
文章提出了一种I3D(Two-Stream Inflated 3D ConvNets)模型,该3DCNN模型是由2DCNN Inception-V1扩张而来,并且可以使用在ImageNet上预训练的参数,实验结果表明这个模型在各个标准数据集上都取得了当时最好的结果。
Inflated“就说明这是一种将2DCNN扩充为3DCNN的网络,2DCNN网络使用的也是InceptionV1网络,其扩充为3D后的结果如下图所示:
○把two-stream结构中的2D卷积扩展为3D卷积。由于时间维度不能缩减过快,前两个汇合层的卷积核大小是1×2×2,最后的汇合层的卷积核大小是2*7*7。和之前文章不同的是,two-tream的两个分支是单独训练的,测试时融合它们的预测结果。
怎么inflate?
文章中使用的方法是直接将尺寸为N×N 的2D卷积核扩充为尺寸为N×N×N 的3D卷积核。
如何使用ImageNet预训练的参数?
3D卷积核使用ImageNet预训练参数的方法是对2D卷积核的参数沿着时间复制,最后除以3D卷积核的时间维度的大小即可。
扩充全部3D卷积核的时间维度等于空间维度合适吗?
将所有的 N×N 2D核扩充为 N×N×N 3D核可能并不合适,因为时间维度的最优值可能受到帧率等的影响,所以文章通过实验确定了最优的3D核时间维度的尺寸。
如何进一步提升I3D的性能?
为了进一步提升网络的性能,文章在网络中加入了光流的输入,RGB视频和堆叠的光流分别输入到3D卷积网络中得到输出结果,最终的结果为这两个流的结果的融合。