自监督表示学习和神经音频合成实现语音修复

关键词语音修复自监督模型语音合成语音增强神经声码器

    语音和/或音频修复的目标是增强局部受损的语音和/或音频信号。早期的工作基于信号处理技术,例如线性预测编码、正弦波建模或图模型。最近,语音/音频修复开始使用深度神经网络(DNNs),主要是全监督学习和编解码器架构,编码器输入为掩蔽的信号,解码器生成缺失部分的估计。

     我们探讨使用语音SSL模型进行语音修复的情况,即从其周围环境中重建语音信号的缺失部分,也就是完成一个与预文本任务非常相似的下游任务。为此,我们将SSL编码器(即HuBERT)与神经声码器(即HiFiGAN)结合起来,后者扮演解码器的角色。特别地,我们提出了两种解决方案来匹配HuBERT的输出与HiFiGAN的输入,通过冻结一个并微调另一个,反之亦然。

  1. 1、使用 HuBERT 和 HiFiGAN 进行语音修复的两种方法

使用 HuBERT 和 HiFiGAN 进行语音修复的两种方法:解码器适配 (IDA) 和编码器适配 (EA)。两种方法的主要区别在于谁被冻结谁被微调。

1.1 解码器适配 (IDA)

  • HuBERT 模型被冻结: 使用预训练的 HuBERT 模型进行特征提取,不进行任何微调。
  • HiFiGAN 模型被微调: 根据 HuBERT 的输出特征对 HiFiGAN 进行微调,使其能够根据 HuBERT 的特征生成语音波形。

1.2 编码器适配 (EA)

  • HuBERT 模型被微调: 对 HuBERT 模型进行微调,使其能够直接预测掩码部分的梅尔谱图。
  • HiFiGAN 模型被冻结: 使用预训练的 HiFiGAN 模型,根据 HuBERT 预测的梅尔谱图生成语音波形。

2、实验设置

2.1 实施细节

2.1.1 SSL 编码器 HuBERT

使用 Hugging Face 提供的预训练模型 hubert-large-ls960-ft,该模型基于 LibriSpeech 数据集进行微调。

语音输入采样率为 16 kHz,prenet 窗口大小和步长分别为 8960 和 320 个样本,输出维度为 768。

2.1.2 解码器适配 (IDA)

使用 Polyak 等人提出的 speech encoder-decoder 框架,并进行两步适配过程:

  • 使用 HuBERT 的输出 Z 作为新的信号表示,并使用 k-means 算法构建代码本。
  • 从头训练一个适配的 HiFiGAN 解码器,输入为代码本中向量 ˆcL 的索引。

2.1.3 编码器适配 (EA)

使用 HiFiGAN 的 Mel-spectrogram 作为输入,并冻结其模型。

重新引入 g1 和 g2 模块,并将 HuBERT 的输出适应到 Mel-spectrogram 表示。

使用 k-means 算法构建 Mel-spectrogram 的代码本,并训练 g2 模块来预测量化后的 Mel-spectrogram。

对 f2 模块进行微调,并对 g2 模块从头训练。

2.2 基线

作为基线,我们实现了一个基于线性插值的简单修复方法(ILI)。对于给定的掩蔽信号,它包括计算其Mel频谱图(如第三节所述),并用掩蔽区域前后的最后一个框架和第一个框架之间的线性插值替换掩蔽框架。然后,将插值的Mel频谱图输入到预训练的HiFiGAN声码器以生成22.05 kHz的波形,然后将其下采样到16 kHz。

2.3 评估指标

客观指标

  • PESQ (Perceptual Evaluation of Speech Quality): 评估语音质量。
  • STOI (Short-Time Objective Intelligibility): 评估语音可懂度。
  • CER (Character Error Rate): 评估语音识别准确率。

主观评估:

MUSHRA 测试: 使用 Web Audio Evaluation Tool 进行在线 MUSHRA 测试,评估语音修复质量。

