Mixing-Equivariant Audio Autoencoder β€” checkpoints

Inference weights for "What Makes Audio Latents Mixing-Equivariant? A Controlled Study of Explicit Supervision" (ICASSP 2027 submission).

Code, configs, eval scripts, and the paper source: https://github.com/nurdauletakhanov/musicgen β€” see its REPRODUCING.md for the exact command behind every number in the paper.

Layout

  • musicgen/<run>/best.pth β€” waveform GAN autoencoder runs (v1/v2/v3 lineage; 33.5M params, 44.1 kHz mono). Load with the matching config under configs/experiments/ in the code repo.
  • m2l/<phase>_ema.pt β€” EMA-merged Music2Latent fine-tunes (cross-architecture experiments, paper Sec. IV-B).
  • MANIFEST.md β€” file-by-file provenance.

Quick use

# in a checkout of the code repo
from training.config import load_config, build_model_config
from models.autoencoder import Autoencoder
import torch

cfg = load_config("configs/experiments/v2/v2.1_decmix.yaml")
model = Autoencoder(**build_model_config(cfg))
ck = torch.load("best.pth", map_location="cpu", weights_only=False)
model.load_state_dict(ck["model"])
model.eval()
# Stem removal. Subtract in the latent space, then ADD the encoded silence:
# its coefficients (1, -1) sum to zero, so without f(0) the encoder's offset
# does not cancel and the score mostly reflects that offset (see below).
zero = torch.zeros_like(mix)
z = model.encoder(mix) - model.encoder(stem) + model.encoder(zero)
residual, _ = model.decoder(z)

# Raw baseline, for comparison only β€” NOT the recommended form:
# z_raw = model.encoder(mix) - model.encoder(stem)

v2.1-decmix is the paper's recommended recipe (decode-mixing loss only).

Two things to know before comparing these models

Latent subtraction needs the origin. Subtraction has coefficients (1, -1), which sum to zero, so the encoder's offset f(0) drops out. For an affine encoder f(x) = Ax + b the identity f(mix) - f(stem) + f(0) = f(res) is exact, so the corrected decode is the model's own reconstruction of the residual. Raw subtraction scores therefore mostly reflect each model's latent offset, not the training recipe; correct it before comparing. On a held-out corpus of 240 recordings the correction removes 87-95% of the apparent advantage of mixing supervision, leaving a small residue of +0.12 to +0.42 dB rather than nothing:

python -m evaluation.compute_subtraction --origin-correct ...

Decode-vs-decode SI-SDR is confounded for the M2L checkpoints. A consistency decoder draws fresh noise per call. Decoding the same latent twice with independent noise scores -1.8 dB with no latent arithmetic at all, so share the decode noise (the eval adapter does) or the metric measures sampling, not linearity.

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support