FASTSPEECH 2论文阅读

FASTSPEECH 2: FAST AND HIGH-QUALITY END-TOEND TEXT TO SPEECH

现状

非自回归模型可以在质量相当的情况下显著快于先前的自回归模型合成模型。但FastSpeech模型训练依赖与自回归教师模型进行时长预测(提供更多的信息作为输入)和知识蒸馏(简化输出中的数据分布),可以缓解一对多的映射问题
1、存在问题
因为由于语音的变化,如音高、时长、音量和韵律等,多个可能的语音序列可以对应一个文本序列。在非自回归TTS中,仅有的输入信息是文本,不足以完全预测语音的方差。在这种情况下,模型容易对训练集中目标语音的变化产生过拟合,导致泛化能力较差。归根结底还是一对多的映射问题。

提出问题

1)师生蒸馏管道复杂耗时
2)从教师模型中提取的持续时间不够准确,以及从教师模型中提取的目标mel-谱图由于数据简化导致信息丢失,这些都限制了语音质量。

解决问题

(以下以加快训练速度为目标)
(1)直接用真实目标训练模型而不是简化的教师输出
(2)引入更多的语音(例如,音高、能量和更精确的时长)的变化信息作为条件输入,更好地解决了TTS中的一对多映射问题。具体来说,我们从语音波形中提取时长、音高和能量,并直接将它们作为训练中的条件输入,并在推理中使用预测值。
(3)进一步设计 FASTSPEECH 2s模型。首次尝试直接并行地从文本中生成语音波形,实现了完全端到端推理。

现有的研究方式

1、自回归
以往的研究是从文本中自回归生成mel谱图,然后使用单独训练的声码器从生成的mel谱图中合成语音。但这种推理速度慢,并且在单词跳读和重复时存在鲁棒性问题。
2、非自回归
以极快的速度生成mel谱图,避免鲁棒性问题,同时实现以自回归相当的语音质量。

FastSpeech到FastSpeech 2的过程

FastSpeech设计了两种方式来缓解一对多映射问题:1 )通过使用自回归教师模型生成的梅尔频谱图作为训练目标(即,知识蒸馏)来减少目标侧的数据方差。2 )引入时长信息(从教师模型的注意力图中提取)对文本序列进行扩展,使其与梅尔频谱序列的长度相匹配。FastSpeech中的这些设计虽然缓解了TTS中一对多映射问题的学习,但也带来了一些弊端:1 )两阶段的师生训练流水线使得训练过程变得复杂。2 )教师模型生成的目标梅尔谱与真实梅尔谱相比存在一定的信息损失,因为生成的梅尔谱合成的音频质量通常比真实梅尔谱合成的音频质量差。3 )从教师模型的注意力图中提取的时长不够准确。
》》》》》》》》提出》》》》》》》》》FastSpeech 2》》》》》》》》》》
FastSpeech 2来解决FastSpeech中存在的问题,更好地处理非自回归TTS中一对多的映射问题。为了简化训练管道,避免师生蒸馏过程中因数据简化而造成的信息损失,我们直接用真实目标来训练FastSpeech 2模型,而不用教师的简化输出。为了减少输入(文本序列)和目标输出( mel -谱图)之间的信息差距(输入并不包含预测目标的全部信息),缓解非自回归TTS模型训练中一对多的映射问题,我们在FastSpeech2中引入了语音的一些变化信息,包括基音、能量和更精确的时长:在训练中,我们从目标语音波形中提取时长、基音和能量,并直接将它们作为条件输入;在推断中,我们使用与FastSpeech 2模型联合训练的预测器预测的值。考虑到基音对语音韵律的重要性,以及基音随时间波动较大而难以预测的特点,我们利用连续小波变换将基音轮廓转换为基音频谱图,并在频域进行基音预测,提高了基音预测的准确性。

FastSpeech2模型结构

在这里插入图片描述

变量预测

除了文本之外,语音音频通常还包含许多其他的变量信息,包括(1)音素持续时间,它代表了语音发声的速度;(2)音高,音高是传达情感的重要特征,对感知有重要影响;(3)能量,能量表示熔体谱图的帧级量级,直接影响熔体谱图计算的损耗;(4)情感,风格,演讲者等等。变量信息不完全由文本决定,由于一对多映射问题,不利于非自回归TTS模型的训练。在这段中,我们描述了如何在方差适配器中使用音高,能量和持续时间的细节。

1、时长预测器
以音素作为输入,预测每个音素的时长,表示音素对应的帧数,并转换成对数域方便预测。以提取的时间作为训练目标,以均方误差损失优化预测器。如下图所示。其中MFA是蒙特利尔强制对齐 Tool3工具提取音素时长,提高对其精度,减少模型输入和输出之间的信息差距。在训练过程中输入的是b1,在测试阶段输入的是a1

