想训一个中文语音转文字的小模型,网上搜数据集,名字一堆:LibriSpeech、AISHELL、Common Voice。下载前不搞清楚区别,硬盘先被几十个 G 塞满。
先看语言对不对
LibriSpeech 是英文有声书,练英文识别准,但别指望它认中文。中文看 AISHELL-1 和 AISHELL-2,普通话口音,带标注文本,开源协议友好。需要方言就找 THCHS-30,带一点口音覆盖。
几个常用的对比
- AISHELL 系列:中文普通话,采样率 16kHz,标注干净,入门首选。
- Common Voice:Mozilla 的众包数据,多语言,量大但质量参差,需要自己清洗。
- LibriSpeech:英文,1000 小时级别,论文里最常用的基准,方便横向对比效果。
下载前确认三件事
一看采样率,8kHz 的电话音和 16kHz 的混在一起,模型会学歪。二看标注格式,是不是每条音频配一行文本。三看许可协议,商用项目用 CC-BY 这类宽松的,NC(非商业)的数据只能做研究。
自己录一点微调
公开数据训完基线,拿目标场景的录音做微调,几十小时就有效果。录音环境尽量贴近真实使用,比如车载就别只用安静房间的数据。标注时把口头禅和重复词保留,识别结果更自然。
清洗环节别偷懒,静音片段、爆音、标注错位的先剔掉。跑训练前抽查一百条听一下,耳朵验收比看脚本靠谱。数据干净了,模型效果至少稳一半。
评估时留一份和训练完全不重叠的测试集,别拿训练数据自测。字错率降下来才是真降,不然就是自欺欺人。
数据集不求大,求跟场景对得上。先用小规模跑通流程,再决定要不要加量,省下的算力也是钱。