/ Модель

Характеристики

Лицензия
Apache 2.0
Архитектура
matpac · dense
Библиотека
transformers
Опубликована
4 сен 2026

matpac_music

Классификация аудиоАудио → label3 профессии

Музыкальный аудиоэнкодер MATPAC++ извлекает 3840-мерные представления для классификации и других задач анализа музыки.

1 495скачиваний за 30 дней1лайквеса обновлены7 сен 2026

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

MATPAC++ music — аудиоэнкодер семейства MATPAC, обученный на музыкальных данных и опубликованный в формате для Transformers. Модель разработана на основе исходного проекта MATPAC от aurianworld; репозиторий содержит порт кода инференса с загрузкой через trust_remote_code. Указанный чекпойнт выдаёт аудиопредставления размерности 3840 и предназначен для извлечения признаков и классификации аудио, включая применение в музыкальных задачах.

Энкодер можно использовать как основу для downstream-задач, подключая отдельные веса линейных проб. В режиме по умолчанию временные признаки усредняются; параметр pull_time_dimension=false позволяет сохранить временную ось, а inference_type=fast ускоряет обработку крупных батчей ценой небольшого снижения точности относительно режима precise. Для загрузки кода требуются torchaudio, einops и timm версии 0.4.12. Лицензия репозитория — Apache-2.0.

Сценарии применения

  • извлечение эмбеддингов из музыкальных аудиозаписей
  • классификация музыкальных фрагментов
  • получение признаков для downstream-задач анализа музыки
  • сохранение временных признаков аудио для последующей обработки

Ограничения

Для выполнения удалённого кода требуются torchaudio, einops и timm==0.4.12; ускоренный режим немного менее точен, чем режим precise. Для downstream-классификации с линейными пробами нужно отдельно получить и подключить их веса.

Для каких профессий подходит3

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

MATPAC++ (music)

MATPAC (Masked latent Prediction And Classification) is a self-supervised audio and music encoder. This repo hosts the MATPAC++ encoder pre-trained on music (matpac_plus_music_6s_2048_enconly.pt), a transformers-native, trust_remote_code port of the official inference code (aurianworld/matpac, folder inference_matpac), following the same pattern as m-a-p/MERT-v0.

The MATPAC family

RepoTrained onOutputNotes
matpac_general_audioGeneral audio (AudioSet)3840-d embeddingsDefault general-purpose audio encoder
matpac_music (this repo)Music3840-d embeddingsMusic-specialized encoder
matpac_audioset_finetune_encoderAudioSet (fine-tuned)3840-d embeddingsFine-tuned encoder, no classification head
matpac_audioset_finetune_classifierAudioSet (fine-tuned)527-way logitsReady-to-use AudioSet tagger

To use the downstream-task linear probes, download the weights from the original repo (Weights_probes_matpac.zip), and attach them to this encoder with the conversion script. See Downstream task probes below for details.

Usage

from transformers import AutoModel, Wav2Vec2FeatureExtractor
import torch
import torchaudio

model = AutoModel.from_pretrained("auriankelen/matpac_music", trust_remote_code=True)
processor = Wav2Vec2FeatureExtractor.from_pretrained("auriankelen/matpac_music", trust_remote_code=True)

waveform, sr = torchaudio.load("my_song.wav")
waveform = waveform.mean(dim=0)  # mono

resample_rate = processor.sampling_rate
if resample_rate != sr:
    waveform = torchaudio.transforms.Resample(sr, resample_rate)(waveform)

inputs = processor(waveform, sampling_rate=resample_rate, return_tensors="pt")

with torch.no_grad():
    outputs = model(**inputs)

# outputs.last_hidden_state: (batch, 3840) -- mean-pooled over time by default
# outputs.hidden_states: tuple of 12 tensors, one per encoder layer, each (batch, 3840)
all_layer_hidden_states = torch.stack(outputs.hidden_states)
print(all_layer_hidden_states.shape)  # [12, batch, 3840]

Keeping the time dimension / faster inference

# Keep the time axis instead of mean-pooling it
outputs = model(**inputs, pull_time_dimension=False)
# outputs.last_hidden_state: (batch, time, 3840)

# Vectorized inference: faster on large batches, adds some padding so it is
# slightly less precise than the default ("precise", used for the paper's results)
outputs = model(**inputs, inference_type="fast")

Downstream task probes

Get the probe weights straight from here Probes_weights and merge them into a loadable HF folder with convert_matpac_checkpoint.py:

python convert_matpac_checkpoint.py \
    --checkpoint_path matpac_plus_6s_2048_enconly.pt \
    --probe_checkpoint_path matpac++_general_audio/fsd50k.pth \
    --class_mappings_dir matpac/inference_matpac/matpac/class_mappings \
    --output_dir ./matpac-general-audio-fsd50k

outputs.logits then holds the task's logits and model.config.id2label the corresponding labels, exactly as for the AudioSet head above.

Requirements

This model needs a couple of packages beyond transformers to run its trust_remote_code files: torchaudio, einops, and timm==0.4.12 (the exact timm version the checkpoints were exported with — the internal naming of the ViT block submodules must match for the weights to load correctly).

Citation

@inproceedings{quelennec2025matpac,
  title={Masked Latent Prediction and Classification for Self-Supervised Audio Representation Learning},
  author={Quelennec, Aurian and Chouteau, Pierre and Peeters, Geoffroy and Essid, Slim},
  booktitle={ICASSP 2025 - 2025 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP)},
  year={2025},
  url={https://ieeexplore.ieee.org/document/10887666},
  doi={10.1109/ICASSP49660.2025.10887666}
}

@article{quelennec2025matpacenhancedmaskedlatent,
  title={MATPAC++: Enhanced Masked Latent Prediction for Self-Supervised Audio Representation Learning},
  author={Aurian Quelennec and Pierre Chouteau and Geoffroy Peeters and Slim Essid},
  journal={arXiv preprint arXiv:2508.12709},
  year={2025},
  url={https://arxiv.org/abs/2508.12709}
}

Credits

  • aurianworld/matpac for the original training and inference code.
  • Fairseq for the training framework.
  • M2D for the base of the inference code.
  • DINO for the classification head.

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · transformers · audio-classification

Нельзя запустить

Модели нужен код из репозитория; автор пока не в списке доверенных организаций.

Класс архитектуры
MatpacModel
Ревизия весов
a7e10eb

0 моделей