2、音高和能量预测器
由于预测的音高和真实音高分布有很大的不同,使用连续小波变换(CWT)将连续的pitch序列分解为pitch谱图,并将pitch谱图作为预测器的训练目标,使用MSE损失优化。能量预测器我们计算每个短时傅里叶变换( STFT )框架的振幅的L2范数作为能量。流程类似上图。
在这里插入图片描述

我们从目标梅尔频谱图相同跳数的原始波形中提取F0,得到每一帧的pitch,并计算每一帧STFT幅值的l2 -范数作为能量。然后我们将每一帧的F0和能量量化为256个可能的值,并将它们分别编码为one-hot向量序列( p和 e)。在训练过程中,我们查找 p 和 e 嵌入的音高和能量,并将它们添加到隐藏序列中。音高和能量预测器直接预测F0和能量的值,而不是one-hot向量,并采用均方误差进行优化。在推断过程中,我们使用变量预测器预测F0和能量。

FastSpeech2s模型结构

为了实现完全端到端的文本到波形的生成,在这一部分中,我们将FastSpeech 2扩展到FastSpeech 2s,它直接从文本生成波形,而不需要级联的梅尔频谱生成(声学模型)和波形生成(声码器)。FastSpeech 2s在中间隐藏层产生波形调理,通过丢弃梅尔频谱解码器使其在推理上更加紧凑,并达到与级联系统相当的性能。
文本到波形面临的挑战:
1 )由于波形包含了比梅尔频谱图更多的方差信息,因此输入和输出之间的信息差距比文本到频谱图生成时更大。2 )由于极长的波形样本和有限的GPU内存,很难在与全文序列相对应的音频片段上进行训练。
解决方法:
1 )考虑到使用方差预测器难以预测相位信息,我们在波形解码器中引入对抗训练,迫使其通过自身隐式恢复相位信息。2 )我们使用FastSpeech 2的梅尔谱图解码器,该解码器在全文序列上进行训练,以帮助文本特征提取。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/402774.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SEREN赛恩电源RX01/LX01系列射频手侧

SEREN赛恩电源RX01/LX01系列射频手侧

C:数组传参的本质

1、一维数组传参的本质 数组传参是指在函数调用时将数组作为参数传递给函数。 int main() {int arr[10] { 1,2,3,4,5,6,7,8,9,10 };test(arr);return 0;}数组传参只需要写数组名就可以了。注意:数组名是arr,而不是arr[10] 数组传参形参该怎么写呢&am…

Golang Map 深度剖析:原理、实践与面试要点

嘿,小伙伴们!我是 k 哥。今天,咱们来聊聊 Map 。 在 Go 语言这个神奇的世界里,Map 这个有点神秘的数据结构一直都是开发者们特别关注的。 你是不是在用 Map 的时候,对它里面咋工作的感到好奇?是不是碰到复杂操作的时候,特别想弄明白它背后的原理?别着急,今天这篇文章…

【计算机网络】应用层自定义协议与序列化

记得在上一节我们说过TCP中的读取时需要改进,这节就可以解决读取问题了。 目录 应用层再谈 "协议"网络版计算机方案一方案二 序列化 和 反序列化 重新理解 read、write、recv、send 和 tcp 为什么支持全双工 应用层 再谈 “协议” 我们在UDP与TCP中写的…

支持I2C接口、抗干扰性强、14通道触摸按键的电容式触摸芯片-GTX314L

电容式触摸芯片 - GTX314L是具有多通道触发传感器的14位触摸传感器系列,它是通过持续模式提供中断功能和唤醒功能,广泛适用于各种控制面板应用,可直接兼容原机械式轻触按键的处理信号。 GTX314L芯片内部采用特殊的集成电路,具有高…

基于YOLOv8-pose的手部关键点检测(3)- 实现实时手部关键点检测

目录 前言 1.扩大检测框区域 2.先检测手部,后检测手部关键点 3.正面视角检测 4.侧面视角检测 5.摄像头视角检测 6.遮挡视角检测 7.结论 前言 使用YOLOv8-m对图像进行手部检测,然后扩大检测框区域,并对该区域使用YOLOv8-s-pose使用关键…

大数据技术——实战项目:广告数仓(第六部分)报表数据导出至clickhouse

目录 第11章 报表数据导出 11.1 Clickhouse安装 11.2 Clickhouse建表 11.2.1 创建database 11.2.2 创建table 11.3 Hive数据导出至Clickhouse 第11章 报表数据导出 由于本项目最终要出的报表,要求具备交互功能,以及进行自助分析的能力,…

