用语言模型探索语音风格空间:无需情感标签的情 感TTS

用语言模型探索语音风格空间:无需情感标签的情感TTS

原文:Exploring speech style spaces with language models: Emotional TTS without emotion labels

今天我们要说的是 一种无需情感标签的情感TTS。提出了一个基于FastSpeech2的E-TTS框架,该框架经过两个阶段的训练,直接从未标注情感的训练数据中学习情感表示。我们利用风格标记构建情感风格空间,并使用微调后的BERT模型有效探索此空间。
下面先来看一下这个两阶段训练方法,
第一阶段:构建情感样式空间,
训练声学模块,包括文本、方差适配器、解码器和GST网络(由参考编码器和样式嵌入组成),如图1所示。编码器将音素嵌入转换为音素隐藏序列,而方差适配器则引入引入了音高、时长和能量的变化。解码器然后将这个隐藏序列翻译成梅尔频谱图输出
第二阶段:使用语言模型探索样式空间
第二阶段包括三个模块,
情感数据修剪: 为了捕捉语音-文本对之间的情感关联,我们使用微调后的DistilRoBERTa-base语言模型,从文本中预测情感类别概率。对于每个样本,我们使用该模型计算主导情感。如果主导情感类别的概率超过实验选择的阈值Pth,则将该样本包含在第二阶段的训练数据集中。这和我之前在群里说的用分类器收集语音很像哦(识别是正常人的语音舍弃,构音障碍的语音就收录。)
情感文本嵌入:为了表示文本中的情感内容,我们使用微调后的DistilRoBERTa-base语言模型的最后一层的平均池化提取情感文本嵌入。
适配模块:我们建立了文本中情感上下文与语音中情感韵律之间的情感关联。可以看图2 主要是 对情感样式空间和情感文本嵌入空间的可视化及概念链接。
然后,看一下实验,
我们使用两个数据集的组合训练TEMOTTS的第一阶段:LJSpeech和情感TTS数据集。将数据集
划分为训练集、验证集和测试集,比例为1.8:1:1 。
对于第二阶段,我们使用情感数据修剪方法来选择情感数据集[35]的一个子集。
对于评估,我们使用GPT-3 生成的句子创建两个测试集。第一组包含随机生成的句子,用于评估词错误率(WER)和字符错误率(CER)。第二组包含高情感内容丰富的句子,旨在评估模型的情感文本感知能力。
评估又包括了 客观评估 和主观评估。
对于客观评估
为了评估模型合成情感语音的能力,我们在情感TTS数据集上微调Wave2Vec2.0 [39] 训练了一个SER。我们使用GPT3 [14] 合成每个情绪类别(愤怒、快乐、中立、悲伤)的50个句子。我们使用训练好的SER评估模型从文本合成预期情感的能力。
对于主观评估
可以看到这两个折线图,只有这个模型是最接近真实值的。

引言

研究背景

  • 许多情感文本转语音(E-TTS)框架依赖于人工标注的情感标签,这些标签往往不准确且难以获取。
  • 情感韵律的学习具有挑战性,因为情感本身具有主观性。

研究目标

  • 提出一种无需明确情感标签或文本提示的新型E-TTS方法TEMOTTS。
  • 展示该方法在情感准确性和自然度方面的改进。

相关工作

减少情感标签使用的研究

  • 数据集标注成本高,限制了E-TTS研究的发展。
  • 半监督学习等方法被用于减少情感标签的数量。
  • 本文强调通过文本感知的方法来利用音频-文本对中的内在情感联系。

文本感知TTS

  • 探索利用文本学习韵律表示的研究,如TP-GST和MsEmoTTS。
  • 使用BERT等语言模型增强韵律建模和情感表示。
  • 最近的研究尝试减少风格文本输入和参考语音之间的模态差距。

TEMOTTS框架

在这里插入图片描述

阶段一:构建情感风格空间

  • 训练声学模块,包括文本编码器、方差适配器、解码器和GST网络。
  • GST网络由参考编码器和风格嵌入组成,用于为各种说话风格条件化TTS模型的编码器。
  • 模型隐式学习代表情感的说话风格。
    在这里插入图片描述

阶段二:使用语言模型探索风格空间

情感数据剪枝
  • 使用细调的DistilRoBERTa-base语言模型预测文本的情感类别概率。
  • 如果主导情感的概率超过阈值Pth,则将样本纳入训练数据集。
