/ Модель

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

Лицензия
Apache 2.0
Архитектура
ced · dense
Опубликована
24 ноя 2023

ced-small

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

CED-Small — компактная модель для классификации аудиозаписей и распознавания звуковых событий по мел-спектрограммам.

911скачиваний за 30 дней0лайковвеса обновлены30 мар 2026

Бенчмарки

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

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

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

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

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

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

CED-Small — модель на основе Vision Transformer и Transformer, разработанная авторами работы «CED: Consistent ensemble distillation for audio tagging». Она предназначена для присвоения аудиозаписям меток звуковых событий, в том числе классификации по классам AudioSet. Вариант Small содержит около 22 млн параметров; для оценки на AudioSet-20K в карточке приведено значение mAP 41,6, а на AudioSet-2M — 49,6.

Модель принимает аудио через мел-спектрограммы и поддерживает входные сегменты переменной длины. Архитектурные решения сокращают число патчей спектрограммы и ускоряют обучение и инференс относительно описанного в README AST. CED также рассчитана на дообучение: нормализация мел-спектрограмм упрощает подготовку данных. Карточка демонстрирует использование замороженного энкодера с обучаемой линейной головой на ESC-50.

Репозиторий содержит варианты ONNX и safetensors. Модель распространяется по лицензии Apache-2.0. В предоставленных материалах не заявлены поддерживаемые естественные языки; качество может зависеть от набора классов и данных, на которых выполняется дообучение.

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

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

Ограничения

Модель предназначена для классификации аудио, а не для распознавания или генерации речи. Поддерживаемые естественные языки и ограничения по длине аудио в предоставленных материалах не описаны.

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

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

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

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

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

Открыть на Hugging Face

CED-Small Model

CED are simple ViT-Transformer-based models for audio tagging, achieving sota performance on Audioset.

ModelParameters (M)AS-20K (mAP)AS-2M (mAP)
CED-Tiny5.536.548.1
CED-Mini9.638.549.0
CED-Small2241.649.6
CED-Base8644.050.0

Notable differences from other available models include:

  1. Simplification for finetuning: Batchnormalization of Mel-Spectrograms. During finetuning one does not need to first compute mean/variance over the dataset, which is common for AST.
  2. Support for variable length inputs. Most other models use a static time-frequency position embedding, which hinders the model's generalization to segments shorter than 10s. Many previous transformers simply pad their input to 10s in order to avoid the performance impact, which in turn slows down training/inference drastically.
  3. Training/Inference speedup: 64-dimensional mel-filterbanks and 16x16 patches without overlap, leading to 248 patches from a 10s spectrogram. In comparison, AST uses 128 mel-filterbanks with 16x16 (10x10 overlap) convolution, leading to 1212 patches during training/inference. CED-Tiny runs on a common CPU as fast as a comparable MobileNetV3.
  4. Performance: CED with 10M parameters outperforms the majority of previous approaches (~80M).

Model Sources

Inference

>>> from transformers import AutoModelForAudioClassification, AutoFeatureExtractor

>>> model_name = "mispeech/ced-small"
>>> feature_extractor = AutoFeatureExtractor.from_pretrained(model_name, trust_remote_code=True)
>>> model = AutoModelForAudioClassification.from_pretrained(model_name, trust_remote_code=True)

>>> import torchaudio
>>> audio, sampling_rate = torchaudio.load("/path-to/JeD5V5aaaoI_931_932.wav")
>>> assert sampling_rate == 16000
>>> inputs = feature_extractor(audio, sampling_rate=sampling_rate, return_tensors="pt")

>>> import torch
>>> with torch.no_grad():
...     logits = model(**inputs).logits

>>> predicted_class_id = torch.argmax(logits, dim=-1).item()
>>> model.config.id2label[predicted_class_id]
'Finger snapping'

Inference (Onnx)

>>> from optimum.onnxruntime import ORTModelForAudioClassification

>>> model_name = "mispeech/ced-small"
>>> model = ORTModelForAudioClassification.from_pretrained(model_name, trust_remote_code=True)

>>> import torchaudio
>>> audio, sampling_rate = torchaudio.load("/path-to/JeD5V5aaaoI_931_932.wav")
>>> assert sampling_rate == 16000
>>> input_name = model.session.get_inputs()[0].name
>>> output = model(**{input_name: torch.randn(1, 16000)})
>>> logits = output.logits.squeeze()
>>> for idx in logits.argsort()[-2:][::-1]:
>>>   print(f"{model.config.id2label[idx]}: {logits[idx]:.4f}")
'Finger snapping: 0.9155'
'Slap: 0.0567'

Fine-tuning

example_finetune_esc50.ipynb demonstrates how to train a linear head on the ESC-50 dataset with the CED encoder frozen.

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

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

GPU в ailist

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

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

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

Класс архитектуры
CedForAudioClassification
Ревизия весов
06bb40c

0 моделей