Make-An-Audio——用于语音生成的提示增强扩散模型

news2024/11/13 10:46:20

0.引言

论文提出了一个从文本生成语音的扩散模型 Make-An-Audio。该模型将文本提示作为输入,并据此生成语音。例如,输入 “一只猫在喵喵叫,一个年轻女人的声音”,就会输出猫在喵喵叫,一个女人在说话的音频。这项研究已被机器学习领域最难的国际会议之一 ICML 2023 接收。
论文要点:
通过伪标签解决音频-文本对数据不足的问题:在音频-文本对齐任务中,即同步音频信号和相应的文本表示,数据量往往受限。利用伪标签技术,模型可以生成自己的训练数据,通过预测未标记数据的标签并用这些预测来增强训练集,从而提高模型的泛化能力和性能。

介绍频谱图自动编码器:频谱图自动编码器是一种深度学习模型,它能够学习音频信号的频谱图表示。频谱图是音频信号的可视化,显示了不同频率成分随时间的变化。自动编码器通过一个编码过程捕捉频谱图的特征,然后通过解码过程重建输入,这种结构有助于提取音频数据的有用特征,用于进一步的处理和分析。

还应用于个性化生成、音频Inpainting和数据-音频:这些技术不只局限于基本的音频-文本对齐,它们还有多种应用场景:

  • 个性化生成:可以根据用户的偏好或历史数据生成个性化的音频内容。
  • 音频Inpainting:即音频修复,可以填充或修复音频中的缺失或损坏部分,恢复音频的完整性。
  • 数据-音频:可能指的是将数据转换为音频格式,用于如数据可视化或辅助听觉接口等应用。

论文地址:https://arxiv.org/abs/2301.12661
项目地址:https://text-to-audio.github.io/

1、语音生成的挑战在于缺乏数据

深度生成模型在处理文本提示并生成相应数据方面取得了显著进展,特别是在文本到图像(Text-to-Image)和文本到视频(Text-to-Video)领域,现在能够创造出高质量和多样化的内容。然而,文本到音频(Text-to-Audio)的生成在技术上仍然面临一些挑战:

  1. 数据量不足:相比于图像和视频,文本和语音配对的数据较为稀缺,这限制了模型学习的能力。
  2. 建模复杂性:音频数据是连续的信号,建模这样的长时间序列非常复杂,特别是要与文本同步。

例如,收集带有文本标签的图像数据相对容易,但收集相应的文本标记的音频数据则要困难得多。

为了解决这些问题,本研究提出了三种创新方法:

  • 提示增强扩散模型:利用扩散模型生成音频,通过提示增强来提升生成音频的质量。
  • 伪标签生成:通过生成与语音紧密相关的文本的伪标签,来缓解文本-语音配对数据不足的问题。
  • 频谱图自编码器:使用自编码器预测音频的自监督表征,以简化对连续信号数据的建模。

这些方法使得Make-An-Audio概念虽然简单,却能产生强大的效果。此外,本研究还探索了三种语音生成模式:

  • 个性化文本到音频生成:根据用户的个性化需求生成音频。
  • 音频绘制(Audio Painting):类似于图像绘制,但应用于音频领域,可能涉及声音的设计和编辑。
  • 视觉转音频生成:将视觉信息转换为音频,这种模式可能用于描述性视频内容或辅助视觉障碍人士。

这些进展不仅推动了文本到音频生成技术的发展,还为个性化内容创作、音频编辑和跨模态信息转换提供了新的可能性。

2.模型架构

2.1 方法概述

Make-An-Audio 的音频生成过程如下图所示。

上述结构中的每个要素可分为以下五类

  • 改进伪提示,缓解数据短缺问题。
  • 文本编码与对比学习(CLAP)
  • 用于预测自我监督表征的谱图自动编码器
  • 以文本嵌入为条件的扩散模型。
  • 神经声码器,用于将熔体频谱图转换为原始波形。

下文将详细讨论这些要素。

2.2 伪标记(蒸馏-然后-再制图)

本节介绍一种名为 "蒸馏–然后–再编程 "的方法,该方法采用伪标签技术来解决文本-音频对数据不足的问题。

顾名思义,这种技术涉及蒸馏,然后重新编程。

