/ Модель

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

Контекст
1 024 токена
Параметры
153 млн
Лицензия
Apache 2.0
Архитектура
whisper · dense
Базовая модель
whisper-small
Библиотека
transformers
Опубликована
27 июл 2025

whisper-small-cv-fully-synthetic-nl

Распознавание речиАудио → текст8 профессий

Дообученная версия Whisper-small для транскрибирования нидерландской речи в текст с использованием реальных и синтетических аудиоданных.

22скачиваний за 30 дней0лайковвеса обновлены24 ноя 2025

Бенчмарки

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

Тесты пользователейпока нет

Никто ещё не опубликовал тест этой модели. Соберите бенчмарк из своих задач — результат появится здесь.

  1. Добавьте модель в бенчмарк

    Вместе с другими моделями категории «Распознавание речи» — сравнение идёт внутри одной категории.

  2. Опишите свои задачи

    Напишите запросы, при необходимости приложите файлы и эталонные ответы.

  3. Запустите и опубликуйте

    Модели ответят на каждую задачу, судья оценит ответы. Опубликованный результат появится на этой странице.

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

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

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

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

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

Это дообученная модель OpenAI Whisper-small, подготовленная автором yuriyvnv для автоматического распознавания нидерландской речи. Она принимает аудио и генерирует текстовую транскрипцию; модель реализована на базе WhisperForConditionalGeneration и содержит 153,1 млн параметров.

Модель дообучена на 34 952 реальных аудиозаписях Common Voice 17.0 на нидерландском языке и 34 898 синтетических примерах без фильтрации качества. На тестовой части Common Voice указана доля ошибок WER 10,91%, а на валидации — 8,64%. Использование всех синтетических данных увеличивает объём обучения, но низкокачественные примеры могут вносить шум; модель также может хуже работать с региональными вариантами языка и технической речью. Лицензия — Apache-2.0.

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

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

Ограничения

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

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

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

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

Также подходит для

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

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

Открыть на Hugging Face

Whisper-Small Dutch - Full Synthetic Data (Unfiltered)

This model is a fine-tuned version of openai/whisper-small for Dutch automatic speech recognition (ASR). It was trained on Common Voice 17.0 Dutch combined with all synthetic speech data without quality filtering, representing the maximum data augmentation approach.

Introduction

Purpose

This model uses all available synthetic data without WAVe quality filtering to evaluate the impact of maximum data augmentation. It achieves strong performance (10.91% Test WER) but requires significantly more training steps than filtered approaches, demonstrating the quality-vs-quantity tradeoff in synthetic data augmentation.

How the Data Was Created

The training data combines real speech from Common Voice 17.0 with the complete synthetic dataset:

  1. Transcript Generation: We used GPT-4o-mini to generate Dutch transcripts that match the word count distribution observed in Common Voice, ensuring realistic utterance lengths and diverse linguistic content.

  2. Speech Synthesis: Each transcript was converted to audio using OpenAI's TTS-1 model with 9 different voice variants (alloy, ash, coral, echo, fable, nova, onyx, sage, shimmer), producing 34,898 synthetic samples.

  3. No Quality Filtering: Unlike other models in this series, no WAVe filtering was applied. All 34,898 synthetic samples were used, including those with potential synthesis defects.

How the Model Was Created

The model was fine-tuned from openai/whisper-small using the Hugging Face Transformers library:

  1. Mixed Training: Combined 34,952 real speech samples from Common Voice 17.0 Dutch with all 34,898 synthetic samples (69,850 total).

  2. Optimization: Trained for 5 epochs with a learning rate of 1e-5, global batch size of 256, and BF16 precision on an NVIDIA H200 GPU.

  3. Checkpoint Selection: The best checkpoint was selected based on validation loss, occurring at step 800 with a validation loss of 0.1484.

This approach achieves 2.0% relative improvement over the baseline (10.91% vs 11.13% Test WER) but requires 100% more training steps than training on Common Voice only.

Model Details

PropertyValue
Base Modelopenai/whisper-small
LanguageDutch (nl)
TaskAutomatic Speech Recognition (transcribe)
Parameters244M
Training DataCommon Voice 17.0 + All Synthetic (Unfiltered)
Total Training Samples69,850
Sampling Rate16kHz

Evaluation Results

This Model (whisper-small-cv-fully-synthetic-nl)

MetricValue
Validation Loss0.1484
Validation WER8.64%
Test WER (Common Voice)10.91%
Test WER (MLS)30.06%
Best CheckpointStep 800
Max Training Steps1,365

Comparison with Other Training Configurations (Whisper-Small Dutch)

Training DataMax StepsVal LossVal WERTest WER (CV)Test WER (MLS)
Common Voice Only6800.14918.73%11.13%30.71%
High-Quality Filtered + CV8900.14938.76%11.00%29.91%
Mid-High Quality Filtered + CV1,2700.14848.73%10.86%30.04%
All Synthetic + CV (Unfiltered)1,3650.14848.64%10.91%30.06%

