モバイルビデオネットワーク(MoViNets)を紹介します。これは、オンライン推論のためにストリーミングビデオを操作できる計算およびメモリ効率の高いビデオネットワークのファミリーです。 3D畳み込みニューラルネットワーク(CNN)は、ビデオ認識では正確ですが、大量の計算とメモリバジェットを必要とし、オンライン推論をサポートしていないため、モバイルデバイスでの作業が困難です。 3D CNNのピークメモリ使用量を大幅に削減しながら、計算効率を向上させる3段階のアプローチを提案します。まず、ビデオネットワーク検索スペースを設計し、ニューラルアーキテクチャ検索を使用して、効率的で多様な3DCNNアーキテクチャを生成します。次に、メモリをビデオクリップの長さから切り離すストリームバッファ技術を紹介します。これにより、3D CNNは、トレーニングと推論の両方で、小さな一定のメモリフットプリントで任意の長さのストリーミングビデオシーケンスを埋め込むことができます。第三に、効率を犠牲にすることなく精度をさらに向上させるための単純なアンサンブル手法を提案します。これらの3つの進歩的な手法により、MoViNetは、Kinetics、Moments in Time、およびCharadesのビデオアクション認識データセットで最先端の精度と効率を実現できます。たとえば、MoViNet-A5-Streamは、Kinetics 600でX3D-XLと同じ精度を実現しますが、必要なFLOPは80%少なく、メモリは65%少なくなります。コードはhttps://github.com/tensorflow/models/tree/master/official/visionで利用できるようになります。
We present Mobile Video Networks (MoViNets), a family of computation and memory efficient video networks that can operate on streaming video for online inference. 3D convolutional neural networks (CNNs) are accurate at video recognition but require large computation and memory budgets and do not support online inference, making them difficult to work on mobile devices. We propose a three-step approach to improve computational efficiency while substantially reducing the peak memory usage of 3D CNNs. First, we design a video network search space and employ neural architecture search to generate efficient and diverse 3D CNN architectures. Second, we introduce the Stream Buffer technique that decouples memory from video clip duration, allowing 3D CNNs to embed arbitrary-length streaming video sequences for both training and inference with a small constant memory footprint. Third, we propose a simple ensembling technique to improve accuracy further without sacrificing efficiency. These three progressive techniques allow MoViNets to achieve state-of-the-art accuracy and efficiency on the Kinetics, Moments in Time, and Charades video action recognition datasets. For instance, MoViNet-A5-Stream achieves the same accuracy as X3D-XL on Kinetics 600 while requiring 80% fewer FLOPs and 65% less memory. Code will be made available at https://github.com/tensorflow/models/tree/master/official/vision.