让我们依次看看每个阶段。

2.3 ・专家蒸馏_

在这一阶段,首先接收 "无文本标签的音频数据 "作为输入。

以下两个预先训练好的模型可作为专家模型用于生成提示信息

  • 自动音频标题生成模型:生成各种文本来描述音频数据的内容。
  • 语音到文本搜索:搜索数据库中的 "类似音频数据

在这里,两个专家模型协同工作,提取有关输入音频数据的知识,并根据音频数据生成文本。

2.4 ・动态重编程*_

接下来,以专家蒸馏法刚刚生成的文本_为 X_,使用以下四个步骤来扩展数据。

  1. 在数据库中存储带有极短文本标签_的_音频数据。
  2. 从 DB 采样 0~2 个音频数据
  3. 结合这些音频数据。
  4. 根据 "模板 "组合 X 和 &。

在这里,_&_内容指的是简短的、多为单字的文本,如 "鸟 "或 “脚步声”。

模板还包括

本文公布了上述模板的详细规则如下。

具体来说,我们分别用采样数据的自然语言和数据库中采样事件的类别标签来代替 X 和 &。nbsp;
对于动词(用 v 表示),我们有 {‘听到’、‘注意到’、‘听到’、‘出现’};。
对于形容词(用 a 表示),我们有 {‘清晰’、‘嘈杂’、‘特写’怪异’、‘干净’};。
对于名词(用 n 表示),我们有 {‘音频’、‘声音’、‘声音’};。
对于数字/量词(用 q 表示),我们有 {‘a’、‘the’、‘some’};

2.5 文本编码器

在文本到数据(图像、音频、音乐等)领域,两种最常见的文本提示编码方法是

  • 跨模态学习与对比学习(MuLan、CLIP、CLAP 等)。
  • 使用预先训练的 LLM(T5、FLAN-T5 等)进行编码。

本研究也使用这些预训练的冻结模型来编码文本提示。具体来说,CLAP 被用作控制学习模型,T5-Large 被用作预训练的 LLM。

结果表明,在基准评估中,CLAP 和 T5-Large 都能取得相似的结果,但 CLAP 在没有 LLM 所需的离线嵌入计算的情况下效率更高。

频谱图自动编码器

这里,输入的音频数据代表熔融频谱图_x_。频谱图自动编码器包括

  • 编码器_E_,输入为**x,输出潜在表示z**
  • 解码器_G_从 z重构出熔融频谱图信号x’
  • 多窗口鉴别器

整个系统从头到尾进行学习,以最大限度地减少

  • 重建损失:提高学习效率和生成频谱图的保真度
  • GAN 损失:识别器和生成器的对抗学习
  • KL 惩罚损失:限制编码器学习标准**z**并避免高度分散的潜空间

通过这种方式,Make-An-Audio 预测的是一种自监督表示法,而不是波形。这大大降低了长序列数据建模的难度,并保证了高质量的语义理解。

2.6 潜在扩散

这里使用的是潜在扩散模型。这是一种通过对潜在表征应用扩散和反扩散过程来生成潜在表征的方法。然后,该过程以文本为条件。损失函数如下

3. 数据转音频

数据到音频的生成,它应用并概括了迄今为止的研究思路。这里的数据到音频是指以下三种方式。

  • 个性化文本到音频生成
  • 音频绘制
  • 视觉转音频生成

3.1 个性化文本到音频生成

最近,"个性化 "也出现在视觉和图形领域,允许进行个性化和创造性的定制,例如融入独特的物品。

这种个性化也融入了本研究中。例如,当给出语音 "雷声 "并与提示 "婴儿哭声 "一起生成时,就可以生成听起来像 "雷雨天婴儿哭声 "的语音。它还可广泛用于混合和调整语音,例如为现有语音添加背景声音或通过插入语音对象编辑语音。

3.2 音频绘制

音频绘制是通过重建数字音频信号的受损部分来恢复音频的任务。

Inpainting 是一种最初还原图像部分内容的技术。该技术可重建图像上的遮蔽区域,自然还原划痕、写在图像上的文字等。他们已将这项技术扩展到音频领域。

在这项研究中,为了扩展到语音,语音频谱图被视为一种图像,而 Inpainting 则应用于频谱图图像。

