![[CLAP] 语音和文本对比学习模型](https://aisholar.s3.ap-northeast-1.amazonaws.com/media/December2023/clap_2_.png)
[CLAP] 语音和文本对比学习模型
三个要点
✔️ 引入语音和文本对比学习模型
✔️ 还提供大型字幕语音数据集
✔️ 在文本到音频搜索和语音分类中实现 SoTA
Large-scale Contrastive Language-Audio Pretraining with Feature Fusion and Keyword-to-Caption Augmentation
written by Yusong Wu, Ke Chen, Tianyu Zhang, Yuchen Hui, Taylor Berg-Kirkpatrick, Shlomo Dubnov
(Submitted on 12 Nov 2022 (v1), last revised 8 Apr 2023 (this version, v3))
Comments: Published on arxiv.
Subjects: Sound (cs.SD); Audio and Speech Processing (eess.AS)
code:![]()
![]()
本文所使用的图片要么来自论文、介绍性幻灯片,要么是参考这些图片制作的。
介绍
最近,在图像领域提出了一种对比学习模型,称为对比语言-图像预训练(CLIP)。通过将文本和图像投射到共享的潜在空间并学习它们之间的对应关系,该技术可应用于文本到图像和图像到文本。
本研究中的对比语言-音频预训练(CLAP)模型将这一 CLIP 应用于语音领域。
在这里,除了文本和图像,语音也是最重要的模式之一。因此,人们越来越需要能够捕捉语音数据信息而无需大量数据的模型。
以前的研究曾提出过语音和文本之间的对比学习,但都不全面。造成这种情况的四个主要直接原因是
- 缺乏配对语音和文本数据。
- 编码器和型号选择不当。
- 难以处理不同长度的音频数据。
- 对下游任务缺乏通用性(仅限文本到音频)
这项研究通过建立大型数据集和对比学习模型来解决这些问题。
首先,我们介绍本研究构建的数据集 LAION-Audio-630K。
构建大规模数据集 LAION-Audio-630K
为了克服语音和文本配对数据缺乏的问题,作者采用独特的方法建立了一个数据集 LAION-Audio-630K,用于训练模型。该数据集共包含约 633,526 个数据(总计 4,325.39 小时),是本文发表时规模最大的数据集。
下表比较了之前发布的数据集和 LAION-Audio-630K 的大小。
最初,我们从八个公开来源收集了包含 "人类活动"、"自然声音 "和 "声音效果 "的音频数据以及相关的文字描述。
有关每个来源的信息和获得的数据见下表。
下图还显示了上述音源 "Epidemic Sound "和 "Freesound "中音频数据 "数据长度 "的分布情况。
从这一分布可以看出,就语音而言,不同数据集的长度存在差异。这种高变异性是导致学习困难的一个因素。就图像而言,如果用于训练的所有图像数据大小一致,就不会有问题,但就音频而言,则需要一些巧妙的方法。
CLAP 的模型结构
本节介绍 CLAP 的模型结构。模型结构如下
首先,原始音频和文本数据分别由以下编码器嵌入
音频编码器 | 文本编码器 |
---|---|
PANN(基于 CNN 的模型) ... HTSAT(基于变压器)。 |
CLIP 转换器(CLIP 文本编码器)。 伯特 RoBERTa. |
对于上述编码器获取的嵌入信息,应用 MLP 可获得相同维度的 "音频嵌入信息 Ea"和 "文本嵌入信息 Et"。
然后,使用 Ea 和Et对每对数据进行训练,以最小化以下损失函数。
其中,$\tau$ 代表温度参数,该参数通过训练得到优化。如果模型完全优化,矩阵应该如下所示
对角线分量表示每对 E 的余弦相似度为 1,即它们具有相同的含义。换句话说,"同一对语音和文本之间的距离(对角线分量)"被学习得更近,而 "不同对语音和文本之间的距离(非对角线分量)"被学习得更远。
当然,几乎不可能出现同一对同余弦相似度完全为 1 的情况。
学习到的 CLAP 可用于
来源:https://github.com/microsoft/CLAP
要进行文本到音频检索,请按以下步骤操作。
- 输入文本查询并由文本编码器嵌入
- 将所有音频数据嵌入音频数据库,并计算嵌入文本的余弦相似度。
- 提取余弦相似度最高的音频嵌入。
通过此程序,您可以在数据库中搜索与查询文本相对应的音频。
设计音频和文本数据。
在这里,输入模型的每个数据都要经过特殊处理。
・音频数据
RGB 图像数据可按统一分辨率调整大小,而音频则不同,它具有长度可变的特性。传统上,整个音频输入到音频编码器,编码器输出每帧或每块(切片和表决)音频嵌入量的平均值。
不过,对于长音频来说,这种方法的计算效率较低。
因此,本研究结合了粗略的全局信息和随机采样的局部信息,在计算时间不变的情况下对不同长度的语音输入进行学习和推理。
・文本数据
有些数据集包含标签或标记,作为相应语音的关键词。
如下图所示,通过 "关键词到标题(标签到标题)"生成标题,使用预先训练好的 T5 在这些关键词上创建标题,从而对数据进行扩充。
使用 T5 从关键词到标题生成标题的示例如下。
简而言之,您只需输入几个关键词,T5 就会生成包含这些关键词的自然句子。
由此生成的文本被用作训练数据。
评估测试
首先,为了探索最佳编码器组合,我们测试了两种不同音频编码器和三种不同文本编码器的文本-音频和音频-文本组合。
结果如下
从结果可以看出,使用 "HTSAT "作为语音编码器时,准确率最高,而使用 "RoBERTa "或 "BERT "作为文本编码器时,准确率往往更高。
在随后的 "文本到音频对比实验 "中,使用了 HTSAT-RoBERTa 组合。
继续进行文本到音频的对比实验,结果如下。
此外,语音分类实验还显示了以下结果。
这些结果表明,CLAP 在文本到音频和音频分类等任务中实现了 SoTA。
以下是两个要点。
- 语音和文本编码器之间的选择对模型性能的影响点。
- 模型在不同数据集上的泛化性能以及所展示的权衡结果
摘要
本研究中的 CLAP 可应用于各种下游任务,如声源分离和音频字幕。
顺便提一下,即使在撰写本文时,也已经发表了许多使用 CLAP 进行语音生成的研究。因此,预计这项研究今后在语音和多模态研究领域仍将发挥重要作用,敬请关注。
与本文相关的类别