Methods › General › Semi-Supervised Learning Methods › Contrastive Predictive Coding

Contrastive Predictive Coding

113 papers tagged archive 2025-07-28

Introduced by Aaron van den Oord et al. in Representation Learning with Contrastive Predictive Coding

archive 2025-07-28 Description, source and code snippet are the archive's method entry.

Contrastive Predictive Coding (CPC) learns self-supervised representations by predicting the future in latent space by using powerful autoregressive models. The model uses a probabilistic contrastive loss which induces the latent space to capture information that is maximally useful to predict future samples.

First, a non-linear encoder g_(enc) maps the input sequence of observations xₜ to a sequence of latent representations zₜ = g_(enc)(xₜ), potentially with a lower temporal resolution. Next, an autoregressive model gₐᵣ summarizes all z≤t in the latent space and produces a context latent representation cₜ = gₐᵣ(z≤t).

A density ratio is modelled which preserves the mutual information between xₜ₊ₖ and cₜ as follows:

fₖ(xₜ₊ₖ, cₜ) ∝(p(xₜ₊ₖ|cₜ))/(p(xₜ₊ₖ))

where ∝ stands for ’proportional to’ (i.e. up to a multiplicative constant). Note that the density ratio f can be unnormalized (does not have to integrate to 1). The authors use a simple log-bilinear model:

fₖ(xₜ₊ₖ, cₜ) = exp(zᵀₜ₊ₖWₖcₜ)

Any type of autoencoder and autoregressive can be used. An example the authors opt for is strided convolutional layers with residual blocks and GRUs.

The autoencoder and autoregressive models are trained to minimize an InfoNCE loss (see components).

PaperSourceSee Code · jefflai108/Contrastive-Predictive-Coding-PyTorch

Papers archive 2025-07-28

30 shown of 113, newest first. Repository counts are the archive's code-links table. A Syntology line states what Syntology ran from that paper's harvested code; it is per sample and not a correctness claim.

Tasks archive 2025-07-28

20 shown of 137 tasks the archive attaches to papers tagged with this method, by distinct papers. A task without a page in the catalog is plain text.

TaskPapers
Representation Learning23
Self-Supervised Learning17
Contrastive Learning10
Speech Recognition10
speech-recognition10
Automatic Speech Recognition9
Automatic Speech Recognition (ASR)7
Acoustic Unit Discovery6
Transfer Learning6
Voice Conversion6
Anomaly Detection5
Language Modelling5
Activity Recognition4
General Classification4
Human Activity Recognition4
Quantization4
Segmentation4
Time Series4
Disentanglement3
Language Modeling3

Usage over time archive 2025-07-28

Papers per year tagged with Contrastive Predictive Coding: 2018 to 2025, peak 27 27 0 2018: 2 papers 2018 2019: 7 papers 2019 2020: 20 papers 2020 2021: 27 papers 2021 2022: 21 papers 2022 2023: 14 papers 2023 2024: 16 papers 2024 2025: 6 papers 2025
Papers per year the archive tags with this method, by the paper's archive date (113 dated). Bars are counts, not a trend claim.

Components: the archive holds no method-to-method composition, so PwC's Components table cannot be rebuilt; the Papers list carries no Results column for the same reason (the archive does not join its leaderboard rows to method tags).

Categories archive 2025-07-28

Semi-Supervised Learning MethodsSelf-Supervised Learning

Report a problem or propose a change · a person checks every report against the paper or source before anything changes; decisions are listed on /corrections