whisper-small-mn
Fine-tune of openai/whisper-small
for Mongolian (mn) automatic speech recognition.
Results
Evaluated on a held-out subset of the validation split:
| Metric | Value |
|---|---|
| WER | 22.1% |
| CER | 10.3% |
Training data
Trained on Blgn94/mongolian-stt-dataset
(~60 h, 57,320 clips), a combination of:
- MBSpeech (read Mongolian Bible) — MIT
- Mozilla Common Voice 20 (mn, normalized) — CC0-1.0
- Google FLEURS (mn) — CC-BY-4.0
All audio is 16 kHz mono.
Training procedure
- 3 epochs, effective batch size 8 (batch 2 × grad-accum 4), fp16
- learning rate 1e-5, 500 warmup steps
- AdamW, gradient checkpointing
Usage
from transformers import pipeline
pipe = pipeline("automatic-speech-recognition", model="Blgn94/whisper-small-mn")
text = pipe("audio.wav")["text"]
print(text)
Or with the model/processor directly:
import torch, librosa
from transformers import WhisperProcessor, WhisperForConditionalGeneration
processor = WhisperProcessor.from_pretrained("Blgn94/whisper-small-mn")
model = WhisperForConditionalGeneration.from_pretrained("Blgn94/whisper-small-mn")
audio, _ = librosa.load("audio.wav", sr=16000)
inputs = processor(audio, sampling_rate=16000, return_tensors="pt")
ids = model.generate(inputs.input_features, language="mn", task="transcribe")
print(processor.batch_decode(ids, skip_special_tokens=True)[0])
License
CC-BY-4.0, reflecting the most restrictive license among the combined training sources.