audeering_wav2vec2-large-robust-12-ft-emotion-msp-dim
audeering · View on Hugging Face ↗
Model card
The complete upstream card, rendered from this payload's README.md — the same hash-verified bytes the torrent distributes. Images and off-site links are removed; the original card on Hugging Face carries them.
language: en datasets:
- msp-podcast inference: true tags:
- speech
- audio
- wav2vec2
- audio-classification
- emotion-recognition license: cc-by-nc-sa-4.0 pipeline_tag: audio-classification
Model for Dimensional Speech Emotion Recognition based on Wav2vec 2.0
Please note that this model is for research purpose only. A commercial license for a model that has been trained on much more data can be acquired with audEERING. The model expects a raw audio signal as input, and outputs predictions for arousal, dominance and valence in a range of approximately 0...1. In addition, it provides the pooled states of the last transformer layer. The model was created by fine-tuning Wav2Vec2-Large-Robust on MSP-Podcast (v1.7). The model was pruned from 24 to 12 transformer layers before fine-tuning. An ONNX export of the model is available from doi:10.5281/zenodo.6221127. Further details are given in the associated paper and tutorial.
Usage
import numpy as np
import torch
import torch.nn as nn
from transformers import Wav2Vec2Processor
from transformers.models.wav2vec2.modeling_wav2vec2 import (
Wav2Vec2Model,
Wav2Vec2PreTrainedModel,
)
class RegressionHead(nn.Module):
r"""Classification head."""
def __init__(self, config):
super().__init__()
self.dense = nn.Linear(config.hidden_size, config.hidden_size)
self.dropout = nn.Dropout(config.final_dropout)
self.out_proj = nn.Linear(config.hidden_size, config.num_labels)
def forward(self, features, **kwargs):
x = features
x = self.dropout(x)
x = self.dense(x)
x = torch.tanh(x)
x = self.dropout(x)
x = self.out_proj(x)
return x
class EmotionModel(Wav2Vec2PreTrainedModel):
r"""Speech emotion classifier."""
def __init__(self, config):
super().__init__(config)
self.config = config
self.wav2vec2 = Wav2Vec2Model(config)
self.classifier = RegressionHead(config)
self.init_weights()
def forward(
self,
input_values,
):
outputs = self.wav2vec2(input_values)
hidden_states = outputs[0]
hidden_states = torch.mean(hidden_states, dim=1)
logits = self.classifier(hidden_states)
return hidden_states, logits
# load model from hub
device = 'cpu'
model_name = 'audeering/wav2vec2-large-robust-12-ft-emotion-msp-dim'
processor = Wav2Vec2Processor.from_pretrained(model_name)
model = EmotionModel.from_pretrained(model_name).to(device)
# dummy signal
sampling_rate = 16000
signal = np.zeros((1, sampling_rate), dtype=np.float32)
def process_func(
x: np.ndarray,
sampling_rate: int,
embeddings: bool = False,
) -> np.ndarray:
r"""Predict emotions or extract embeddings from raw audio signal."""
# run through processor to normalize signal
# always returns a batch, so we just get the first entry
# then we put it on the device
y = processor(x, sampling_rate=sampling_rate)
y = y['input_values'][0]
y = y.reshape(1, -1)
y = torch.from_numpy(y).to(device)
# run through model
with torch.no_grad():
y = model(y)[0 if embeddings else 1]
# convert to numpy
y = y.detach().cpu().numpy()
return y
print(process_func(signal, sampling_rate))
# Arousal dominance valence
# [[0.5460754 0.6062266 0.40431657]]
print(process_func(signal, sampling_rate, embeddings=True))
# Pooled hidden states of last transformer layer
# [[-0.00752167 0.0065819 -0.00746342 ... 0.00663632 0.00848748
# 0.00599211]]
Magnet link
Opens the swarm directly in your torrent client — no file download needed. Copy-paste works too:
magnet:?xt=urn:btih:75ac775e3a3df9efb6802bac20dbf784347df13b&dn=audeering_wav2vec2-large-robust-12-ft-emotion-msp-dimOpen magnet in torrent client · infohash 75ac775e3a3df9efb6802bac20dbf784347df13b
Files & hashes
| Path | Size | sha1 | sha256 |
|---|---|---|---|
| LICENSE | 20.4 KB (20,850 B) | 7cdbe0b482f604a06a0988dad8877ae8d9257f7d | e66c269d4819aaab34b49ef5220c4ddab6756f21bb5180761a4eb8561f2b7bbd |
| README.md | 3.8 KB (3,913 B) | c344aaa927989b261a8beeaefe59a93d1e1a1832 | 5fe5eb9afb24ab938fb3facf0eebe64a0f8a8628eb93fd772ba5c7120a45365d |
| config.json | 2.3 KB (2,344 B) | a9596a6e736ce7ddf629657e6b22c1a3756a554d | c0962c3d1f065972bbebbba0bbffb8016ef4e9aae4a9b07e5fec22f770d2cddb |
| model.safetensors | 630.7 MB (661,375,508 B) | cabeef4c249227d951a52adc34ae261a1ac3b282 | efa5ac1a13b2d2f42182738e44794b1eb4c0cdd221a8b4ae11304c3a5f5fae95 |
| preprocessor_config.json | 214 B (214 B) | 73caa151574001d3d495fae897e1d38968249712 | 60ca5a31e13f69ee2fbf147504c8676db5f6398fd7a6b12294341dff838edfcf |
| pytorch_model.bin | 630.8 MB (661,436,013 B) | b5b6bdfd40d11293524c3f26130f2a3ea706d025 | 176d9d1ce29a8bddbab44068b9c1c194c51624c7f1812905e01355da58b18816 |
| vocab.json | 2 B (2 B) | 9e26dfeeb6e641a33dae4961196235bdb965b21b | 44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a |
Cite this release
- Canonical URL
- https://aiseedbank.org/models/audeering_wav2vec2-large-robust-12-ft-emotion-msp-dim/
- Slug
- audeering_wav2vec2-large-robust-12-ft-emotion-msp-dim
- Infohash
- 75ac775e3a3df9efb6802bac20dbf784347df13b
- License
- cc-by-nc-sa-4.0
- Signing key fingerprint
- 85a3b32c3712427b
Every file carries a locally computed sha256 — verify a download against the signed sums: audeering_wav2vec2-large-robust-12-ft-emotion-msp-dim.SHA256SUMS (+ minisign signature).
Provenance
| Upstream repository | audeering/wav2vec2-large-robust-12-ft-emotion-msp-dim |
|---|---|
| Revision (pinned) | 6eba34a2485ea31cb03600241787c3a5edab8626 |
| Fetched at | 2026-09-03T20:58:09Z |
| License at fetch | cc-by-nc-sa-4.0 |
| Snapshot tool | huggingface · seedbank 0.1.0 |
Trackers
- udp://announce.aitorrent.org:6969/announce
- http://announce.aitorrent.org:7070/announce
- udp://announce2.aitorrent.org:6970/announce
- http://announce2.aitorrent.org:7071/announce
- udp://tracker.opentrackr.org:1337/announce
- udp://open.demonii.com:1337/announce
- udp://open.stealth.si:80/announce
- udp://exodus.desync.com:6969/announce
- udp://tracker.torrent.eu.org:451/announce
✓ verified · rehash-vs-hf-metadata at 2026-09-03T20:58:23Z
cc-by-nc-sa-4.0non-commercial use only1.23 GB (1,322,838,844 bytes)transformerspytorchsafetensorswav2vec2speechaudioaudio-classificationemotion-recognitionendpoints_compatible1 language (en)paper: 2203.07378