中文方言和口音的语音识别为什么难?多方言支持的技术路线怎么选?
先这样答
难在三点。发音体系差异:粤语、吴语、闽语和普通话在声母、韵母、声调上的差异接近不同语言之间的距离,不是「带口音的普通话」能概括的。数据稀缺:方言的标注语音数据量比普通话少几个数量级,标注员本身都难找——要既懂方言又懂标注规范。代码混杂:真实用户一句话里普通话和方言词汇混着说,还有方言口音的普通话(带粤普、川普口音),识别器要同时处理两种挑战。
技术路线有三条。独立建模:每种方言训一个模型,效果可控但模型众多、新方言冷启动慢,适合方言语料充足的头部方言。大一统模型:一个多方言共享模型,方言间共享普通话的语言学结构,小语料方言借大语料方言的表征迁移,当前主流方向,配合方言标识或自动判别做条件输入。口音自适应:主流是拿普通话大模型做口音数据的继续训练加测试时自适应,处理「方言口音普通话」这类轻量场景。
数据策略上,方言数据的扩充靠定向采集加众包(母语者录制的成本可控)、合成数据(文本到方言语音的生成补充稀缺对)、跨方言的共享词表标注对齐。评估要分方言独立报告,大一统模型容易在数据多的方言上过好、冷门方言被平均掩盖。
面试官会怎么追问
- 「大一统模型怎么防止方言互相干扰?」 方言标识作为显式条件输入让模型知道在处理哪种;训练时平衡采样防止头部方言淹没尾部;共享底层声学结构、方言相关的上层参数分离。
- 「怎么判断用户说的是哪种方言?」 前置方言识别分类器,置信度低时用大一统模型直接识别,识别结果的困惑度反哺方言判断。产品上也可以让用户手动选。
- 「合成方言数据可靠吗?」 质量取决于方言 TTS 的水平,头部方言可用、冷门方言的合成质量不足。合成的价值是扩充覆盖面,评测集必须全真实数据,防止「用合成训练用合成评测」的自欺。
回答的坑
- 把方言当「带口音的普通话」处理。两者的语言学距离是完全不同的量级。
- 不分方言报平均准确率。冷门方言的单独指标才是覆盖度的真相。
同系列的题
—— 本题完 ——