Rethinking Spatiotemporal Feature Learning: Speed-Accuracy Trade-offs in Video Classification

Despite the steady progress in video analysis led by the adoption of convolutional neural networks (CNNs), the relative improvement has been less drastic as that in 2D static image classification. Three main challenges exist including spatial (image) feature representation, temporal information representation, and model/computation complexity. It was recently shown by Carreira and Zisserman that 3D CNNs, inflated from 2D networks and pretrained on ImageNet, could be a promising way for spatial and temporal representation learning. However, as for model/computation complexity, 3D CNNs are much more expensive than 2D CNNs and prone to overfit. We seek a balance between speed and accuracy by building an effective and efficient video classification system through systematic exploration of critical network design choices. In particular, we show that it is possible to replace many of the 3D convolutions by low-cost 2D convolutions. Rather surprisingly, best result (in both speed and accuracy) is achieved when replacing the 3D convolutions at the bottom of the network, suggesting that temporal representation learning on high-level semantic features is more useful. Our conclusion generalizes to datasets with very different properties. When combined with several other cost-effective designs including separable spatial/temporal convolution and feature gating, our system results in an effective video classification system that that produces very competitive results on several action classification benchmarks (Kinetics, Something-something, UCF101 and HMDB), as well as two action detection (localization) benchmarks (JHMDB and UCF101-24).

PDF Abstract ECCV 2018 PDF ECCV 2018 Abstract

Results from the Paper


Ranked #27 on Action Recognition on UCF101 (using extra training data)

     Get a GitHub badge
Task Dataset Model Metric Name Metric Value Global Rank Uses Extra
Training Data
Result Benchmark
Action Recognition HMDB-51 S3D-G (ImageNet, Kinetics-400 pretrained) Average accuracy of 3 splits 75.9 # 36
Action Classification Kinetics-400 S3D-G (Flow, ImageNet pretrained) Acc@1 68 # 177
Acc@5 87.6 # 123
Action Classification Kinetics-400 S3D-G (RGB+Flow, ImageNet pretrained) Acc@1 77.2 # 137
Acc@5 93 # 100
Action Classification Kinetics-400 S3D-G (RGB, ImageNet pretrained) Acc@1 74.7 # 153
Acc@5 93.4 # 94
Action Recognition Something-Something V1 S3D-G (ImageNet pretrained) Top 1 Accuracy 48.2 # 61
Top 5 Accuracy 78.7 # 27
Action Recognition Something-Something V1 S3D Top 1 Accuracy 47.3 # 63
Top 5 Accuracy 78.1 # 30
Action Recognition UCF101 S3D-G (ImageNet, Kinetics-400 pretrained) 3-fold Accuracy 96.8 # 27

Results from Other Papers


Task Dataset Model Metric Name Metric Value Rank Uses Extra
Training Data
Source Paper Compare
Action Classification Kinetics-600 S3D-G (Flow) Top-1 Accuracy 69.7 # 63
Action Classification Kinetics-600 S3D-G (RGB+Flow) Top-1 Accuracy 78.6 # 55
Action Classification Kinetics-600 S3D-G (RGB) Top-1 Accuracy 76.6 # 58

Methods