NotaGen – 中央音乐学院联合北航、清华等推出的音乐生成模型

AI工具2周前发布 ainav
33 0

NotaGen是什么

NotaGen 是中央音乐学院、北京航空航天大学、清华大学等机构推出的音乐生成模型,基于模仿大型语言模型(LLM)的训练范式生成高质量的古典乐谱。NotaGen 基于预训练、微调和强化学习相结合的方法,预训练阶段用超过160万首乐曲,微调阶段基于约9000首高质量古典作品,基于“时期-作曲家-乐器”提示进行条件生成。在强化学习阶段,NotaGen 引入 CLaMP-DPO 方法,对比学习模型 CLaMP² 为生成的音乐提供反馈,优化音乐性与可控性,无需人工标注或预定义奖励。NotaGen 在主观 A/B 测试中优于基线模型,接近人类作品的音乐美感,显著提升符号音乐生成的艺术性。

NotaGen – 中央音乐学院联合北航、清华等推出的音乐生成模型

NotaGen的主要功能

  • 生成高质量古典乐谱:根据用户指定的时期(如巴洛克、古典、浪漫)、作曲家(如巴赫、莫扎特、肖邦)和乐器(如键盘、弦乐四重奏、管弦乐)生成符合特定风格的乐谱。
  • 提升音乐性:基于预训练、微调和强化学习相结合的方式,生成具有高度音乐性(如旋律优美、和声流畅、结构连贯)的作品。
  • 可控性生成:用户用“时期-作曲家-乐器”等条件提示,控制生成音乐的风格和特点。
  • 支持多种模型规模:提供不同参数规模的模型(如 NotaGen-small、NotaGen-medium 和 NotaGen-large),适应不同的硬件和应用场景。

NotaGen的技术原理

  • 预训练:在超过160万首乐曲上进行预训练,涵盖多种风格和乐器。基于大规模数据学习音乐的基本结构和模式,类似于语言模型中的“语言理解”阶段。用符号音乐表示(如 ABC 符号)进行编码,预测下一个符号的任务进行训练。
  • 微调:在约9000首高质量古典作品上进行微调,针对特定风格(如巴洛克、古典、浪漫)和作曲家进行优化,生成符合特定风格的音乐。用“时期-作曲家-乐器”提示进行条件生成,增强模型对特定风格的理解和生成能力。
  • 强化学习:基于 CLaMP-DPO(Contrastive Language-Music Pretraining with Direct Preference Optimization)方法,对比学习模型 CLaMP² 提供反馈,优化生成音乐的质量和一致性,无需人工标注或预定义奖励。生成的音乐样本根据 CLaMP² 的评分被分为“选择”和“拒绝”两类,基于 DPO 算法优化模型,提升生成音乐的音乐性和可控性。
  • 符号音乐表示:用 ABC 符号表示乐谱,简化编码和生成过程,支持多声部音乐的生成。基于去除全休止符、添加小节索引等方法优化数据,提升生成效率和质量。
  • 模型架构:基于层次化的 Transformer 解码器,包括 patch-level decoder 和 character-level decoder,分别处理音乐片段和符号生成。结合 CLaMP² 提供的多模态反馈,优化生成音乐的全局特征(如风格、和声、结构)。

NotaGen的项目地址

  • 项目官网:https://electricalexis.github.io/notagen
  • GitHub仓库:https://github.com/ElectricAlexis/NotaGen
  • HuggingFace模型库:https://huggingface.co/ElectricAlexis/NotaGen
  • arXiv技术论文:https://arxiv.org/pdf/2502.18008

NotaGen的应用场景

  • 音乐创作辅助:为作曲家提供灵感,快速生成符合特定风格的乐谱草稿,节省创作时间。
  • 音乐教育:帮助学生理解不同音乐时期的风格特点,生成教学用乐谱。
  • 音乐制作:为影视、游戏等快速生成背景音乐或配乐,提升制作效率。
  • 音乐表演:生成高质量乐谱,供乐团、合唱团等排练或演出使用。
  • 音乐娱乐:基于互动式演示,让用户实时生成音乐,体验创作乐趣。
© 版权声明

相关文章