情感文本嵌入
  • 提取情感文本嵌入,使用均池化从细调的语言模型最后一层中获得。
适应模块
  • 建立文本情感上下文与语音情感韵律之间的情感关联。
  • 通过t-SNE可视化情感风格空间和情感文本嵌入空间的关系。
  • 引入适应模块,将情感文本嵌入映射到相应的情感风格表示。

推理阶段

  • 推理时仅需文本作为输入,生成情感文本嵌入。
  • 预测GST权重,访问由风格令牌构建的情感风格空间。
  • 合成文本感知的情感语音。
    -在这里插入图片描述

实验结果

在这里插入图片描述

客观评估

  • 计算CER和WER以评估合成语音的可理解性。
  • 使用SER评估模型合成预期情感的能力。
  • 结果显示,TEMOTTS在情感准确性和表达能力上优于基线模型。
    在这里插入图片描述

主观评估

在这里插入图片描述

  • 进行听觉实验评估语音质量和合成文本感知情感语音的能力。
  • MOS评估表明,TEMOTTS在自然度方面表现更好。
  • BWS测试显示,TEMOTTS在合成文本-情感准确性方面表现最佳。

结论

  • TEMOTTS克服了人工标注情感标签和情感韵律学习复杂性的挑战。
  • 利用文本感知获取情感风格,消除了训练时对明确情感标签的需求和推理时的辅助输入。
  • 实验展示了在情感准确性、自然度和可理解性方面的显著改进。

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

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

相关文章

HTML之JavaScript运算符

HTML之JavaScript运算符 1.算术运算符 - * / %除以0,结果为Infinity取余数,如果除数为0,结果为NaN NAN:Not A Number2.复合赋值运算符 - * / %/ 除以0,结果为Infinity% 如果除数为0,结果为NaN NaN:No…

.net处理dynamic类型运行之后的数据

在 .NET 中,dynamic 类型用于在运行时处理对象,它可以绕过编译时的类型检查,让你在运行时动态地访问对象的成员。当处理 dynamic 类型的 List 数据时,你可以按照以下步骤进行操作。 ### 示例场景 假设你有一个 dynamic 类型的 Li…

Linux网络编程--Udp套接字+实战 (万字详解,超详细!!)

目录 套接字协议: 协议(protocol): 创建套接字(Create Socket): 绑定服务器地址 开始通信 Udp服务器设计--V1 Udp服务器设计--V2 引入进程池 待更新 套接字协议: 协议(protocol): 如果2个距离很远的人想要进行交流&#xff…

<tauri><rust><GUI>使用tauri创建一个图片浏览器(文件夹遍历、图片切换)

前言 本文是基于rust和tauri,由于tauri是前、后端结合的GUI框架,既可以直接生成包含前端代码的文件,也可以在已有的前端项目上集成tauri框架,将前端页面化为桌面GUI。 环境配置 系统:windows 10平台:visual studio code语言:rust、javascript库:tauri2.0概述 本文是…

C# 两种方案实现调用 DeepSeek API

目录 序 开发运行环境 访问API的一个通用方法 原生官网实现 申请 API key 调用实现 调用示例 腾讯云知识引擎原子调用 申请 API key 调用示例 小结 序 DeepSeek(深度求索) 最近可谓火爆的一塌糊涂,具体的介绍这里不再赘述&#x…

Flutter PIP 插件 ---- Android

在 Flutter Android 应用中实现画中画功能 画中画(Picture-in-Picture, PiP)模式允许您的应用在一个固定在屏幕角落的小窗口中运行,同时用户可以与其他应用进行交互。本指南将介绍如何在 Flutter Android 应用中实现画中画功能,包括其局限性和解决方案。 项目地址 flutter_p…

中间件-安装Minio-集成使用(ubantu-docker)

目录 1、安装docer 2、运行以下命令拉取MinIO的Docker镜像 3、检查当前所有Docker下载的镜像 4、创建目录 5、创建Minio容器并运行 6、SDK操作 FileUploader.java 1、安装docer 参考这篇:Linux安装Docker 2、运行以下命令拉取MinIO的Docker镜像 docker pull…

【CXX】0 Rust与C 互操作利器:CXX库介绍与示例

