示范了200句后,我的声音“双胞胎”诞生了!

简介: 使用本文提出的语音合成中的说话人自适应技术,用户只需要录制200句话,便能够获得与1000句话普通的语音合成系统相当的效果。

小叽导读:语音合成的主要目的是让机器将文字变为人可以听得懂的声音。针对某个人,如果希望机器比较好地发出他的声音,那么需要录制这个人大量(几千到几万句话不等)的音频。很多时候,用户没有时间也没有精力录制这么多的音频。说话人自适应算法就是用来解决这个问题的,它利用用户少量的音频来学习,并能够发出令人满意的声音。使用本文提出的语音合成中的说话人自适应技术,用户只需要录制200句话,便能够获得与1000句话普通的语音合成系统相当的效果。

作者:黄智颖、卢恒、雷鸣、鄢志杰

会议:ICASSP-2018

----

摘要

说话人自适应算法利用说话人少量语料来建立说话人自适应语音合成系统,该系统能够合成令人满意的语音。在本文中,我们提出了基于线性网络的语音合成说话人自适应算法。该算法对每个说话人学习特定的线性网络,从而获得属于目标说话人的声学模型。通过该算法,使用200句目标说话人的自适应语料训练的说话人自适应系统能够获得和使用1000句训练的说话人相关系统相近的合成效果。

研究背景

对于一个目标说话人,如果他(她)拥有充足的训练数据,那么我们便可以建立一个说话人相关的声学模型,基于该声学模型的系统称之为说话人相关的语音合成系统。利用该系统,我们能够合成和目标说话人声音很像的语音。但是,大多数时候,目标说话人没有充足的数据,这使得合成出来的语音效果不太理想。利用说话人自适应算法,能够基于比较有限的数据来获得较好的语音合成系统,该类算法节省了大量的录音、转录和检查工作,使得建立新的声音的代价变得很小。

本文中,我们提出了基于线性网络(Linear Network, LN)的语音合成说话人自适应算法。该算法通过在源说话人声学模型的层间插入线性网络,然后利用目标说话人的数据来更新该线性网络和神经网络的输出层,从而能够获得属于目标说话人的声学模型。另外,一种基于低秩分解(low-rank plus diagonal,LRPD)的模型压缩算法被应用于线性网络。实验发现,当数据量较少的时候,通过LRPD来移除一些冗余的参数,从而能够使得系统合成的声音更加稳定。

算法描述

本文中,源说话人声学模型是一个基于多任务(multi-task)DNN-BLSTM的声学模型,见Fig. 1左侧。声学模型的输入为语音学特征,输出为声学特征。声学特征包括梅尔倒谱系数等。实验证明,在声学模型的底层使用深层神经网络(Deep Neural Network,DNN)可以获得更好的底层特征,并且收敛速度上相比于不使用DNN更快。在输出层上,不同的声学特征使用各自的输出层,它们仅共享声学模型的隐层。

基于线性网络的自适应算法首先被提出于语音识别领域,它的系统结构见Fig. 1右侧。根据线性网络插入的位置不同,它可以被分为线性输入网络(Linear Input Network,LIN)、线性隐层网络(Linear Hidden Network,LHN)和线性输出网络(Linear Output Network,LON)。

image.png

当线性网络被插入到声学模型的第image.png
和image.png
层之间时,线性网络的输出image.png
为:

image.png

其中,image.png
表示第image.png
层的输出,image.png
表示说话人相关的线性变换矩阵,image.png
表示说话人相关的偏置矢量。模型训练流程如下:

1) 将线性网络插入至源说话人声学模型特定位置。此时,image.png被初始化为单位矩阵,image.png
的所有元素都初始化为0。

2) 利用目标说话人的数据来更新线性网络中的参数image.png
和image.png
,直到收敛。此时,保持声学模型中的其它层参数固定不变。最后,获得目标说话人的声学模型。

image.png