2.4 结果

  • 定性分析: IEA 和 IDA 框架在修复质量上均优于 ILI 基准。
  • 单说话人情况: IEA 框架在所有指标上均优于 IDA 框架。
  • 多说话人情况: IDA 框架在所有指标上均优于 IEA 框架。
  • 盲修复: 所有指标均低于知情修复,但趋势相似。
  • 与其他研究比较: IEA 和 IDA 框架在知情修复情况下优于其他基于监督学习的方法,尤其是在长掩码情况下。

2.5 数据集

LJ Speech: 一个公共领域的语音数据集,包含13100个短音频剪辑。这些剪辑由单一发言者阅读7本非小说类书籍的段落,每个剪辑都提供了转录。剪辑的长度从1秒到10秒不等,总长度大约为24小时。

下载地址:The LJ Speech Dataset

VCTK: 一个广泛使用的语音数据集,主要用于语音识别、语音合成和语音克隆等领域。该数据集包含110名英语发音者的语音数据,每位发言者大约读出400句句子,这些句子选自报纸、彩虹段落和用于演讲口音存档的一段文字。

下载地址:https://datashare.ed.ac.uk/handle/10283/1942

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

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

相关文章

react antd table表格如何获取当前行id

组件库上都有详细的介绍,有自带的一些属性!

【EFK日志系统】docker一键部署filebeat、metricbeat

docker一键部署filebeat、metricbeat filebeat部署创建配置文件一键启动修改配置文件查验信息 metricbeat部署创建配置文件一键启动修改配置文件查验信息 上两篇文章写了搭建部署es集群和部署kibana 这篇写一键部署filebeat和metricbeat收集工具 规划服务器是 es01:172.23.16…

PyQt5创建与MySQL数据库集成的应用程序

最近,对之前的mysql管理系统进行了更新升级,制作了一版关于车牌的管理系统! (1)实现了对车牌和用户基本信息的增删改查的功能 ! (2)加入了对数据库的刷新和状态显示功能 &#xff…

反向传播算法的详细推导

反向传播算法的详细推导

R19 NR移动性增强概况

随着5G/5G-A技术不断发展和业务需求的持续增强,未来网络的部署将不断向高频演进。高频小区的覆盖范围小,用户将面临更为频繁的小区选择、重选、切换等移动性过程。 为了提升网络移动性能和保障用户体验,移动性增强一直是3GPP的热点课题。从NR…

部署Envoy

Envoy常用术语 envoy文档官网 Life of a Request — envoy 1.31.0-dev-e543e1 documentationhttps://www.envoyproxy.io/docs/envoy/latest/intro/life_of_a_request#terminology 基础总结 (1)Envoy Envoy自己本身是工作在L7层的一个proxy&#xff…

ABP框架+Mysql(一)

生成项目 通过用官网的来生成 Get Started | ABP.IO 配上官网地址,需要注意的是,数据库选择Mysql 选择完成后,执行页面上的两条命令 dotnet tool install -g Volo.Abp.Cli abp new Acme.BookStore -dbms MySQL -csf 生成结束后的内容 单击打…

锐捷校园网自助服务-字符过滤存在缺陷

锐捷校园网自助服务-字符过滤存在缺陷 漏洞介绍 令人感到十分遗憾的是,锐捷网络安全应急响应中心对漏洞上报似乎缺少了一些奖励,令人对官方上报漏洞失去了些许兴趣​。 该缺陷仅仅打破了安全检查防护,并没有造成实质性危害,至于…

生成ssh密钥,使用ssh连接linux系统

这里写目录标题 ssh密钥大概介绍1、密钥在哪里生成(客户端/服务器)?2、密钥生成是什么样子的? ssh (生成密钥、密钥传输、配置连接、连接服务)过程1、生成密钥提示一:输入保存密钥的文件&#x…

每日一题《leetcode--LCR 022.环形链表||》

https://leetcode.cn/problems/c32eOV/ 我们使用两个指针,fast 与 slow。它们起始都位于链表的头部。随后slow 指针每次向后移动一个位置,而fast 指针向后移动两个位置。如果链表中存在环,则fast 指针最终将再次与slow 指针在环中相遇。 stru…

