/ Модель

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

Лицензия
Apache 2.0
Библиотека
transformers
Опубликована
3 авг 2026

wav2vec2-bert-base-s-emotion-v1-crosslingual

Классификация текстаТекст → label3 профессии

Мультиязычная модель Aniemore классифицирует эмоции в речи по аудио и расшифровке, включая спонтанные разговоры.

58скачиваний за 30 дней0лайковвеса обновлены4 авг 2026

Бенчмарки

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

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

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

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

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

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

Aniemore/wav2vec2-bert-base-s-emotion-v1-crosslingual — мультиязычная модель распознавания эмоций в речи, разработанная Aniemore. Она дообучена на смеси 27 939 аудиофрагментов из восьми языков и трёх речевых регистров и классифицирует примеры по семи классам: гнев, отвращение, энтузиазм, страх, счастье, нейтральность и грусть. Архитектура — Wav2Vec2BertForSequenceClassification; модель принимает аудио вместе с расшифровкой речи и выдаёт метку эмоционального класса. Для скачивания доступны варианты fp32, int8, fp8 и int4.

Модель ориентирована на анализ как постановочной, так и спонтанной речи. В README приведены результаты на русских тестовых наборах и наборе CAMEO на семи нерусских языках. На спонтанной русской речи она заметно лучше предыдущей версии распознаёт преобладающий нейтральный класс, но результаты на постановочной речи ниже. Модель унаследована от facebook/wav2vec2-large-xlsr-53 и bert-base-multilingual-cased; лицензия репозитория — Apache-2.0.

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

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

Ограничения

Для работы требуется расшифровка речи вместе с аудио; обучающие и тестовые расшифровки были чистыми, поэтому ошибки ASR могут ухудшить результат. На спонтанной речи оценки рассчитаны с отображением четырёх классов на семь, а показатели CAMEO не подтверждают перенос на новых говорящих.

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

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

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

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

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

Открыть на Hugging Face

wav2vec2-bert-base-s-emotion-v1-crosslingual

Speech emotion recognition over seven classes — anger, disgust, enthusiasm, fear, happiness, neutral, sadness.

Same architecture as Aniemore/wav2vec2-bert-base-s-emotion-russian-resd, retrained on a mix of 27,939 clips spanning eight languages and three speaking registers instead of one acted Russian corpus. The point of the change is spontaneous speech: the previous release was trained only on acted dialogue, where every class is equally frequent and every utterance is performed, and real speech is neither.

Quantized builds ship in the same repository under int8/, fp8/ and int4/.

Results

test setwhat it ismacro-F1UAWAprevious release
RESD testacted Russian, 7 balanced classes0.70240.69780.70360.7182
Dusha podcast testspontaneous Russian, majority neutral0.43840.61050.83690.1217
CAMEO test7 non-Russian languages0.60920.61580.68310.2487

Read the first two rows together. The acted score goes down and the spontaneous score goes up; both follow from the same change, and which one matters is a deployment question. If your audio is read or performed speech, the previous release may still suit you better.

CAMEO ships no train/test partition, and the usual way to make one — a random split over clips — puts nearly every test speaker into training as well: three of its twelve constituent corpora contain a single speaker each, so no clip-level split of them can be speaker-disjoint even in principle. The number above is reported for completeness. Treat it as an in-domain figure, not as evidence of cross-lingual transfer.

Each card leads with the macro-F1 for that set; the rows are the detail behind it. Both per-class numbers are shown because they disagree in a way that matters: recall rewards a class the model over-predicts, so on the spontaneous set the minority classes reach decent recall at poor F1 — most clips called sad there are not sad. If you are going to act on one class, read its F1.

Each set keeps its own class list: the spontaneous corpus has four classes and the other two have seven, and there is no correspondence between positive and any single one of happiness/enthusiasm to line them up with.

Per-class recall on spontaneous speech

classthis modelprevious release
angry0.55090.6048
neutral0.85840.1327
positive0.52780.3685
sad0.50490.2524

neutral carries most of real speech and is the class the previous release missed.

Quantized variants

subfolderschemeweightsvs fp32macro-F1UAWA
(root)fp321887 MiB1.0x0.70240.69780.7036
int8W8A16791 MiB2.4x smaller0.70230.69780.7036
fp8W8A16-float781 MiB2.4x smaller0.70930.70410.7107
int4W4A16_ASYM608 MiB3.1x smaller0.69700.69630.7000

Weight-only, round-to-nearest, no calibration. Every variant lands within the seed spread of the fp32 parent on RESD test, so the choice is about download size rather than about quality.

Training data

corpusclipslanguageregister
RESD948Russianacted dialogue
Dusha crowd6,800Russianacted, crowd-sourced
CAMEO6,8007 languages12 corpora, no Russian
Dusha podcast6,060Russianspontaneous podcast speech
IEMOCAP4,735Englishelicited dyadic sessions
ASVP-ESD2,596multilingualmixed register
total27,9398 languages3 registers

A slice is held out of every corpus in the mix, in the same proportion, and model selection is on that held-out split — never on any of the test sets above. Labels are unified to seven classes; four-class corpora are mapped upward and scored on the classes they actually contain.

Usage

import torch, librosa
from transformers import AutoModelForAudioClassification, AutoFeatureExtractor

repo = "Aniemore/wav2vec2-bert-base-s-emotion-v1-crosslingual"
model = AutoModelForAudioClassification.from_pretrained(repo).eval()
fe = AutoFeatureExtractor.from_pretrained(repo)

# Resample to 16 kHz. Do not skip it: RESD itself ships at 44.1 kHz,
# and handing the model 44.1 kHz audio while telling the extractor it
# is 16 kHz stretches time 2.8x and silently changes the answer.
wav, _ = librosa.load("clip.wav", sr=16000, mono=True)
x = fe(wav, sampling_rate=16000, return_tensors="pt", padding=True)
with torch.no_grad():
    probs = model(**x).logits.softmax(-1)[0]
print({model.config.id2label[i]: round(p.item(), 3) for i, p in enumerate(probs)})

For a quantized build, name the subfolder — only that subfolder is downloaded:

model = AutoModelForAudioClassification.from_pretrained(
    repo, subfolder="int8").eval()          # or "fp8", "int4"
fe = AutoFeatureExtractor.from_pretrained(repo, subfolder="int8")

Limitations

  • Scores are the mean of two seeds; the seed spread on the 280-clip RESD split is ±0.03–0.05, so differences smaller than that are not differences.
  • The spontaneous set has four classes where the model has seven, so its numbers are computed over a mapped label space and are not comparable to seven-class figures.
  • Spontaneous scores are at zero decision bias. Calibrating the neutral threshold on your own development split will move them.
  • This is a bimodal checkpoint: it takes a transcript alongside the audio. The transcripts used in training and evaluation are corpus-provided and clean, which ASR output is not.
  • Inherited from facebook/wav2vec2-large-xlsr-53 + bert-base-multilingual-cased; the licence follows the base model.

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

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

GPU в ailist

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

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

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

Класс архитектуры
Wav2Vec2BertForSequenceClassification
Ревизия весов
20416a4

0 моделей