coml/mmsulab
Viewer • Updated • 4.12M • 2.63k • 2
SpidR MMS-ulab is a SpidR model pretrained on the Segmented MMS ulab v2 dataset
for the DiscoPhon benchmark.
It was pretrained using the spidr library.
You can load it with:
from spidr.models import SpidR
from torch.hub import load_state_dict_from_url
state_dict = load_state_dict_from_url("https://huggingface.co/coml/spidr-mmsulab/resolve/main/final.pt")
model = SpidR().eval()
model.load_state_dict(state_dict)
config.json: Model configuration.final.pt: Model checkpoint.The checkpoints branch contains the training checkpoints,
as saved by spidr:
step_*.pt files contain the model weights, epoch and step.final.pt contains the full training state (model weights, optimizer, scheduler, gradient scaler, epoch and step),
to resume training.List them with hf models ls coml/spidr-mmsulab --revision checkpoints, and load one with:
from pathlib import Path
import torch
from huggingface_hub import snapshot_download
from spidr.models import SpidR, build_model
# Download the checkpoint with its config.json, which build_model looks for in the same folder
folder = snapshot_download(
"coml/spidr-mmsulab",
revision="checkpoints",
allow_patterns=["step_50000.pt", "config.json"],
)
checkpoint = Path(folder) / "step_50000.pt"
# Build the model with the default config and load the weights
model = SpidR().eval()
model.load_state_dict(torch.load(checkpoint)["model"])
# Or build it from the downloaded config.json and load the weights in one call
model = build_model(model_type="spidr", checkpoint=checkpoint)
Please cite the DiscoPhon paper
@inproceedings{poli2026discophon,
title = {{DiscoPhon: Benchmarking the Unsupervised Discovery of Phoneme Inventories With Discrete Speech Units}},
author = {Maxime Poli and Manel Khentout and Angelo {Ortiz Tandazo} and Ewan Dunbar and Emmanuel Chemla and Emmanuel Dupoux},
year = {2026},
booktitle = {{Interspeech 2026}},
pages = {6664--6669},
doi = {10.21437/Interspeech.2026-2791},
issn = {2958-1796},
}
along with SpidR.