采风全网
达观天下

语音合成的难处,常藏在一句话的停顿里

前阵子接了一通客服电话,先开口的是合成音。音色并不刺耳,字也咬得清楚,可整句话像被压平了:该顿的地方没顿,“稍等一下”四个字一口气滑过去,末尾还微微上扬,听起来像在反问。挂了电话我一直在想,问题显然不在嗓音,而在节奏。

一句话里的“呼吸”从哪来

人说话不是匀速输出。说到转折会停半拍,列举时会拖长尾音,情绪上来语速会变。这些信息不在字面上,却几乎决定了听感是否自然。对语音合成来说,把这些看不见的标点还原出来,往往比把每个音素读准更费劲。

过去的做法是把任务拆开:文本分析、韵律预测、声学模型各管一段,中间靠人工标注的韵律标签衔接,而这类标注成本高、口径也难以统一。端到端模型把中间环节压进一个网络,听感确实变好了,代价是更依赖数据。模型见过足够多相似句式,就知道在哪儿停;碰上没见过的长句、生僻搭配,就容易念得平。所谓“像人”,很多时候就是这些细小停顿攒出来的。

麻烦都很小,但都躲不开

  • 多音字与上下文:同一个字在不同搭配里读音不同,判断依据是语义而不是字表,模型判断错了,整句意思就偏了。
  • 数字、单位与日期:电话号码、金额、百分比、区间,口语里的读法有约定俗成的习惯,逐字念出来会很别扭。
  • 礼貌层级:请求、提醒、拒绝的语气差别微妙,合成音若一律用同样的平调,容易显得生硬甚至冒犯。
  • 长句的换气位置:书面语的长定语堆在一起,念的人知道在哪儿换气,模型不一定知道。

这些都不是“读音对不对”的问题,而是“这句话放在这个场合合不合适”的问题。

“像人”未必是唯一标准

谈语音合成,常被提到的指标是自然度和相似度。但落到具体场景,标准会变。导航播报不需要多少情绪,需要的是在嘈杂车厢里也能听清;有声书要的是连续听半小时不累;客服语音要的是不让人误以为在敷衍。这些要求彼此并不一致,甚至互相牵制。把自然度推到极致,未必等于在这个场景里好用。

我倾向于把评价分成两层:一层是能不能听懂,一层是会不会误导。前一层靠工程打磨,后一层靠产品判断。后者更难,因为它不写在模型里。

该不该合成,是另一个问题

语音合成让“以假乱真”变得便宜,这句话不带褒贬。声音是可以识别身份的,一段几十秒的录音在技术上已足够做很多事。哪些场合应当明确告知对方这是合成音,声音样本的使用需要怎样的授权,哪些用途从一开始就不该碰——这些问题不会因为模型变强而自动消失,反而更需要有人提前说清楚。技术团队习惯讨论延迟和音质,使用边界往往要等出事之后才被写进流程。

回到那通电话。后来我想,如果换成真人念同一段脚本,大概也不会好听多少——脚本本身就是平的,句子长、信息密、没有起伏。合成音只是把这份粗糙原样放大给人听。改进语音合成,一部分工作在模型里,另一部分可能在写脚本的那张纸上。

免责声明:市场有风险,选择需谨慎!此文仅供参考,不作买卖依据。如有侵权请联系删除。
文章名称:语音合成的难处,常藏在一句话的停顿里
文章链接:https://tech.cfdanews.com/ai/741.html