CSS——字体背景(Font Background)

一、字体族 1、字体的相关样式: ① color 用来设置字体颜色(前景颜色) ② font-size 字体的大小 和font-size相关的单位: em 相对于当前元素的一个font-size rem 相对于根元素的一个font-size ③ font-family 字体族&#x…

命令行参数环境变量

目录 前言: 命令行参数: 现象: 这些参数的意义: 为什么要这么做? 这些事是谁做的呢? 环境变量 现象: 创建环境变量: 结合程序理解: 前言: 我们在前…

1.Linux_常识

UNIX、Linux、GNU 1、UNIX UNIX是一个分时操作系统,特点是多用户、多任务 实时操作系统:来了请求就去解决请求 分时操作系统:来了请求先存着,通过调度轮到执行时执行 2、Linux Linux是一个操作系统内核 发行版本&#xff1…

C++(10)类语法分析(1)

C(10)之类语法分析(1) Author: Once Day Date: 2024年8月17日 一位热衷于Linux学习和开发的菜鸟,试图谱写一场冒险之旅,也许终点只是一场白日梦… 漫漫长路,有人对你微笑过嘛… 全系列文章可参考专栏: 源码分析_Once-Day的博客-CSDN博客 …

基于单片机的智能晾衣系统设计

摘 要 :在网络信息技术的推动下,智能家居得到了广泛应用,文章根据当前的市场动态,针对基于单片机的智能晾衣系统设计展开论述,具体包括两个方面的内容———硬件设计和软件设计。 关键词 :单片机&#xff…

【数据结构篇】~顺序表

顺序表前言 想要学好数据结构的三大基本功:1.结构体2.指针3.动态内存开辟,这三样将是贯彻整个数据结构的工具。(可以去这里了解这三大基本功) 顺序表也是线性表的一种,那线性表又是什么呢? 线性表(linear …

应急响应-DDOS-技术指南

初步预判 通常,可从以下几方面判断服务器/主机是否遭受DDoS攻击查看防火墙、流量监控设备、网络设备等是否出现安全告警或大量异常数据包。如图所示,通过流量对比,发现在异常时间段存在大量UDP数据包,并且与业务无关。 通过安全设…

uniapp多图上传uni.chooseImage上传照片uni.uploadFile,默认上传9张图

uniapp多图上传uni.chooseImage上传照片uni.uploadFile 代码示例: /**上传照片 多图*/getImage() {uni.chooseImage({count: 9, //默认9sizeType: [original, compressed], //可以指定是原图还是压缩图,默认二者都有sourceType: [album], //从相册选择/…

8 Java常用API(基本语法6)-- Object和Objects类、Math、System、浅克隆和深克隆、手动下载导入第三方jar包

文章目录 前言一、Math(工具类)1 属性2 常见方法二、System(工具类,和系统相关的)1 public static void exit(int status) --- 终止当前运行的 Java 虚拟机。2 public static long currentTimeMillis() --- 以毫秒为单位返回当前unix时间。3 public static void arraycopy(Obj…

在Windows上配置VSCode MinGW+CMake(包括C++多线程编程的两套API:posix和win32)

创建目录 首先,需要电脑上安装VSCode, 并且创建三个文件夹:cmake、MinGW-posix、MinGW-w32 文件下载 下载posix-seh posix和win32分别是c多线程变成的两套API,可根据不同需求安装,现在先下载配置环境需要的几个文件 百度搜索MinGW-64 点…

Apache--简介与基本使用

前言:本博客仅作记录学习使用,部分图片出自网络,如有侵犯您的权益,请联系删除 一、Apache简介 Apache HTTP Server(在Red Hat发行版中俗称Apache或httpd)是由Apache Software Foundation在Apache License…

WPF打印控件内容

当我们想打印控件内容时&#xff0c;如一个Grid中的内容&#xff0c;可以用WPF中PrintDialog类的PrintVisual()方法来实现 界面如下&#xff1a; XAML代码如下 <Grid><Grid.ColumnDefinitions><ColumnDefinition/><ColumnDefinition Width"300"…

pygame开发课程系列(4): 游戏元素

第四章 游戏元素 在本章中&#xff0c;我们将深入探讨如何在 Pygame 中处理游戏元素&#xff0c;包括键盘输入、鼠标输入、图像加载和声音播放。这些元素是构建互动游戏的基础&#xff0c;能够让你的游戏变得更生动、更有趣。 4.1 处理键盘输入 键盘输入是控制游戏角色或元素…