# facebookresearch/slowfast

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/facebookresearch-slowfast).**

7,377 stars · 1,298 forks · Python · Apache-2.0

## Links

- GitHub: https://github.com/facebookresearch/SlowFast
- awesome-repositories: https://awesome-repositories.com/repository/facebookresearch-slowfast.md

## Description

SlowFast is a PyTorch video understanding framework and spatiotemporal neural network library. It serves as a toolset for video action recognition, enabling the training and evaluation of models designed to classify complex activities and objects within video sequences.

The framework is distinguished by its use of dual-pathway spatiotemporal sampling to capture both slow and fast motions. It supports self-supervised video learning for pre-training models on unlabeled data and employs multigrid spatiotemporal training to optimize learning across multiple spatial and temporal resolutions.

The library covers a broad range of capabilities including spatiotemporal representation learning, weighted temporal aggregation, and state-of-the-art benchmarking. It also provides tools for model performance analysis through inference and visualization.

## Tags

### Artificial Intelligence & ML

- [Dual-Pathway Sampling](https://awesome-repositories.com/f/artificial-intelligence-ml/spatiotemporal-patching/dual-pathway-sampling.md) — Implements a signature dual-pathway sampling strategy to capture both slow and fast motions in video sequences.
- [Data-Parallel Training](https://awesome-repositories.com/f/artificial-intelligence-ml/distributed-training-frameworks/data-parallel-training.md) — Provides distributed data-parallel execution to synchronize gradients across multiple GPUs for large video datasets.
- [Large-Scale Model Training](https://awesome-repositories.com/f/artificial-intelligence-ml/large-scale-model-training.md) — Provides methodologies for training large-scale video networks that exceed single-device capacity.
- [Machine Learning Training](https://awesome-repositories.com/f/artificial-intelligence-ml/machine-learning/infrastructure/machine-learning-training.md) — Ships utilities for training spatiotemporal models using efficient techniques like multigrid learning. ([source](https://github.com/facebookresearch/slowfast#readme))
- [PyTorch Training Frameworks](https://awesome-repositories.com/f/artificial-intelligence-ml/pytorch-training-frameworks.md) — Offers a high-level PyTorch-based structure for organizing and executing the training of video recognition models.
- [Multigrid Training](https://awesome-repositories.com/f/artificial-intelligence-ml/training-optimizations/multigrid-training.md) — Employs multigrid spatiotemporal training to optimize learning across various spatial and temporal resolutions.
- [Temporal Feature Aggregation](https://awesome-repositories.com/f/artificial-intelligence-ml/model-weight-management/weight-distribution/weight-aggregation-configurators/temporal-feature-aggregation.md) — Provides weighted temporal aggregation to combine features across different time scales into a single video representation.

### Part of an Awesome List

- [Action Recognition](https://awesome-repositories.com/f/awesome-lists/ai/action-recognition.md) — Provides specialized tools for identifying and classifying human activities within video sequences.
- [Neural Network Architectures](https://awesome-repositories.com/f/awesome-lists/ai/neural-network-architectures.md) — Provides a library of neural network architectures specifically designed for analyzing spatiotemporal patterns in video.
- [Video Understanding](https://awesome-repositories.com/f/awesome-lists/ai/video-understanding.md) — Enables the identification and classification of actions and objects within video sequences. ([source](https://github.com/facebookresearch/slowfast#readme))
- [Model Evaluation and Benchmarking](https://awesome-repositories.com/f/awesome-lists/ai/model-evaluation-and-benchmarking.md) — Includes tools for reproducing and evaluating high-performance video models against standard industry benchmarks.
- [Video Pre-training](https://awesome-repositories.com/f/awesome-lists/ai/self-supervised-learning/video-pre-training.md) — Supports self-supervised video learning for pre-training models on unlabeled data to improve feature extraction.
- [Video Representation Learning](https://awesome-repositories.com/f/awesome-lists/ai/video-representation-learning.md) — High-performance dual-pathway architecture for video recognition.
