Conformer-CTC: LibriSpeech English ASR
Final inference resources for the DLA-1 project.
The selected checkpoint is epoch 92 of
conformer_bpe_ls960_night_b16_108k_cosine_lr1e5_v1.
Model and decoding
- Conformer encoder: 16 blocks, hidden size 144, 4 attention heads.
- Feed-forward expansion factor 4, convolution kernel 31, dropout 0.1.
- Input: 128 log-mel channels, 16 kHz audio, 25 ms window, 10 ms hop.
- SentencePiece BPE vocabulary: 256 tokens, CTC blank ID 0.
- Final decoder: pyctcdecode + pruned LibriSpeech 3-gram KenLM, beam width 50, alpha 0.8, beta 2.0.
Test results
Full LibriSpeech test sets, 2,620 test-clean and 2,939 test-other recordings. CER and WER below are means over recordings. Corpus WER divides total word edit counts by the total reference word count.
| Decoder | test-clean CER (%) | test-clean WER (%) | test-other CER (%) | test-other WER (%) |
|---|---|---|---|---|
| Argmax | 7.07 | 19.96 | 16.48 | 37.68 |
| Own beam search | 6.97 | 19.77 | 16.29 | 37.31 |
| Beam without LM | 6.94 | 19.78 | 16.23 | 37.35 |
| Beam with LM | 5.06 | 11.77 | 14.09 | 26.16 |
With LM, corpus WER is 10.28% on test-clean and 23.18% on test-other.
Decoder settings were selected on development data. Exact metrics are in
resources/final/test_metrics.json inside the archive.
Resources
final_ctc.zip contains all resources used by the demo:
saved/final/model.pth: exported model state and checkpoint epoch;resources/tokenizers/bpe_256.model: the original tokenizer;data/lm/librispeech/3-gram.pruned.1e-7.arpa.gz: compressed original LM;resources/final/training_logs/: configs and logs for all four training stages;resources/final/dev_metrics.jsonandtest_metrics.json: full evaluation results;resources/final/sample_dataset/: three LibriSpeech dev-clean examples in FLAC, WAV, and MP3 formats, with reference transcriptions;resources/final/manifest.json: provenance and per-file SHA256 hashes.
The LM comes from OpenSLR 11.
Sample recordings come from LibriSpeech / OpenSLR 12.
download_lm.py prepares a lowercase ARPA vocabulary for decoding.
The archive SHA256 is published in SHA256SUMS.
Download and run
With the project's Python 3.11 environment and dependencies installed:
python download_resources.py
python inference.py -cn inference_final \
datasets.test.data_dir=/path/to/dataset \
inferencer.save_path=final_predictions
python calc_metrics.py \
--ground-truth /path/to/dataset/transcriptions \
--predictions data/saved/final_predictions/test \
--output data/saved/final_predictions/scores.json
The project downloader verifies the bundle, extracts its resources, and
prepares the included LM. The dataset format is audio/{id}.wav|flac|mp3
with optional transcriptions/{id}.txt. Predictions keep the recording IDs.
To download the archive directly:
from huggingface_hub import hf_hub_download
archive = hf_hub_download(
repo_id="YaItco/DLA-1-Conformer-CTC",
filename="final_ctc.zip",
)
Training lineage
The next stage uses the selected checkpoint of the preceding stage. Step budgets describe complete runs; the selected checkpoint may be earlier.