语音合成(TTS)技术在有道词典笔中的应用实践

2021/12/16 19:31
阅读数 1.9K

youdao

背景介绍

ydtech

自 2017 年 10 月推出有道翻译蛋开始,网易有道已先后推出了二十余款智能学习硬件产品,包括有道翻译王、有道口袋打印机、有道超级词典、有道词典笔、有道听力宝等。

其中,有道词典笔开创了智能词典笔品类,连续两年获天猫、京东销量第一,并广受用户好评。


在近期有道词典笔的全新软件升级中(关联阅读:全新软件升级!真的很有料),有两个重要的优化,分别是:

  • 发音接近真人,告别机械式

  • 发音准确度提升,正确朗读多音词

>>>应用效果:

首先,我们进一步升级了发音系统,使中英发音尽可能接近真人。

为了给用户带来更好的体验,有道 AI 团队选取了多种真人发音素材,从来自公司内部、真实用户和 native speakers 等人群中选取足够大的样本发放调查问卷,从发音准确度、音色喜爱度等方面进行打分,并和专业的发音进行比较,最终选取了目前版本中的音色。

一个彩蛋

在我们选取的发音中,不乏一些明星语音,小伙伴们可以猜猜她是谁?

(答案在文末揭晓)


在语言学习场景中,机械式的发音不仅让人觉得枯燥乏味,而且会影响口语学习的效果。 最自然、最理想的交互 莫过于通过人的声音进行交流。如何让智能学习硬件的发音接近真人,是一个重要的课题。
>>中文:

>>英文:

同时,通过有道 AI 团队对语言模型的不断训练,有道词典笔的发音准确度再一次得到突破,在扫描句子的过程中,有道词典笔可以快速预判语义,轻松读对一些英语学习者和 AI 都非常容易读错的单词,比如「多音词」

以包含“read过去式”的句子为例,我们来听听有道词典笔的发音和传统机械式发音:

She picked up the letter and read it. 

她拿起信读了起来。

在本句中,动词 read 是过去式,应读作 /red/

这些能力的背后,是有道 TTS 语音合成技术的加持。本文将会详细介绍有道 TTS 技术的相关思考和实践。

youdao

有道TTS语音合成技术

ydtech

有道 TTS 语音合成技术建模流程包括文本分析模块、声学模型模块和声码器模块。


2.1

基于开源BERT多任务的统一TTS文本分析前端

文本分析前端的主要作用是将语句转换为语言学特征,主要是音素序列韵律特征, 其中音素序列决定 TTS 是否正确读对了文本;韵律特征决定 TTS 的停顿位置、自然度等,这也是有道 TTS 技术能够实现接近真人发音和正确朗读多音词的关键所在。

传统的文本分析模块会单独建模每个任务,并且串行处理效率较低,这种做法在嵌入式场景中难以实现性能和质量的平衡,多个任务分离也会提高系统的维护成本。

相比于传统方案,有道 AI 团队基于 BERT 预训练模型进行了多任务建模,将多个任务进行统一建模,大大提高了效率。

这些优化能够支持 TTS 前端的文本正则化、多音字判别、韵律预测等任务,使有道系统能够在设备端合成低发音错误、韵律自然感情丰富的高质量语音。

有道词典笔场景 TTS 前端也面临一些挑战:

  1. 满足接近100%发音准确率要求;在中文、英文里,大量的多音字、多音词是影响发音准确率的关键所在,而且对于有道词典笔教育场景,古诗词、文言文正确读法也需要全量覆盖.

  2. 韵律特征建模,满足TTS合成停顿自然、语义清晰需求。

  3. 词典笔设备资源有限,在满足上述两点质量的同时,还需要达到性能需求。


基于这些问题,我们主要做了以下几个方面的工作,分别是资源收集、模型实验、系统集成:

资源收集:在资源收集阶段,借助有道独有教研资源,搜集整理多音字表, 结合词性、词义等细化多音字模型标签,使得建模更高效;在中文古诗词、文言文发音上,通过 ssml 技术将词典笔海量权威发音词典资源应用到 TTS 发音中;

