训练数据缺口无法靠提示语弥补
别名: 语料缺口 · 提示语救不了识别 · speak-clearly fallacy
概念解释
开箱时说「请用普通话、短句、咬字清楚」,或在失败后再提示「再说一遍、慢一点」,都不能补上训练分布里缺少的儿童和老年语音。数据缺口是模型覆盖问题:声学统计没见过那一段基频和那一种停顿结构,语言统计没见过那一类句法。提示语要求说话人变成缺失的数据。缺口可以靠采集和适应缩小;不能靠把责任写成一句更好的话。这里不讨论「要按人群拆开看指标」——那是评测怎么做;这里讨论评测已经看见缺口之后,话术救不了模型。
机制
识别器是条件分布:在训练里见过的声学–语言配对上概率高,没见过的上概率低。儿童和老年说话人在公开和工业语料里长期偏少,不是因为他们说话「不标准」,是采样没覆盖。提示语能改的是用户侧策略:缩短、靠近、换词。这些策略有时碰巧把话语推近训练流形(短命令比讲故事更像成人命令数据),于是被当成「提示有效」。对仍落在流形外的话语——学龄前的基频、老年找词的时间结构、发育中的形态——换词和放慢改变不了声道,也变不出模型没见过的音素实现。失败后再说「请说清楚」,等于把分布外的点再送进同一模型一次。公平性评测常用的人群分层,意义就在于把这条残差暴露出来:提示条件再怎么改,分层差距还不闭合,缺口就不在话术上。
怎么研究
同一批儿童或老年说话人,两种提示条件:自然说对被要求清楚、短句、靠近。看分层错误是否缩小到与成人对照组无异。若残差仍在,缺口在模型。再加第三臂:同一套提示,换上含该年龄段数据的适应模型,看闭合发生在哪一臂——这才能把「话术」和「数据」拆开。
不要只用愿意配合的实验室被试。愿意放慢、愿意再录的人已经在做提示要求的那类适应;把他们的成功写成产品策略,会把不愿或不能「说得像训练集」的人排除掉。错误分析要分开「提示后变成了训练集里有的句式」和「提示后声学仍在训练集外」。
边界
任务本来就是短命令,用户已经说在词表里,提示「用这几个词」是在教语法,不是在补声学缺口。严重构音障碍需要专用模型和另一条输入,不是多采集一点「老年数据」就能覆盖。提示可以改变通道选择(「请在手机上打字」),那是放弃语音,不是弥补识别。把所有失败都归因于缺口,会放过唤醒词难、房间噪声、端点切早这些不靠加儿童语料就能改的问题。
怎么落地
- 失败回复不要写「请说清楚」。写下一步通道(看屏幕、点按、让成人代说),或进入针对该年龄段的识别路径。
- 开箱教程若只能靠「请用短句」,先检查该技能在目标年龄段上是否已经有训练覆盖;没有覆盖就不要把技能标成儿童可用。
- 采集计划按年龄段列最低时长和任务种类(自发、命令、专名),把缺口写成数据债务,不要写成文案待办。
- 验证:同一组儿童或老年用户,自然条件和「清楚短句」条件下分层错误仍明显分开,就停止打磨提示语,去补语料或换模型。