设为首页 - 加入收藏 福建站长网 (http://www.52fujian.com)- 国内知名站长资讯网站,提供最新最全的站长资讯,创业经验,网站建设等!
热搜: 搜索 2018 vivo 2019
当前位置: 首页 > 国际cc手机客户端下载 > 评论 > 正文

为什么你的语音助手说话不像人?关于TTS技术原理及挑战

发布时间:2019-08-08 09:09 所属栏目:[评论] 来源:郑杰文
导读:每一位刚(wan)铁(nian)直(dan)男(shen),都梦想下班路上偶遇电影《Her》中的机器人女友萨曼萨。虽然只闻其声不见其人,但仅听声音就能感受到各种情感的诠释。 萨曼萨背后的真人配音来自斯嘉丽约翰逊。有人说,光听声音就已满足我对她全部的幻想。 可以说,

每一位刚(wan)铁(nian)直(dan)男(shen),都梦想下班路上偶遇电影《Her》中的机器人女友萨曼萨。虽然“只闻其声不见其人”,但仅听声音就能感受到各种情感的诠释。

为什么你的语音助手说话不像人?关于TTS技术原理及挑战

萨曼萨背后的真人配音来自斯嘉丽约翰逊。有人说,“光听声音就已满足我对她全部的幻想。”

可以说,消除人与机器之间的隔阂,拉近之间的距离,声音是至关重要的。

而在现实生活中,AI 语音助手说话还远远达不到我们理想的声音。

为什么你的机器人女友说话不像斯嘉丽约翰逊?今天,Rokid A-Lab 语音合成算法工程师郑杰文将从语音合成技术谈起,给大家分析其中原因。以下,Enjoy

为什么你的语音助手说话不像人?关于TTS技术原理及挑战

TTS背后的技术原理——前端和后端系统

让语音助手说话的技术叫 TTS(text-to-speech),也就是语音合成。

打造自然、真实、悦耳的 TTS,是 AI 领域的科学家和工程师一直努力的方向。但前进过程中总会碰到各种“拦路虎”,它们究竟是什么? 我们先从 TTS 的基础原理讲起。

TTS 技术本质上解决的是“从文本转化为语音的问题”,通过这种方式让机器开口说话。

为什么你的语音助手说话不像人?关于TTS技术原理及挑战

图 1语音合成,一个从文本转化为语音的问题

但这个过程并不容易,为了降低机器理解的难度,科学家们将这个转化过程拆分成了两个部分——前端系统和后端系统。

为什么你的语音助手说话不像人?关于TTS技术原理及挑战

图 2前端和后端一起组成的TTS

前端负责把输入的文本转化为一个中间结果,然后把这个中间结果送给后端,由后端生成声音。

接下来,我们先来了解一下前端和后端系统是如何分工协作的?

生成“语言学规格书”的前端系统

小时候我们在认字之前需要先学习拼音,有了拼音,我们就可以用它去拼读我们不认识的字。对于 TTS 来说,前端系统从文本转化出的中间结果就好像是拼音。

不过,光有拼音还不行,因为我们要朗读的不是一个字,而是一句一句的话。如果一个人说话的时候不能正确的使用抑扬顿挫的语调来控制自己说话的节奏,就会让人听着不舒服,甚至误解说话人想要传达的意思。所以前端还需要加上这种抑扬顿挫的信息来告诉后端怎么正确的“说话”。

我们将这种抑扬顿挫的信息称之为韵律(Prosody)。韵律是一个非常综合的信息,为了简化问题,韵律又被分解成了如停顿,重读等信息。停顿就是告诉后端在句子的朗读中应该怎么停,重读就是在朗读的时候应该着重强调那一部分。这些所有的信息综合到一起,我们可以叫”语言学规格书”。

为什么你的语音助手说话不像人?关于TTS技术原理及挑战

图 3.前端通过生成“语言书规格书”来告诉后端我们想要合成什么样的内容。

前端就像一个语言学家,把给它的纯文本做各种各样的分析,然后给后端开出一份规格书,告诉后端应该合成什么样的声音。

在实际的系统中,为了让机器能正确的说话,这份儿“规格书”远远比我们这里描述的要复杂。

扮演“发音人”的后端系统

当后端系统拿到“语言学规格书”后,目标是生成尽量符合这个规格书里描述的声音。

当然,机器是不能凭空直接生成一个声音的。在这之前,我们还需要在录音棚里录上几个到几十个小时不等的音频数据(根据技术不同,使用的数据量会不同),然后用这些数据来做后端系统。

目前主流的后端系统有两种方法:一种是基于波形拼接的方法,一种是基于参数生成的方法。

波形拼接的方法思路很简单:那就是把事先录制好的音频存储在电脑上,当我们要合成声音的时候,我们就可以根据前端开出的“规格书”,来从这些音频里去寻找那些最适合规格书的音频片段,然后把片段一个一个的拼接起来,最后就形成了最终的合成语音。

比如:我们想要合成“你真好看”这句话,我们就会从数据库里去寻找“你、真、好、看”这四个字的音频片段,然后把这四个片段拼接起来。

为什么你的语音助手说话不像人?关于TTS技术原理及挑战

图表 4使用拼接法合成“你真好看”

当然,实际的拼接并没有这么简单,首先要选择拼接单元的粒度,选好粒度还需要设计拼接代价函数等。

参数生成法和波形拼接法的原理很不相同,使用参数生成法的系统直接使用数学的方法,先从音频里总结出音频最明显的特征,然后使用学习算法来学习一个如何把前端语言学规格书映射到这些音频特征的转换器。

【免责声明】本站内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

网友评论
推荐文章