具体来说,Make-An-Audio 针对音频绘制进行了微调,并为音频频谱图提供了不规则的掩码(厚、中、薄掩码)。

这里的掩蔽是指添加音频,以填补音频中受损的部分。

3.3 视觉转音频生成

最近的深度生成模型推进了上述 "根据图像和视频内容生成音频 "的研究。因此,为了进一步推进这项研究,本研究将 Make-An-Audio 扩展为 “根据视觉信息生成音频”。具体来说,有两个

  • 图像到音频
  • 视频转音频

本研究中的 "视觉-音频 "推理过程如下。

在此,本研究采用了以下两种思路

  • 有控制的学习(CLIP)
  • CLIP 引导的文本到音频模式。

CLIP 是利用对比学习进行 “图像和文本的跨模态学习”,由一个图像编码器和一个文本编码器组成;CLIP 使图像和相关文本之间的联系成为可能。

3.4 图像到音频

利用这一技术,本研究中的 "图像到音频 "基于以下步骤。

  1. 输入图像。
  2. 图像数据通过 CLIP 图像编码器。
  3. 通过 Make-An-Audio 变压器。
  4. 通过 U 网的交叉注意层
  5. 通过 Make-An-Audio 的音频文件编码器。
  6. 通过 Make-An-Audio 的 Vocoder。
3.5 视频转音频

视频是多个图像帧的集合。因此,Video-to-Audio 会从视频中统一提取四个帧,汇集并平均这些 CLIP 图像特征,然后将其发送到 Make-An-Audio 的 Transformer 层。

4.实验与结果

本节介绍研究的定量评估方法。

4.1 估值指数

该研究使用 "语音质量 "和 "文本到语音链接的准确性 "的客观和主观测量方法对模型进行评估。

以下指标被用作客观指标

  • 基于 melception 的 FID:自动性能指标。
  • KL 分歧:音频保真度
  • CLAP 评分:文本到语音链接的准确性

对于主观评分指标,我们还通过众包的方式,对这些受试者进行了平均意见分(MOS)测试,采用的是 20-100 分的李克特量表。在此,我们进行了以下心理测试,并计算了各项指标(各指标的置信区间为 95%)。

指示符内涵实验细节
MOS-Q音质要求受试者集中精力检查音质和自然度,并让他们评估
MOS-F文本到语音的一致性向受试者展示音频和提示,然后问他们:"自然语言描述是否与音频完全吻合?并让他们用 20-100 分的李克特量表回答 “完全”、"大部分 "或 “有点”。

给受试者的说明截图如下。

4.2 文本到音频成果

在此,我们将客观和主观指标与 Diffsound(唯一公开的文本到音频基准)进行比较。结果如下

从这些结果中可以看出三点

  • 在音频质量方面,Make-An-Audio 取得了 FID 4.61 和 KL 2.79 的最高分。
  • Make-An-Audio 的文本到语音一致性 CLAP 最高
  • 受试者对 MOS-Q 和 MOS-F 的评分最高,分别为 72.5 分和 78.6 分

此时还使用以下编码器进行了对比实验

  • BERT
  • T5-大号
  • 剪辑
  • 鼓掌

生成的文本编码器权重被冻结。从上述结果表中,我们可以得出以下三个考虑因素

  • CLIP 用于文本-图像,对于文本-音频可能没有用处
  • CLAP 和 T5-Large 实现了相似的性能
  • CLAP 不需要离线计算 LLM 中的嵌入,计算效率可能更高(只需 59% 的参数)。

4.3 音频绘制

音频绘制评估有以下六种不同的屏蔽选项。

  • 厚掩膜(不规则)
  • 中度遮蔽(不规则)
  • 薄掩膜(不规则)
  • 屏蔽 30% 的数据(帧)
  • 屏蔽 50%的数据(框架)
  • 屏蔽 70% 的数据(帧)

他们还随机屏蔽宽窄区域,并使用 FID 和 KL 指标来衡量性能。

结果如下

结果表明,无论采用哪种屏蔽方法,学习过程中屏蔽的区域越大,准确率就越高。

在屏蔽区域大小相当的情况下,基于框架的系统始终优于不规则系统。