LRPD算法主要被应用于线性网络的模型压缩。在语音识别中,基于LRPD的线性网络(LRPD-LN)能够减少普通线性网络(Full-LN)82%的模型参数量,并且性能几乎不出现下降。LRPD算法利用对角矩阵和低秩矩阵来表达Full-LN中的image.png
:

image.png

其中,image.png
和image.png
分别表示image.png
和image.png
的矩阵,image.png
为对角矩阵。可以看到,Full-LN中的模型参数量为image.png
,LRPD-LN的模型参数量为image.png
。通过实验证明,由于LRPD-LN所需要更新的参数量特别少,因此在目标说话人数据量有限的情况下能够获得较Full-LN更加稳定的合成声音。

实验

本文提出的算法,在中文数据集上进行实验,该数据集包含3个说话人,每个说话人有5000句话,时长约5h。数据集中语音的采样率为16k,特征提取中的窗长和窗移分别为25ms和5ms。分别用A-male、B- female和C-female来命名这三个说话人。本实验中,源说话人声学模型训练过程所使用的句子数为5000。

为了对比不同句子数目下的合成效果,目标说话人的自适应数据集对应的句子数从50到1000不等。在自适应数据集之外,我们取200句话作为开发集,取20句话作为测试集(用于主观打分)。为了分析性别对自适应效果的影响,进行了三对源说话人-目标说话人之间的实验:女生-女生、男生-女生和女生-男生。另外,使用客观度量和主观测听两种方式来衡量模型的性能。客观度量主要包括:Mel-Cepstral Distortion (MCD)、root mean squared error (RMSE) of F0、unvoiced/voiced (U/V) prediction errors和开发集的MSE。主观测听主要是对系统合成的声音样本进行自然度和相似度上的打分——mean opinion score (MOS) 。

image.png

以女生-女生(C-female –B-female)为例,Fig. 3显示了不同自适应句子数目和客观度量之间的关系曲线图。其中,SD表示说话人相关系统,OL表示只更新源说话人声学模型输出层的说话人自适应系统,OL+Full-LN和OL+LRPD-LN分别表示基于Full-LN和LRPD-LN的说话人自适应系统。根据Fig. 3,随着训练/自适应句子数的增加,所有系统间的客观度量趋于相近。对比SD和另外三个自适应系统,自适应系统的性能在相同句子数目下要更优。

另外,OL+LRPD-LN和OL+Full-LN相比于OL均出现性能上的跳变(提升),说明只更新输出层而不对其他层进行更新不能够得到较好的自适应效果。同时,当自适应句子数较少的时候,OL+Full-LN在客观性能上要差于OL+LRPD-LN,这是因为OL+Full-LN引入太多的参数量,出现过拟合问题。反之,在句子数多的时候OL+Full-LN在客观性能上要优于OL+LRPD-LN,此时OL+LRPD-LN由于参数量少,出现欠拟合问题。

image.png

Fig. 4上对比了不同系统间的自然度和相似度。随着句子数的减少,SD系统的性能出现急剧下降,OL+LRPD-LN相比于SD和OL+Full-LN要更加稳定。与客观度量一致,在相同句子数下,OL+Full-LN和OL+LRPD-LN在性能上要优于SD。并且,OL+Full-LN和OL+LRPD-LN在200句话的性能和SD在1000句话时的性能相近。与客观度量不同,OL+LRPD-LN在500句以下的时候性能上就优于OL+Full-LN。这是因为过拟合导致合成出来的声音不稳定(虽然客观度量更优)声音的可懂度下降导致的。由此,我们依然可以得到相同的结论:当自适应句子数较少的时候,过拟合使得OL+Full-LN的性能变差。

结论

本文中,基于线性网络的说话人自适应算法被应用于语音合成领域,基于LRPD的模型压缩算法能够提高声音的稳定性。通过三对不同的源说话人-目标说话人的实验,我们发现,当自适应句子数目非常少的时候,LRPD能够提升声音的稳定性。另外,通过提出的算法,使用200句目标说话人的训练语料训练的说话人自适应系统能够获得和使用1000句训练的说话人相关系统相近的效果。

