直接在 Mel 谱图上以自我监督的方式训练基于变压器的模型(例如 GPT)是否现实?

人工智能 变压器 gpt 音频处理 嵌入 自监督学习
2021-10-31 03:05:53

在音乐信息检索中,通常将音频信号转换为某种“频率向量序列”,例如 STFT 或 Mel 频谱图。

我想知道以自我监督的方式使用转换器架构是否是一个好主意——例如自回归模型或 NLP 中的 BERT——以获得比频谱图本身“更智能”的音乐表示. 这种智能预训练表示可用于进一步的下游任务。

从我的快速谷歌搜索中,我发现了几篇做类似事情的论文,但是——令我惊讶的是——都使用了某种符号/离散的音乐表示,比如乐谱。(例如这里这里)。

我的问题是这样的:

直接在 Mel 谱图上训练这样一个无监督模型是否现实?

损失函数不是“下一个单词概率的 log softmax”,而是在下一个时间步中“预测的光谱向量”和“观察到的光谱向量”之间的某种 l2 距离。

有人试过吗?

2个回答

大多数音乐生成模型使用离散表示的原因是因为音乐的长期结构很难建模。请注意,MAESTRO中的 MIDI 数据(在您链接的两篇论文中使用)编码的是表演,而不是乐谱,因此它们包括真实表演者的时间和口音——但仍然是离散事件的序列,而不是音频。

有一些直接从音频中学习离散表示的工作,例如使用矢量量化变分自动编码器 (VQ-VAE)通常,自回归模型是在学习表示的基础上训练的;Jukebox为此使用了变压器。顺便说一句,我强烈建议您阅读 Jukebox 论文的“相关工作”部分,以了解有关音频/语音合成任务的工作概述。

wav2vec可能最接近您所描述的内容。他们在原始音频上训练一个变压器,自我监督,以便为语音到文本的任务学习人类语音的良好表示。

至于直接在频谱图上进行训练,有MelNet,这是一种有点异国情调的 RNN,经过训练,可用于各种音频合成任务,包括音乐。

希望这可以帮助!

这些论文也非常接近我在问题中的意思(评论太长了)。

以下参考资料主要来自语音识别方面的工作。

  • Mockingjay在这项工作中,他们使用了由 Mel-spectrogram 提供的 Bert 架构的类比,其中一些音频片段被“屏蔽”。
    • 模型被要求重建蒙面部分。为了避免模型使用音频数据的局部平滑度,它们总是屏蔽几个后续帧,从而屏蔽了相当长的片段。
    • 他们使用学习到的特征对下游的“音素分类任务”进行评估,并表明这些学习到的特征比原始频谱图更强,特别是在可用的训练数据很少的情况下。
  • 音频 Albert同样的故事,但他们在变压器层中使用共享权重。这显着降低了内存和计算要求,并且表明结果与 Mockingjay 相当(至少对于音素分类任务)。
  • ; 另一个 Bert 变体,它们不是屏蔽,而是使用某些音频片段的各种“更改”。
  • 这个和更多的参考在这个项目中的代码