音频绘制结果示例如下。

上图自上而下显示了有缺陷的输入音频(Input)、音频绘制结果(Result)和无缺陷的真实音频(GT)。在这种情况下,给定一个有缺陷的输入音频 Input,对其进行训练,使其尽可能接近无缺陷的真实音频 GT。

从结果中可以看出,不同形状的遮蔽区域都能正确地填充和重建声音。

4.4 视觉转音频

视觉转音频的结果如下。

结果表明,它可以成功地推广到图像和视频中。

4.5 个性化文本到音频生成

如下左图所示,在个性化文本到音频中,需要在忠实性(文本到字幕的一致性)和逼真性(音质)之间进行权衡。

右图显示,随着 T 的增大,原始音频中会添加大量噪音,从而使生成的样本更加逼真,但却失去了忠实度。

为了便于比较,真实度用生成语音和初始语音之间的 1-MSE 距离来衡量,而忠实度则用生成样本之间的 CLAP 分数来衡量。

5.总结

本文介绍了用于文本到音频(Text-to-Audio)的提示增强扩散模型 Make-An-Audio;Make-An-Audio 可实现高精度的语音生成。毫无疑问,这项工作将为未来的语音合成研究奠定基础。此外,它还有助于减少制作短视频和数字艺术所需的工作量。

作者还提到了这项研究面临的挑战,即 “潜在扩散模型通常需要更多的计算资源,并可能随着训练数据的减少而退化”。因此,未来的方向之一是 “开发轻量级的快速扩散模型”,以加快数据生成速度。

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

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

相关文章

php反序列化初步了解

