Russian_ASR_Leaderboard / constants.py
Anonumous's picture
Update benchmark code
3b7d44a
raw
history blame
5.1 kB
import os
INTRODUCTION_TEXT = """
# Русский ASR Лидерборд
Добро пожаловать в лидерборд для моделей автоматического распознавания речи (ASR) на русском языке.
Здесь вы можете сравнить производительность различных моделей по метрикам WER (Word Error Rate) и CER (Character Error Rate) на нескольких датасетах.
Лидерборд сортируется по среднему WER (⬇️ - чем ниже, тем лучше).
Наведите курсор на значение WER в колонке датасета, чтобы увидеть CER.
Все метрики указаны в процентах (%).
"""
METRICS_TAB_TEXT = """
# Метрики
Метрики рассчитываются на текстах в нижнем регистре и без пунктуации.
- **WER (Word Error Rate)**: Ошибка на уровне слов. Рассчитывается как:
$$ WER = \\frac{S + D + I}{N} $$
где S - количество замен, D - удалений, I - вставок, N - количество слов в референсе.
- **CER (Character Error Rate)**: Ошибка на уровне символов. Аналогичная формула, но для символов:
$$ CER = \\frac{S + D + I}{N} $$
где S, D, I, N - соответственно замены, удаления, вставки и количество символов в референсе.
- **Средние значения**: Простое среднее по всем датасетам.
- Все метрики нормализованы и представлены в процентах для удобства сравнения.
"""
SUBMIT_TAB_TEXT = """
# Отправить результат
Чтобы добавить вашу модель в лидерборд, отправьте JSON с результатами. Метрики должны быть в диапазоне [0, 1] (не в процентах).
Формат:
```json
{
"model_name": "MyAwesomeASRModel",
"link": "https://huggingface.co/myusername/my-asr-model",
"license": "Apache-2.0",
"metrics": {
"Russian_LibriSpeech": {
"wer": 0.1234,
"cer": 0.0567
},
"Common_Voice_Corpus_22.0": {
"wer": 0.2345,
"cer": 0.0789
},
"Tone_Webinars": {
"wer": 0.3456,
"cer": 0.0987
},
"Tone_Books": {
"wer": 0.4567,
"cer": 0.1098
},
"Tone_Speak": {
"wer": 0.5678,
"cer": 0.1209
},
"Sova_RuDevices": {
"wer": 0.6789,
"cer": 0.1310
}
}
}
В отчёте обязательно должны быть все датасеты, а именно: Russian_LibriSpeech, Common_Voice_Corpus_22.0, Tone_Webinars, Tone_Books, Tone_Speak, Sova_RuDevices.
После отправки лидерборд обновится автоматически.
"""
REPO_ID = "Vikhrmodels/russian-asr-leaderboard"
HF_TOKEN = os.getenv("HF_TOKEN")
DATASETS = [
"Russian_LibriSpeech",
"Common_Voice_Corpus_22.0",
"Tone_Webinars",
"Tone_Books",
"Tone_Speak",
"Sova_RuDevices",
]
SHORT_DATASET_NAMES = ["RuLS", "CV 22.0", "Webinars", "Books", "Speak", "Sova"]
DATASET_DESCRIPTIONS = {
"RuLS": {
"full_name": "Russian_LibriSpeech",
"description": "Russian LibriSpeech (RuLS) — датасет на основе аудиокниг из общественного достояния от LibriVox, содержащий около 98 часов русской речи с транскрипциями.",
"num_rows": 1352,
},
"CV 22.0": {
"full_name": "Common_Voice_Corpus_22.0",
"description": "Common Voice — краудсорсинговый многоязычный корпус речи от Mozilla. Версия 22.0 включает данные русской речи с транскрипциями.",
"num_rows": 10244,
},
"Webinars": {
"full_name": "Tone_Webinars",
"description": "Tone_Webinars — датасет русской речи из вебинаров с транскрипциями.",
"num_rows": 21587,
},
"Books": {
"full_name": "Tone_Books",
"description": "Tone_Books — датасет русских аудиокниг с транскрипциями.",
"num_rows": 4938,
},
"Speak": {
"full_name": "Tone_Speak",
"description": "Tone_Speak — датасет синтетической русской речи с транскрипциями.",
"num_rows": 700,
},
"Sova": {
"full_name": "Sova_RuDevices",
"description": "SOVA RuDevices — акустический корпус примерно 100 часов 16kHz живой русской речи, записанной на устройствах, с ручной транскрипцией.",
"num_rows": 5799,
},
}