CXX库是一个非常强大的工具,它使得Rust和C之间的互操作性变得既安全又高效。本专栏将展示如何使用CXX库来桥接Rust和C代码,同时保持两者语言的特性和惯用法。 一、关键概念回顾 类型安全:CXX库通过静态分析类型和函数签名来保护Rust和C的不…

LabVIEW用户界面设计原则

在LabVIEW开发中,用户界面(UI)设计不仅仅是为了美观,它直接关系到用户的操作效率和体验。一个直观、简洁、易于使用的界面能够大大提升软件的可用性,尤其是在复杂的实验或工业应用中。设计良好的UI能够减少操作错误&am…

使用 Docker 安装 Open WebUI 并集成 Ollama 的 DeepSeek 模型

文章目录 使用 Docker 安装 Open WebUI 并集成 Ollama 的 DeepSeek 模型前提条件1. 安装ollama2. 拉取deepseek的模型3. Open-WebUI 说明4. 启动容器文档的方法如下优化命令(可选)1. 增加了健康检查机制(--health-cmd)2. 使 WebUI…

SAP-ABAP:SAP中REPORT程序和online程序的区别对比

在SAP中,REPORT程序和Online程序(通常指Dialog程序)是两种常见的ABAP程序类型,它们在用途、结构和用户交互方式上有显著区别。以下是它们的详细对比: 1. 用途 REPORT程序Online程序主要用于数据查询、报表生成和批量数…

19.4.9 数据库方式操作Excel

版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。 本节所说的操作Excel操作是讲如何把Excel作为数据库来操作。 通过COM来操作Excel操作,请参看第21.2节 在第19.3.4节【…

算法15(力扣347)——前k个高频元素

1、问题 给你一个整数数组 nums 和一个整数 k ,请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。 2、示例 (1) 输入: nums [1,1,1,2,2,3], k 2 输出: [1,2] (2) 输入: nums [1], k 1 输出: [1…

防御保护-----前言

HCIE安全防御 前言 计算机病毒 ​ 蠕虫病毒----->具备蠕虫特性的病毒:1,繁殖性特别强(自我繁殖);2,具备破坏性 蠕虫病毒是一种常见的计算机病毒,其名称来源于它的传播方式类似于自然界中…

IntelliJ IDEA 2024.1.4版无Tomcat配置

IntelliJ IDEA 2024.1.4 (Ultimate Edition) 安装完成后,调试项目发现找不到Tomcat服务: 按照常规操作添加,发现服务插件中没有Tomcat。。。 解决方法 1、找到IDE设置窗口 2、点击Plugins按钮,进入插件窗口,搜索T…

docker compose部署flink集群

本次部署2个jobmanager和3个taskmanager 一、部署zookeeper集群 flink使用zookeeper用作高可用 部署集群参考:docker compose部署zookeeper集群-CSDN博客 二、创建目录及配置文件 创建timezone文件,内容填写Asia/Shanghai 手动创建目录&#xff1a…

Spring Boot 配置JPA数据库主从读写分离失败及解决办法

因为是老项目, Spring Boot 是1.4, 使用 AbstractRoutingDataSource 来做主从切换, 配置切面类在进入事务时切换成主库, 但实际运行起来却失败, 写操作路由到了从库 查了很多文章, 试了很多方法都无效, 包括修改注解 Transactional 的 propagation 属性, 清空主从标记等等 打…

XSS 常用标签及绕过姿势总结

XSS 常用标签及绕过姿势总结 一、xss 常见标签语句 0x01. 标签 <a href"javascript:alert(1)">test</a> <a href"x" onfocus"alert(xss);" autofocus"">xss</a> <a href"x" onclickeval(&quo…

如何在Kickstart自动化安装完成后ISO内拷贝文件到新系统或者执行命令

如何在Kickstart自动化安装完成后ISO内拷贝文件到新系统或者执行命令 需求 在自动化安装操作系统完成后&#xff0c;需要对操作系统进行配置需要拷贝一些文件到新的操作系统中需要运行一些脚本 问题分析 Linux安装操作系统时&#xff0c;实际上是将ISO镜像文件中的操作系统…

【Django】 templates模板与static静态文件

1.templates模板 在app01(你创建的app名称)文件夹下&#xff0c;创建templates文件夹&#xff0c;其中存放想要返回的html文件 对应关系如下 除了上面的方式&#xff0c;还可以在项目根目录下创建templates文件夹&#xff0c;这时需要在settings.py文件中增加一行代码&#xf…