File size: 2,657 Bytes
e86a150
 
 
 
f285d3f
0ae678f
 
 
 
 
 
97c835e
422d065
 
 
e86a150
0ae678f
 
 
 
 
 
e86a150
 
5cf5e1f
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1d7fe55
5cf5e1f
 
 
 
 
 
 
 
 
 
 
 
 
 
1d7fe55
5cf5e1f
 
 
 
 
 
 
 
 
 
 
 
 
 
606b032
 
 
 
 
 
 
 
 
 
2b78941
1dcdea7
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
---
tags:
- model_hub_mixin
- pytorch_model_hub_mixin
license: openrail
language:
- en
metrics:
- accuracy
base_model:
- microsoft/wavlm-large
pipeline_tag: audio-classification
datasets:
- edinburghcstr/edacc
- mozilla-foundation/common_voice_11_0
---
# WavLM-Large for Broader Accent Classification

# Model Description
This model includes the implementation of broader accent classification described in Vox-Profile: A Speech Foundation Model Benchmark for Characterizing Diverse Speaker and Speech Traits (https://arxiv.org/pdf/2505.14648)

The included English accents are: ['British Isles', 'North America', 'Other']

- Library: https://github.com/tiantiaf0627/vox-profile-release


# How to use this model

## Download repo
```
git clone git@github.com:tiantiaf0627/vox-profile-release.git
```
## Install the package
```
conda create -n vox_profile python=3.8
cd vox-profile-release
pip install -e .
```

## Load the model
```python
# Load libraries
import torch
import torch.nn.functional as F
from src.model.accent.wavlm_accent import WavLMWrapper

# Find device
device = torch.device("cuda") if torch.cuda.is_available() else "cpu"

# Load model from Huggingface
model = WavLMWrapper.from_pretrained("tiantiaf/wavlm-large-broader-accent").to(device)
model.eval()
```

## Prediction
```python
# Label List
english_accent_list = [
    'British Isles', 'North America', 'Other'
]
    
# Load data, here just zeros as the example, audio data should be 16kHz mono channel
data = torch.zeros([1, 16000]).float().to(device)
logits, embeddings = model(data, return_feature=True)
    
# Probability and output
accent_prob = F.softmax(logits, dim=1)
print(english_accent_list[torch.argmax(accent_prob).detach().cpu().item()])
```

## If you have any questions, please contact: Tiantian Feng (tiantiaf@usc.edu)

## Kindly cite our paper if you are using our model or find it useful in your work
```
@article{feng2025vox,
  title={Vox-Profile: A Speech Foundation Model Benchmark for Characterizing Diverse Speaker and Speech Traits},
  author={Feng, Tiantian and Lee, Jihwan and Xu, Anfeng and Lee, Yoonjeong and Lertpetchpun, Thanathai and Shi, Xuan and Wang, Helin and Thebaud, Thomas and Moro-Velazquez, Laureano and Byrd, Dani and others},
  journal={arXiv preprint arXiv:2505.14648},
  year={2025}
}
```
Responsible use of the Model: the Model is released under Open RAIL license, and users should respect the privacy and consent of the data subjects, and adhere to the relevant laws and regulations in their jurisdictions in using our model.

❌ **Out-of-Scope Use**
- Clinical or diagnostic applications
- Surveillance
- Privacy-invasive applications