开源模型、单卡训练,带你了解爆火的文本指导音频生成技术AudioLDM
给出一段文字,人工智能就可以生成音乐,语音,各种音效,甚至是想象的声音,比如黑洞和激光枪。最近由英国萨里大学和帝国理工学院联合推出的AudioLDM,在发布之后迅速火遍国外,一周内在推特上收获了近 300 次的转发和 1500 次的点赞。在模型开源第二天,AudioLDM就冲上了 Hugging Face 热搜榜第一名,并在一周内进入了 Hugging Face 最受喜欢的前 40 名应用榜单(共约 25000),也迅速出现了很多基于 AudioLDM 的衍生工作。
AudioLDM 模型有如下几个亮点:
- 首个同时可以从文本生成音乐,语音和音效的开源模型。
- 由学术界开发,用更少的数据,单个 GPU,以及更小的模型,实现了目前最好的效果。
- 提出用自监督的方式训练生成模型,使文本指导音频生成不再受限于(文本-音频)数据对缺失的问题。
- 模型在不做额外训练的情况下(zero-shot),可以实现音频风格的迁移,音频缺失填充,和音频超分辨率。
- 项目主页:https://audioldm.github.io/
- 论文:https://arxiv.org/abs/2301.12503
- 开源代码和模型:https://github.com/haoheliu/AudioLDM
- Hugging Face Space:https://huggingface.co/spaces/haoheliu/audioldm-text-to-audio-generation
作者首先在一月二十七日发布了对模型的预告,展示了非常简单的一个文本:”A music made by []” (一段由【】生成的音乐) 去生成不同声音的效果。视频展示了由不同乐器,甚至是蚊子制作的音乐,在推特上迅速受到了广泛关注,播放次数超过 35.4K 次,被转发了 130 余次。
随后作者公开了论文和一个新的视频。这个视频中作者展示了模型的大部分能力,以及和 ChatGPT 合作去生成声音的效果。AudioLDM 甚至可以生成外太空的声音。
随后作者发布了论文,预训练的模型,和一个可玩的接口,点燃了推特网友们的热情,在第二天就迅速登上了 Hugging Face 热搜榜的第一名:
推特上这篇工作受到了广泛的关注,业内学者们纷纷转发和评价:
网友们使用 AudioLDM 生成了各种各样的声音。
比如有生成二次元猫娘打呼噜的声音:
以及鬼魂的声音:
还有网友合成出了:“木乃伊的声音,低频,有一些痛苦的呻吟声”。
甚至还有网友合成出了:“有旋律的放屁声”。
不得不感叹网友们想象力之丰富。
还有网友直接用 AudioLDM 生成了一系列的音乐专辑,有各种不同的风格,包括爵士,放克,电子和古典等类型。一些音乐颇有创造性。
比如 “以宇宙和月球为主题创作一个氛围音乐”:
以及 “使用未来的声音创作一个音乐”:
感兴趣的读者可以访问这个音乐专辑网站:https://www.latent.store/albums
也有网友发挥想象力,结合图片生成文字的模型和 AudioLDM,制作了一个图片指导音效生成的应用。
比如说如果给 AudioLDM 这样的文本:”A dog running in the water with a frisbee” (一个在水中奔跑并叼着飞盘的狗狗):
可以生成如下狗狗拍打水面的声音。
甚至可以还原老照片中的声音,比如下边这个图片:
在获得 “A man and a woman sitting at a bar”(一个男人和一个女人坐在酒吧中)的文本后,模型可以生成如下的声音,可以听到模糊的说话声,以及背景酒杯碰撞的声音。
还有网友用 AudioLDM 生成了火焰狗狗的声音,非常有趣。
作者还制作了一个视频来展示模型在音效上的生成能力,展示了 AudioLDM 生成样本接近音效库的效果。
事实上文本生成音频只是 AudioLDM 的能力的一部分,AudioLDM 同样可以实现音色转换、缺失填补和超分辨率。
下边这两张图展示了(1)打击乐到氛围音乐;以及(2)小号到小朋友的歌声的音色转换。
下边是打击乐到氛围音乐(渐进的转换强度)的效果。
小号的声音转化为小朋友唱歌的声音(渐进的转换强度)的效果。
下边我们将会展示模型在音频超分辨率,音频缺失填充和发声材料控制上的效果。由于文章篇幅有限,音频主要用频谱图的方式展示,感兴趣的读者请前往 AudioLDM 的项目主页查看:https://audioldm.github.io/
在音频超分上,AudioLDM 的效果也是非常优秀,相比之前的超分辨率模型,AudioLDM 是通用的超分辨率模型,不仅限于处理音乐和语音。
在音频缺失填充上,AudioLDM 可以根据给定文本的不同填入不同的音频内容,并且在边界处过渡比较自然。
此外,AudioLDM 还展现出了很强的控制能力,例如对声学环境,音乐的情绪和速度,物体材料,音调高低以及先后顺序等都有很强的控制能力,感兴趣的读者可以到 AudioLDM 的论文或项目主页查看。
作者在文章中对 AudioLDM 模型做了主观打分和客观指标的评测,结果显示都可以明显超过之前最优的模型:
其中 AudioGen 为 Facebook 在 2022 年十月提出的模型,使用了十个数据集,64 块 GPU 和 285 兆的参数量。与之相比,AudioLDM-S 可以用单独一个数据集,1 块 GPU 和 181 兆的参数量达到更好的效果。
主观打分也可以看出 AudioLDM 明显优于之前的方案 DiffSound。那么,AudioLDM 究竟做了哪些改进使得模型有如此优秀的性能呢?
首先,为了解决文本 – 音频数据对数量太少的问题,作者提出了自监督的方式去训练 AudioLDM。
具体来说,在训练核心模块 LDMs 的时候,作者使用音频自身的 embedding 去作为 LDMs 的 condition 信号,整个流程并不涉及文本的使用(如上图所示)。这种方案基于一对预训练好的音频 – 文本对比学习编码器(CLAP),在 CLAP 原文中 CLAP 展示了很好的泛化能力。AudioLDM 利用了 CLAP 优秀的泛化能力,达到了在不需要文本标签情况下在大规模音频数据上的模型训练。
事实上,作者发现单使用音频训练甚至能比使用音频 – 文本数据对更好:
作者分析了两方面原因:(1)文本标注本身难以包括音频的所有信息,比如声学环境,频率分布等,从而导致文本的 embedding 不能很好表征音频,(2)文本本身的质量并不完美,例如这样的一个标注 “Boats: Battleships-5.25 conveyor space”,这种标注即使人类也很难想象具体是什么声音,就会导致模型训练的问题。相比之下,使用音频自身做 LDM 的 condition 可以保证目标音频和 condition 的强关联性,从而达到更好的生成效果。
除此之外,作者采用的 Latent Diffusion 方案使得 Diffusion 模型可以在一个较小的空间中进行计算,从而大大的减少了模型对算力的要求。
在模型训练和结构上的许多细节探索也帮助 AudioLDM 获得了优秀的性能。
作者还画了一个简单的结构图来介绍了两种主要的下游任务:
作者还在不同的模型结构,模型大小,DDIM 采样步数以及不同 Classifier-free Guidance Scale 做了详尽的实验。
在公开模型的同时,作者还公开了他们的生成模型评价体系的代码库,以统一今后学术界在这类问题上的评价方法,从而方便论文之间的比较,代码在如下链接中:https://github.com/haoheliu/audioldm_eval
在这项技术爆火的同时,也有网友对技术的安全性提出了质疑:
作者的团队表示会对模型的使用尤其是商用加以限制,保证模型仅被用来学术交流,并使用合适的 LICENSE 和水印保护,防止 Ethic 方面问题的出现。
作者信息
论文有两位共同一作:刘濠赫(英国萨里大学)和陈泽华(英国帝国理工学院)。
刘濠赫目前博士就读于英国萨里大学,师从 Mark D. Plumbley 教授。其开源项目在 GitHub 上收获了上千star。在各大学术会议上发表论文二十余篇,并在多项世界机器声学大赛中获得前三的名次。在企业界与微软,字节跳动,英国广播公司等有广泛的合作,个人主页: https://www.surrey.ac.uk/people/haohe-liu
陈泽华是英国帝国理工学院在读博士生,师从 Danilo Mandic 教授,曾在微软语音合成研究组及京东人工智能实验室实习,研究兴趣涉及生成模型、语音合成、生物电信号生成。