AR和AP重分类(Regroup)[FAGLF101/OBBU/OBBV]

一、为什么AR和AP科目需要重分类 1.1 执行操作的前提(重要) 存在AR的当月总余额在贷方(客户贷项凭证、预收账款等)或AP的当月总余额在借方(供应商贷项凭证、预收账款等),这种情况下无法真实的反映出资产和负债情况&…

阿里云语音合成TTS直播助手软件开发

阿里云的TTS比较便宜,效果比不了开源克隆的那种,比纯机器人效果好一点点 阿里云sambert https://help.aliyun.com/zh/dashscope/developer-reference/quick-start-13 Sambert系列模型 1万字1元 ,每主账号每模型每月3万字免费 创建API-KEY htt…

Linux——多线程(二)

在上一篇博客中我们已经介绍到了线程控制以及对应的函数调用接口&#xff0c;接下来要讲的是真正的多线程&#xff0c;线程安全、线程互斥、同步以及锁。 一、多线程 简单写个多线程的创建、等待的代码 #include<iostream> #include<pthread.h> #include<un…

【C++】list的使用(下)

&#x1f525;个人主页&#xff1a; Forcible Bug Maker &#x1f525;专栏&#xff1a; STL || C 目录 前言&#x1f525;操作list对象的接口函数&#xff08;opeartions&#xff09;spliceremoveremove_ifuniquemergesortreverse 结语 前言 本篇博客主要内容&#xff1a;STL…

MySQL 自定义函数(实验报告)

一、实验名称&#xff1a; 自定义函数 二、实验日期&#xff1a; 2024年 6 月 1 日 三、实验目的&#xff1a; 掌握MySQL自定义函数的创建及调用&#xff1b; 四、实验用的仪器和材料&#xff1a; 硬件&#xff1a;PC电脑一台&#xff1b; 配置&#xff1a;内存&#…

如何区分解析亚马逊网站产品搜索结果页HTM代码中广告位( Sponsored)和自然位的产品ASIN及排名

在开发亚马逊产品广告排名插件的时候需要通过页面HTML代码分别找出属于广告位和自然搜索结果的产品ASIN及排名&#xff0c;所以需要找到区分广告位和自然搜索结果的HTML代码属性&#xff1a; 所有搜索结果页的产品不管是广告位还是自然位&#xff0c;都包括在 标签里&#xff…

RTPS协议之Behavior Module

目录 交互要求基本要求RTPS Writer 行为RTPS Reader行为 RTPS协议的实现与Reader匹配的Writer的行为涉及到的类型RTPS Writer实现RTPS WriterRTPS StatelessWriterRTPS ReaderLocatorRTPS StatefulWriterRTPS ReaderProxyRTPS ChangeForReader RTPS StatelessWriter BehaviorBe…

ARM-V9 RME(Realm Management Extension)系统架构之系统安全能力的信任根服务

安全之安全(security)博客目录导读 目录 一、信任根服务 1、非易失性存储 2、根看门狗 3、随机数生成器 4、加密服务 5、硬件强制安全性 本节定义了系统架构必须支持的一般安全属性和能力&#xff0c;以确保RME安全性。 本章扩展了可能属于系统认证配置文件的一部分的其…

30 分钟内掌握 Mainnet、Testnet 和 Devnet。Devnet是什么??

在区块链技术领域&#xff0c;Mainnet、Testnet 和 Devnet 等术语经常被使用&#xff0c;但也经常被误解。 这三种环境在区块链应用的开发和部署中起着至关重要的作用&#xff0c;但它们的区别和目的却常常被混淆。 让我们踏上探索之旅&#xff0c;揭开 Mainnet、Testnet 和 De…

Simulink中使用ROS1自定义消息

Simulink中使用ROS1自定义消息 简介前提条件操作流程问题一问题二问题三 吐槽 简介 最近在做的项目里需要使用Simulink与ROS联合仿真&#xff0c;这里就遇到了一个问题&#xff0c;Simulink无法直接使用ROS中的自定义消息&#xff0c;需要在MATLAB中生成一下&#xff0c;再引入…