原文链接:https://arxiv.org/abs/1803.02445

目录
相关文章
|
前端开发 Java 应用服务中间件
Gateway网关使用不规范,同事加班泪两行~
Gateway网关使用不规范,同事加班泪两行~
Gateway网关使用不规范,同事加班泪两行~
|
敏捷开发 存储 搜索推荐
《阿里巴巴Java开发手册v1.4.0(详尽版)》更新,新增16条设计规约
阿里巴巴集团推出的《阿里巴巴Java开发手册》是阿里巴巴近万名开发同学集体智慧的结晶,以开发视角为中心,详细列举如何开发更加高效、更加容错、更加有协作性,力求知其然,更知其不然,结合正反例,让Java开发者能够提升协作效率、提高代码质量。
741979 3
|
Web App开发 自然语言处理 监控
基于 WebAssembly 的AIoT应用框架实践
天猫精灵大前端团队基于 WebAssembly 的AIoT应用框架实践分享。
基于 WebAssembly 的AIoT应用框架实践
|
数据可视化 搜索推荐 关系型数据库
【最佳实践】实时计算Flink在IoT行业的实时数仓建设实践
据 IDC 估计,到 2020 年物联网将在全球范围内产生 1.46 万亿美元的价值。据预测,届时中国的物联网市场规模将超过 1.8 万亿人民币。
|
Web App开发 移动开发 Ubuntu
HTML5 Web Speech API,让网站更有趣
Web API 变得越来越丰富,其中一个值得注意的是Web Speech API。传统的网站只能“说”,这个API的出现,让网站能“倾听”用户。这个功能已经开放了一系列的用法,非常棒。
1181 0
HTML5 Web Speech API,让网站更有趣
|
运维 搜索推荐 调度
Ha3搜索引擎简介
Ha3是阿里巴巴搜索团队开发的搜索引擎平台,它为阿里集团包括淘宝、天猫在内的核心业务提供搜索服务支持。
27650 1
|
存储 NoSQL Java
手写一个简版的key/value服务kedis
前言今天博主主要介绍两个开源项目,然后创建应用最终实现的效果就像简版的redis服务那样,通过http的get请求,能够插入和获取数据,项目暂取名为kedis,源码后面会上传到git仓库。他们分别是Facebook开源的Rocksdb和netty实现的http容器RestExpress。
1486 145
|
SQL 运维 DataWorks
DataWorks数据服务介绍及最佳实践 | 《一站式大数据开发治理DataWorks使用宝典》
DataWorks作为一站式大数据开发治理平台,构建了从数据集成、数据开发、数据服务到应用开发的全链路解决方案。在整个大数据链路中,数据服务将数仓、数据库和数据应用进行串联,形成了一座数据与应用之间的桥梁。数据服务通过将数据封装成数据API的方式,可以为个人、团队及企业提供全面的数据开放及共享能力。借助这个平台,用户能够统一管理面向内外部的API服务。数据服务提供了向下对接数据源、向上支撑业务应用的有效连接。
4637 1
DataWorks数据服务介绍及最佳实践 | 《一站式大数据开发治理DataWorks使用宝典》
|
存储 数据采集 分布式计算
连载:阿里巴巴大数据实践—实时技术
相对于离线批处理技术,流式实时处理技术作为一个非常重要的技术补充,在阿里巴巴集团内被广泛使用。
4971 0
连载:阿里巴巴大数据实践—实时技术
|
测试技术
测试时间不够,项目要如期发布如何保证测试质量
1.定下测试优先级,测试策略,即优先测试哪些功能,是不是保主要流程和界面样式,其他分支流程和细节可以留待后面测试优化?2.bug是不是只确保严重等级以上的完全修复,其他尽量修复,不行留待后续版本解决?3.人员是不是可以借用,比如拉上产品、运营一起测试?4.协调好万分无奈的加班计划,尽可能给测试留下时间。