遇见数据集

AfriSpeech Selector

收藏
github2026-06-16 更新2026-06-17 收录
官方服务:

资源简介:

AfriSpeech Selector 提供142种非洲语言的语音数据,总计2267.9小时,覆盖35个国家,用于训练文本到语音(TTS)和自动语音识别(ASR)模型。数据包括对齐的转录文本和音频文件,支持多种格式导出。

AfriSpeech Selector provides speech data for 142 African languages, totaling 2267.9 hours across 35 countries. It is designed for training Text-to-Speech (TTS) and Automatic Speech Recognition (ASR) models. The dataset includes aligned transcriptions and audio files, and supports export in multiple formats.

创建时间:
2026-06-12
原始信息汇总

AfriSpeech Selector 数据集详情

AfriSpeech Selector 是一个面向非洲语音的数据集选择与导出工具,提供对 142种语言2267.9小时 的语音数据访问,覆盖 35个国家。数据为带有对齐文本的清晰朗读语音,主要适用于 TTS(文本转语音)ASR(自动语音识别) 模型训练。

核心特点

  • 数据规模: 142种语言,总计2267.9小时,35个国家。
  • 语音类型: 清晰的朗读语音,带有对齐的转录文本。
  • 主要用途: 自然适用于TTS模型(如LJSpeech、Piper、VITS、MeloTTS),也可用于补充低资源ASR任务。
  • 导出格式: 支持导出为WAV音频 + 元数据清单,格式包括LJSpeech、Piper、VITS、MeloTTS等TTS框架格式,以及Hugging Face Dataset格式(disk、parquet、zip、csv)。
  • 筛选功能: 可根据语言、音频时长(小时数)、国家、剪辑时长等条件进行灵活选择。

数据集内容

数据集的语音是清晰的朗读语音,转录文本会原样保留,不做任何文本归一化或清理。

输出数据列

列名 含义
audio 解码后的音频波形(HF Audio格式)
text 转录文本
language 语言标签
country 国家ISO 3166-1 alpha-2代码
length 音频剪辑时长(秒)
iso ISO 639-3语言代码
subset 来源配置(可追溯性)

主要功能

语言选择

  • 按语言名称选择: 使用 --languages 参数指定具体语言(如 twi_twi)。
  • 按强度/排名选择: 使用 --top N 选择录音时长排名前N的语言。
  • 国家平衡: 使用 --max-per-country N 限制每个国家最多选择的语言数量。
  • 池过滤: 使用 --min-hours--max-hours--min-clips--countries 等参数过滤语言池。

音频导出

  • TTS框架导出: 支持导出为LJSpeech、Piper、VITS、MeloTTS等格式,生成WAV文件和对应的元数据清单(如metadata.csvfilelist.txt)。
  • ASR导出: 支持导出为Hugging Face的 diskparquetzipcsv 格式,或直接使用流式 stream_dataset() 接口。
  • 音频参数控制: 可设置目标采样率(--target-sr,默认22050Hz)、剪辑时长窗口(--min-clip-sec / --max-clip-sec,默认3-15秒)等。
  • 音频总量控制: 通过 --total-hours 设置总音频时长,或通过 --per-language 设置每种语言的剪辑数量。

其他功能

  • 预览模式: 使用 --dry-run--list-langs 在下载前预览选择计划或匹配的语言列表。
  • 无安装运行: 可直接使用 python3 -m afrispeech_selector ... 命令。
  • 交互式UI: 提供可选的本地浏览器界面(需安装 [ui] 依赖),用于探索语言和构建命令。
  • 作为库使用: 支持以编程方式在Python脚本中调用,例如 build_dataset()stream_dataset()export_tts() 等函数。

数据来源与再分发

  • 来源: 数据来自公开的数据源,工具负责选择和导出。
  • 再分发政策: 允许构建本地工作集用于个人训练。不推荐将音频重新分发到公共仓库(如使用 --push)。

语言目录(部分示例)

排名 语言 ISO 国家 小时数 剪辑数
1 Malagasy mlg Madagascar 61.32 20287
2 Kabuverdianu kea Cabo Verde 58.07 19728
3 Shona sna Zimbabwe 53.30 17996
4 Kabiye kbp Togo 53.19 18211
5 Twi twi Ghana 50.32 17140
... ... ... ... ... ...

完整目录包含142种语言,按录音时长(小时数)从大到小排序,并包含对应国家和ISO代码。每种语言有一个特定的 --languages 值(如 twi_twi),用于在命令行中指定。

安装与使用

安装

通过Git克隆仓库并安装:

git clone https://github.com/AfriSpeech/afrispeech-selector.git cd afrispeech-selector python3 -m venv .venv && source .venv/bin/activate pip install -e .

安装后可获得 afrispeech-select 命令。

快速开始(单语言TTS示例)

以下命令选择Twi语言,导出约5小时、格式为LJSpeech的TTS数据集:

afrispeech-select --languages twi_twi --total-hours 5 --out data/twi --format ljspeech

命令行参数总览

  • --top N: 按小时数选择前N种语言
  • --languages a,b,c: 手动指定特定语言子集
  • --max-per-country N: 限制每个国家的语言数量(平衡)
  • --min-hours / --max-hours / --min-clips: 按强度过滤语言池
  • --countries GH,NG: 仅限特定国家
  • --total-hours H: 所选语言的总音频时长,均匀分配
  • --per-language N: 每种语言的最大剪辑数
  • --max-hours-per-lang H: 每种语言的时长预算
  • --min-clip-sec / --max-clip-sec: 剪辑时长窗口(默认3-15秒)
  • --target-sr HZ: 目标采样率
  • --format …: 导出格式(ljspeech/piper/vits/melo/hf格式等)
  • --dry-run / --list-langs: 预览或列出匹配的语言
  • -y / --yes: 跳过确认提示