模型实验:在模型实验阶段,前端包含有多音字、韵律预测、分词、词性预测等这些任务, 通过构建bert多任务模型,联合预测多音字、韵律、分词、词性任务,多个任务之互相促进不仅了提升多音字模型和韵律模型的准确率,同时也节省了参数量;最后通过蒸馏技术,小参数量多任务模型在保证质量的同时,也达到嵌入式性能要求;

系统集成:在系统集成阶段,工程化团队通过自研bert pipeline技术,更进一步优化了内存和推理时间;

通过这些方面的工作,最终推出了基于预训练模型的多任务架构 TTS 中英混前端,保证了 TTS 合成的发音正确性和韵律停顿。


2.2

非自回归的 VAE 声学模型

声学模型的主要作用是将语言学特征转换为对应的声学特征。常见的神经网络声学模型大致可以分成两大类:

一是自回归声学模型:比如 Tacotron、Tacotron2,优点是高自然度,缺点是性能较差;基于 attention 的自回归声学模型难以建模长语音,更容易出现丢字、重复的现象。

二是非自回归声学模型:比如Fastspeech、Fastspeech2,优点是并行生成声学特征,性能好,对长句建模足够鲁棒;缺点是韵律建模略差于自回归声学模型。

综合质量和性能,有道 AI 团队最终选择了基于 VAE 的非自回归声学模型。原因在于它有以下优势:

  • 在鲁棒性方面:好于 Tacotron2;

  • 在性能方面:和 Fastspeech 一样快,快于 Tacotron2;

  • 在质量方面:接近 Tacotron2,相比 Fastspeech 更易于训练。

同时,我们针对 一部分算子的计算耗时占总时长比例较大的问题进行了工程上的优化,进一步改善了系统整体的实时率。

另外,还对模型进行了量化,降低了模型的内存。


2.3

基于 GAN 的声码器

声码器的作用是将声学模型输出的声学特征转换成语音时域信号。它直接影响着合成语音的音质,因此 对于用户体验来说至关重要。

在有道智能硬件产品实际落地开发中,声码器技术的研发面临着几大难点问题:

一是音质问题。声码器模型的建模能力不足,会直接导致合成语音产生底噪或者电音。但如果仅仅只是单纯地加大模型的参数,则会影响系统的推理速度。

二是性能问题。声码器的计算量在语音合成的整个框架中占比较大。要在嵌入式场景中合成高质量的语音,需要一个足够大、建模能力足够强的声码器模型。

但由于设备芯片的算力弱、内存小,大的声码器会导致体验延时明显上升。从用户的角度出发,延时过长,用户等待时间过久,自然不会有好的体验效果。

为了解决以上难题,通过大量实验和综合比对,最终有道 AI 团队选择了基于 GAN 方案的声码器。

任何学术上的方案要实现成工业界的产品,都需要进行大量的实验和打磨。

首先是针对不同场景使用不同的模型配置,有道 AI 团队对 GAN 声码器中的生成器模块进行了参数的细致调整,让它能够成功应用在嵌入式场景下,不同于传统参数声码器的机械感与模糊感,基于 GAN 的神经网络声码器可以合成高自然度、高清晰度的音频,缩短了离线 TTS 和在线 TTS 质量上的差距。

此外,我们还在模型的量化、压缩方面做了大量的工作,大大提升了语音合成的速度,明显降低了系统的资源占用。

youdao

总结

ydtech

在智能硬件产品人机交互中,语音合成技术扮演着非常重要的角色,但在落地中面临着很多挑战,其核心是硬件计算资源与合成语音质量之间的矛盾。

如何更快地、更稳定地在有限资源下提供高质量的语音合成技术是有道 AI 团队的目标和关注的重点。

目前,有道 TTS 语音合成技术已应用在许多内部和外部的在线场景和嵌入式场景,并表现出了相对传统方案更加稳定、更加鲁棒的合成效果。


- END -

彩蛋答案




本文分享自微信公众号 - 有道技术团队(youdaotech)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

展开阅读全文
加载中

作者的其它热门文章

打赏
0
1 收藏
分享
打赏
0 评论
1 收藏
0
分享
返回顶部
顶部