Key Performance Highlights

  • Best Validation WER (8.64%) among all Whisper-Small Dutch configurations
  • 2.0% relative improvement on Common Voice test set vs baseline (10.91% vs 11.13%)
  • 2.1% relative improvement on MLS benchmark vs baseline (30.06% vs 30.71%)
  • Tradeoff: Requires 1,365 steps vs 890 for high-quality filtered (53% more compute)

Training Data

Dataset Composition

SourceSamplesDescription
Common Voice 17.0 Dutch34,952Real speech from Mozilla's crowdsourced dataset
Synthetic Transcript NL (all)34,898Complete TTS audio without filtering
Total69,850

Synthetic Data Generation Pipeline

The synthetic dataset (yuriyvnv/synthetic_transcript_nl) was generated using:

  1. Transcript Generation: GPT-4o-mini, matching Common Voice word count distribution
  2. Speech Synthesis: OpenAI TTS-1 model with 9 voice variants (alloy, ash, coral, echo, fable, nova, onyx, sage, shimmer)
  3. No Filtering: All samples used regardless of quality

Quality Distribution (For Reference)

While this model uses all data, WAVe quality assessment shows the distribution:

Quality LevelSamplesPercentageUsed in This Model
High (q ≥ 0.8)10,55530.2%✓
Medium (0.5 ≤ q < 0.8)19,62756.2%✓
Low (q < 0.5)4,71613.5%✓
Total34,898100%All used

Note: 13.5% of the synthetic data (4,716 samples) would be filtered out by WAVe, but is included in this model's training.

Training Procedure

Hyperparameters

ParameterValue
Learning Rate1e-5
Batch Size (Global)256
Warmup Steps200
Max Epochs5
PrecisionBF16
OptimizerAdamW (fused)
Eval Steps50
Metric for Best Modeleval_loss

Training Infrastructure

  • GPU: NVIDIA H200 (140GB VRAM)
  • Operating System: Ubuntu 22.04
  • Framework: Hugging Face Transformers

Training Curve

Step  100: val_loss = 0.1967
Step  250: val_loss = 0.1659
Step  400: val_loss = 0.1535
Step  550: val_loss = 0.1490
Step  800: val_loss = 0.1484 ← Best checkpoint
Step 1000: val_loss = 0.1526
Step 1200: val_loss = 0.1549
Step 1350: val_loss = 0.1550

Usage

Transcription Pipeline

from transformers import pipeline

transcriber = pipeline(
    "automatic-speech-recognition",
    model="yuriyvnv/whisper-small-cv-fully-synthetic-nl",
    device="cuda"
)

result = transcriber("path/to/dutch_audio.wav")
print(result["text"])

Direct Model Usage

from transformers import WhisperProcessor, WhisperForConditionalGeneration
import librosa

processor = WhisperProcessor.from_pretrained("yuriyvnv/whisper-small-cv-fully-synthetic-nl")
model = WhisperForConditionalGeneration.from_pretrained("yuriyvnv/whisper-small-cv-fully-synthetic-nl")
model.to("cuda")

audio, sr = librosa.load("path/to/dutch_audio.wav", sr=16000)
input_features = processor(audio, sampling_rate=16000, return_tensors="pt").input_features.to("cuda")

predicted_ids = model.generate(input_features)
transcription = processor.batch_decode(predicted_ids, skip_special_tokens=True)[0]
print(transcription)

Specifying Language

model.generation_config.language = "nl"
model.generation_config.task = "transcribe"

When to Use This Model

This model is ideal when:

  • Maximum data utilization is desired: Uses all available synthetic data
  • Compute budget is not a constraint: Requires most training steps (1,365)
  • Quality filtering is not available: Uses raw synthetic data

Consider filtered alternatives for better efficiency:

Quality vs Quantity Analysis

This model demonstrates the tradeoff between data quantity and quality for Whisper-Small:

ApproachSynthetic SamplesTraining StepsTest WER (CV)Efficiency
High-Quality (q≥0.8)10,55589011.00%Best
Mid-High (q≥0.5)30,1821,27010.86%Good
Unfiltered (this model)34,8981,36510.91%Lowest

Key insight: The unfiltered approach performs slightly worse than mid-high filtering (10.91% vs 10.86%) despite using more data and requiring 7.5% more training steps. This suggests that including low-quality synthetic samples can introduce noise that degrades performance for Whisper-Small.

Limitations

  • Training efficiency: Requires most compute among all configurations
  • Noisy training signal: Includes low-quality synthetic samples (13.5% with q < 0.5)
  • Diminishing returns: More data doesn't always mean better performance
  • Domain specificity: Optimized for general Dutch; may underperform on technical domains
  • Dialect coverage: Performance may vary across Dutch regional variants

Citation

@article{perezhohin2024enhancing,
  title={Enhancing Automatic Speech Recognition: Effects of Semantic Audio Filtering on Models Performance},
  author={Perezhohin, Yuriy and Santos, Tiago and Costa, Victor and Peres, Fernando and Castelli, Mauro},
  journal={IEEE Access},
  year={2024},
  publisher={IEEE}
}

References

License

Apache 2.0

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

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

GPU в ailist

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

Можно запустить

Подбираем GPU…

Класс архитектуры
WhisperForConditionalGeneration
Ревизия весов
e8fa5ee

0 моделей