搜集汇总
数据集介绍
AfriSpeech Selector 数据集图片
构建方式
AfriSpeech Selector数据集构建于海量非洲语音资源之上,涵盖了来自35个国家的142种语言,总计超过2267.9小时的语音数据。该数据集的构建并非简单堆砌,而是通过一个智能化的选择工具实现,用户可根据需求灵活筛选语言。其核心机制在于利用语音时长作为强度信号进行排序,并支持基于国家平衡的顶级选择或自定义语言组合。用户设定总时长目标后,工具会按比例从各语言中抽取音频片段,并默认应用3至15秒的剪辑窗口以过滤不合适的样本。最终输出为16位单声道WAV格式音频及配套元数据,确保数据可直接用于下游模型训练。
使用方法
使用该数据集的核心途径是通过命令行工具`afrispeech-select`进行交互。用户首先通过`--list-langs`查看可用语言及其标识符,随后使用`--languages`参数指定目标语言,结合`--total-hours`设定数据规模,并通过`--format`选择输出格式。例如,获取约5小时的Twi语TTS数据可直接执行`afrispeech-select --languages twi_twi --total-hours 5 --out data/twi --format ljspeech`。对于ASR任务,用户可选用`--format disk`导出为Hugging Face数据集格式,或利用Python库中的`stream_dataset`函数实现无拷贝的流式训练。工具还提供了图形界面应用用于可视化构建命令,以及完整的Python API支持编程式调用。
背景与挑战
背景概述
AfriSpeech Selector是一个专注于非洲语音数据的精选工具与数据集,于2024年由AfriSpeech团队发布。该数据集涵盖了142种非洲语言,总计超过2267.9小时的语音数据,来自35个非洲国家,旨在解决非洲语言在语音合成(TTS)和语音识别(ASR)领域数据资源极度匮乏的问题。其核心研究问题是如何高效、灵活地从多种非洲语言中抽取高质量、对齐文本的朗读语音数据,以支持低资源语言的模型训练。该工具的出现极大地降低了获取非洲语言语音数据的门槛,通过按国家平衡、按语言时长排名等机制,为研究人员提供了一个可定制、可扩展的数据集构建方案,对推动非洲语言语音技术的发展具有重要意义。
当前挑战
AfriSpeech Selector所面临的挑战首先在于非洲语言数据集本身的稀缺性和不平衡性:许多语言可用数据不足10小时,且录音环境、口音多样性有限,难以支撑鲁棒性强的语音模型训练。其次,构建过程中的挑战包括数据来源的权限与合规性问题——数据集基于公开数据源构建,但禁止用户将音频副本重新分发至公共仓库,这限制了数据共享与协作。此外,工具仅提供原始音频与转录文本,不进行文本正规化或清洗,将预处理任务完全交由下游框架处理,这要求使用者具备相应的数据处理能力,增加了使用门槛。同时,多语言、多国家的数据组织与按需筛选机制也带来了索引、存储和传输效率方面的技术挑战。
常用场景
经典使用场景
AfriSpeech Selector的核心应用场景在于为文本到语音合成提供高质量的非洲语言朗读语音数据。研究人员可借助该工具,依据语言的小时数、国家分布等维度灵活筛选出所需的语种与规模,并一键导出为LJSpeech、Piper、VITS或MeloTTS等主流TTS框架所需的音频文件与元数据格式。这种清洗过的朗读语音与对齐文本的结构化组合,天然适配于多语种、低资源场景下的语音合成模型训练,为非洲语言的TTS技术突破奠定了坚实的数据基础。
解决学术问题
该数据集系统性地回应了非洲语言在语音技术研究中长期面临的数据匮乏之痛。通过汇聚142种语言、2267.9小时的朗读语音,它为低资源语言的自动语音识别与语音合成研究提供了宝贵的大规模训练资源。尤其针对那些在现有开源数据集中鲜有覆盖的非洲本土语言,AfriSpeech Selector使得研究者得以在相对充沛的数据上进行模型学研,从而推动语种均衡的语音技术发展,显著缩小了高性能语音系统在非主流语言上的性能鸿沟,其学术意义在于为跨语言语音处理与泛化性研究开辟了可行路径。
实际应用
在实际应用中,AfriSpeech Selector主要用于赋能面向非洲市场的智能语音产品,如多语种语音助手、教育类语音交互应用以及无障碍信息获取系统。开发者可以针对特定地区的少数族群语言,快速构建适用的TTS系统,从而提升语音服务的包容性与覆盖率。此外,该数据集亦可用于丰富电信、金融等领域的语音客服系统,使其能够理解与合成更多非洲本地语言,有效改善用户参与度与服务效能,进而在真实社会场景中落地技术普惠。
数据集最近研究
最新研究方向
AfriSpeech Selector作为面向非洲低资源语言语音合成的精准数据选择工具,其前沿研究方向聚焦于多语言TTS与ASR模型的跨语种迁移学习。该工具覆盖142种语言、2267.9小时语音数据,支持按国家平衡的top-N选样与自定义语言组合,可无缝对接LJSpeech、Piper、VITS等主流框架。在非洲数字包容性浪潮中,该工具通过流式数据集接口与即用型notebook,显著降低了布基纳法索、尼日利亚等地本土语言语音模型的门槛,为弥补全球语音技术语料失衡提供了可复用的轻量级解决方案。
以上内容由遇见数据集搜集并总结生成
二维码
社区交流群
二维码
科研交流群
商业服务