一、定义 序列化(串行化):将变量转换为可保存或传输的字符串的过程(通常是字节流、JSON、XML格式) 反序列比(反串行化):把这个字符串再转化成原始数据结构或对象(原来的…

一个生动的例子——通过ERC20接口访问Tether合约

生动的例子 USDT:符合ERC20标准的美元稳定币,Tether合约获得测试网上Tether合约地址通过自己写的ERC20接口访问这个合约 Tether合约地址:0xdAC17F958D2ee523a2206206994597C13D831ec7 IERC20.sol // SPDX-License-Identifier: GPL-3.0pra…

HTTP Basic Access Authentication Schema

HTTP Basic Access Authentication Schema 背景介绍流程安全缺陷参考 背景 本文内容大多基于网上其他参考文章及资料整理后所得,并非原创,目的是为了需要时方便查看。 介绍 HTTP Basic Access Authentication Schema,HTTP 基本访问认证模式…

代码随想录训练营Day 43|力扣343. 整数拆分、96.不同的二叉搜索树

1.整数拆分 代码随想录 视频讲解:动态规划,本题关键在于理解递推公式!| LeetCode:343. 整数拆分_哔哩哔哩_bilibili 代码: class Solution { public:int integerBreak(int n) {// dp[i] 拆分数字i所获得的最大乘积为d…

7-zip工具?这么好用的你都能找到!

关于7-Zip,这不是一个神奇的小工具吗?让我悄悄告诉你,它其实是个压缩界的隐形冠军哦。 想象一下,你下载了一堆文件,电脑空间却告急,这时候7-Zip就像你的小助手,帮你把文件们“瘦身”&#xff0…

JavaScript-JavaWeb

目录 什么是JavaScript? js引入方式 js基础语法 书写语法 变量 数据据类型 运算符 类型转换 流程语句 js函数 js对象 1.Array 2.String 3.JSON js事件监听 什么是JavaScript? ● JavaScript(简称:JS)是一门跨平台、面向对象的脚本语言。是用来控制网页行为的,它能…

LeetCode2336无限集中的最小数字

题目描述 现有一个包含所有正整数的集合 [1, 2, 3, 4, 5, …] 。实现 SmallestInfiniteSet 类:SmallestInfiniteSet() 初始化 SmallestInfiniteSet 对象以包含 所有 正整数。int popSmallest() 移除 并返回该无限集中的最小整数。void addBack(int num) 如果正整数 …

Kong网关的负载均衡

安装java环境 查询 java安装包 196 yum list java* 安装java8197 yum install -y java-1.8.0-openjdk.x86_64 检验java8是否安装成功。198 java -version2个tomcat准备 另外一个tomcat区别在于:配置文件。conf/server.xml 启动tomcat [rootlocalhost bin]# ./…

如何在.htaccess文件创建一个自定义404页面

本周有一个客户,购买Hostease的虚拟主机,询问我们的在线客服,如何在.htaccess文件创建一个自定义404页面?我们为用户提供相关教程,用户很快解决了遇到的问题。在此,我们分享这个操作教程,希望可…

手摸手教你uniapp原生插件开发

行有余力,心无恐惧 这篇技术文章写了得有两三个礼拜,虽然最近各种事情,工作上的生活上的,但是感觉还是有很多时间被浪费.还记得几年前曾经有一段时间7点多起床运动,然后工作学习,看书提升认知.现在我都要佩服那会儿的自己.如果想回到那种状态,我觉得需要有三个重要的条件. 其…

错误记录:从把项目从Tomcat8.5.37转到Tomcat10.1.7

错误信息:在本地Servlet项目里没有报错,但是浏览器跳转该servlet时报错 型 异常报告 消息 实例化Servlet类[com.wangdao.lx.MyServlet1]异常 描述 服务器遇到一个意外的情况,阻止它完成请求。 例外情况 jakarta.servlet.ServletExceptio…

剪映网页版

https://www.capcut.cn/web 免费,免安装,跨平台,视频云合成,简直太好用了!

在Windows 10中,如何利用命令提示符删除应用程序

如果你使用的是Windows 10,并且需要释放一些磁盘空间,你可以直接从命令提示符卸载不再使用的应用程序。以下是操作方法。 首先,你必须以管理员身份运行命令提示符才能卸载程序。在“Windows搜索”框中,键入“cmd”或“命令提示符…

比较kube-proxy模式:iptables还是IPVS?

kube-proxy是任何 Kubernetes 部署中的关键组件。它的作用是将流向服务(通过集群 IP 和节点端口)的流量负载均衡到正确的后端pod。kube-proxy可以运行在三种模式之一,每种模式都使用不同的数据平面技术来实现:userspace、iptables…

非线性优化:高斯-牛顿法的原理与实现

非线性优化:高斯-牛顿法的原理与实现 引言 在实际应用中,很多问题都是非线性的。非线性优化问题广泛应用于机器学习、数据拟合、工程设计等领域。高斯-牛顿法是一种常用于解决非线性最小二乘问题的迭代算法。本文将详细介绍高斯-牛顿法的原理、推导过程…

LORA微调,让大模型更平易近人

技术背景 最近和大模型一起爆火的,还有大模型的微调方法。 这类方法只用很少的数据,就能让大模型在原本表现没那么好的下游任务中“脱颖而出”,成为这个任务的专家。 而其中最火的大模型微调方法,又要属LoRA。 增加数据量和模…

力扣:104. 二叉树的最大深度

104. 二叉树的最大深度 给定一个二叉树 root ,返回其最大深度。 二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。 示例 1: 输入:root [3,9,20,null,null,15,7] 输出:3示例 2: 输入&#xff1a…

【STL】C++ stack(栈) 基本使用

目录 一 stack常见构造 1 空容器构造函数(默认构造函数) 2. 使用指定容器构造 3 拷贝构造函数 二 其他操作 1 empty 2 size 3 top 4 push && pop 5 emplace 6 swap 三 总结 一 stack常见构造 1 空容器构造函数(默认构造…

Vue 前端加框 给div加红色框框 js实现

实现方式&#xff1a;用getElementsByClassName、createElement、appendChild实现在原有div上添加一个新的div&#xff0c;从而达到框选效果 <template><div><el-button click"addIten">添加</el-button><el-button click"deleteIt…

ARM-V9 RME(Realm Management Extension)系统架构之系统能力的内存隔离和保护

安全之安全(security)博客目录导读 目录 一、内存隔离和保护 1、颗粒PAS过滤Granular PAS filtering 2、Cache的一致性维护 2.1 物理别名点 Point of Physical Aliasing (PoPA) 2.2 加密点 3、内存(DRAM)保护 3.1 内存加密和完整性 3.2 DRAM scrubbing 本博客探讨 RME…