CoolFace
Datasetpublic

ghananlpcommunity/ghana-speech-ipa

Ghana Speech — Audio with IPA Transcripts Speech with both transcript forms: the original orthography and the IPA phoneme sequence read off the audio by ASR. Each language is a subset, with real train/validation splits. from datasets import load_dataset ds = load_dataset("ghanaopendata/ghana-speech-ipa", "Akuapem_Twi_twi", split="train") ds[0]["audio"] # decoded waveform, 16 kHz ds[0]["text"] # original orthography ds[0]["ipa"] # IPA phonemes 369,347 clips · ~747 h… See the full description on the dataset page: https://huggingface.co/datasets/ghananlpcommunity/ghana-speech-ipa.

sourceHugging Facecc-by-4.0updated 1mo agoView on Hugging Face
0likes1.1kdownloads
Dataset Card

Ghana Speech — Audio with IPA Transcripts

Speech with both transcript forms: the original orthography and the IPA phoneme sequence read off the audio by ASR. Each language is a subset, with real train/validation splits.

python
from datasets import load_dataset
ds = load_dataset("ghanaopendata/ghana-speech-ipa", "Akuapem_Twi_twi", split="train")
ds[0]["audio"]   # decoded waveform, 16 kHz
ds[0]["text"]    # original orthography
ds[0]["ipa"]     # IPA phonemes
  • 369,347 clips · ~747 h across 42 subsets
  • audio: FLAC, 16 kHz mono (lossless re-encode of the source WAV)

Subsets (config_name = language code)

  • Akuapem_Twi_twi
  • Anyin_any
  • Asante_Twi_twi
  • Avatime_avn
  • Bassar_Ntcham_bud
  • Bimoba_bim
  • Birifor_Southern_biv
  • Bissa_bib
  • Buli_bwu
  • Chumburung_ncu
  • Dagaare_dga
  • Dagbani_dag
  • Dangme_ada
  • Deg_mzw
  • Ewe_ewe
  • Fante_fat
  • Fulfulde_Maasina_ffm
  • Gikyode_acd
  • Gonja_gjn
  • Hausa_hau
  • Kabiye_kbp
  • Kasem_xsm
  • Konkomba_xon
  • Konni_kma
  • Kusaal_kus
  • Lelemi_lef
  • Mampruli_maw
  • Nawuri_naw
  • Ninkare_gur
  • Nkonya_nko
  • Ntrubo_ntr
  • Nzema_nzi
  • Paasaal_sig
  • Sehwi_sfw
  • Sekpele_lip
  • Selee_snw
  • Sisaala_Tumulung_sil
  • Siwu_akp
  • Tampulma_tpm
  • Tem_kdh
  • Tuwuli_bov
  • Vagla_vag

Format

columntypenotes
idstringclip id (a few source shards repeat ids, so it is not a unique key)
audioaudioFLAC, 16 kHz mono — decodes to a waveform
textstringoriginal written transcript in the language's orthography
ipastringIPA phonemes, space-separated, punctuation kept
durationfloat64seconds
languagestringconfig code
dataset_idint32language id, shared with the latent datasets

Relationship to the latent datasets

This is the audio twin of `ghanaopendata/voxcpm2-ghana-speech-ipa-latents` and `ghanaopendata/voxcpm2-ghana-english-ipa-latents`: the same clips, the same per-language ids, and the same train/dev assignment — those carry precomputed VoxCPM-2 AudioVAE latents instead of audio, for training without a decode step. Use this one to listen, to check transcripts, or to train anything that needs real audio.

Source

Audio from the ghana-speech corpus (capped at 20 h per language).

How the IPA was produced

Read off the audio by the CTC phoneme recogniser in `GhanaNLP/ghana-ipa-asr` (ghana-ipa-asr batch), feeding the encoder the per-utterance normalised waveforms it was trained on (normalize_audio: true, statistics over valid samples only). The front-end was validated against the reference int8 decoder at 1.8% UER before the run.

Transcripts published before 2026-08-12 were produced without that normalisation, which costs ~12.2% UER against ~1.7%. If you pulled this dataset earlier, re-pull.

Clips whose ASR output is empty or under 2 phonemes/second are excluded (8.3%). Those are source-level segmentation failures rather than recogniser failures — their written transcript does not match the audio length either (1.14 words/sec against 2.95 for the rest).

Pipeline: `GhanaNLP/ghana-speech-english-ipa-latents-data-prep`