Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
freem
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
训练音乐大模型
(section)
Add languages
Page
Discussion
English
Read
Edit
Edit source
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
Edit source
View history
General
What links here
Related changes
Special pages
Page information
Appearance
move to sidebar
hide
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
=== OpenAI Jukebox === '''OpenAI Jukebox'''(2020年)是音乐生成领域一次划时代的尝试:它直接生成'''原始音乐音频''',包括伴奏和人声演唱 (Jukebox | OpenAI)。Jukebox的开创性在于将文本和元数据条件引入音乐生成,输出完整歌曲片段(数分钟长)的原声波形。 * '''模型结构''':Jukebox采用三级层次的生成框架 (Jukebox | OpenAI)。首先一个'''VQ-VAE'''将音频压缩成离散code:分3层,不同层分辨率不同。然后分别训练三个Transformer '''先验模型''': ** Top-level Transformer:生成最粗摘要级别的code(对应最低采样率表示,捕捉歌曲高层结构),一次可建模约24秒音频信息 (Jukebox | OpenAI)。 ** Middle-level 和 Bottom-level Transformer:条件在上层生成结果的基础上,逐级'''补全细节''',生成中等和高分辨率的code (Jukebox | OpenAI)。这样逐级“放大”音乐信息。 ** 最后通过VQ-VAE解码器将完整code序列重建回波形 (Jukebox | OpenAI)。Transformer使用的是OpenAI改进的'''Sparse Transformer'''变体,72层超深,注意力经过因式分解以降低计算 (Jukebox | OpenAI)。这种架构成功将一个巨大序列建模问题拆解成易于学的分层问题。 * '''条件输入''':Jukebox的一大亮点是结合'''元数据和歌词'''作为条件 (Jukebox | OpenAI) (Jukebox | OpenAI)。训练数据每首歌带有艺术家、流派标签,以及整首歌词文本。Transformer在生成时将这些信息融入,使得生成歌曲可以指定风格和一定的歌词内容。虽然模型没有逐字对齐歌词(因为训练时只有整曲歌词而非逐帧对齐),但通过增加一个歌词编码器与音乐解码器的交叉注意力,模型基本学会了让输出歌曲的声音“听起来”像在唱给定的歌词 (Jukebox | OpenAI) (MusicRL)(只是准确度有限,算是“含糊哼唱”)。 * '''数据与训练''':OpenAI为此爬取了'''120万首歌曲'''(600k英文歌曲)的数据集,包含对应歌词和标签 (Jukebox | OpenAI)。音频采用44.1kHz立体声,32-bit浮点表示,非常高的保真度 (Jukebox | OpenAI)。训练这样规模的数据在当时是空前的。模型训练耗费了巨大算力,据报道完整训练用掉了'''256块GPU跑了3天''' (Transfer Learning with Jukebox for Music Source Separation)(相当于数百万GPU小时)。OpenAI最后开放了部分模型权重(如年代风格通用模型),供开发者下载实验。 * '''效果''':Jukebox生成的音乐在伴奏编曲和音色上达到了相当的真实度,能听出特定风格(如摇滚、流行、爵士) (Jukebox | OpenAI)。尤其是在模仿已知歌手音色方面,尽管歌词含混不清,但听众经常能猜出是在模仿哪位歌手,说明模型抓住了演唱特征。不过,Jukebox输出通常'''混响重、旋律飘忽''',人声还不够清晰。长程结构上因为Transformer上下文有限,大概到1分钟以上会显得有些重复或无明确段落分割。 * '''局限''':Jukebox的最大问题在于'''实用性'''不足:模型巨大(参数超几十亿),生成1分钟音乐需要几分钟甚至更久的计算,无法交互式使用。此外歌词同步效果不理想。OpenAI在发布论文后并未继续改进优化,因此在实际产品中少有直接用Jukebox的。尽管如此,它提供了一个'''端到端音乐生成'''的范例,展示了通过大规模数据+自回归Transformer可以让AI创作带歌词演唱的歌曲 (Jukebox | OpenAI)。 * '''启示''':对于我们而言,Jukebox的成功要素是'''海量数据、高容量模型以及分层生成'''。如果目标包括音频生成,那么类似的VQ-VAE压缩+自回归模型是可行路径。另外其条件生成(风格标签)的做法值得借鉴 (Jukebox | OpenAI)。开源的代码可以帮助理解如此大模型如何组织训练管线、处理并行和优化等。不过要注意,它的计算和存储需求极高,不一定直接复现。我们可以考虑规模缩减的版本,例如只生成单声道或降低采样率,以在可控资源内验证想法。如果只需要音乐的音色质感,可借鉴Jukebox的VQ-VAE表示,把生成问题化简到离散code层面,提高效率。
Summary:
Please note that all contributions to freem are considered to be released under the Creative Commons Attribution-ShareAlike 4.0 (see
Freem:Copyrights
for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource.
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)