NotaGen

AI工具3天前更新 AI工具集
136 0 0

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

NotaGen 是一个由音乐学院、北京航空航天大学和清华大学等多家机构共同开发的音乐生成模型。该模型灵感来源于大型语言模型(LLM)的训练方法,旨在生成高质量的古典乐谱。NotaGen 采用预训练、微调和强化学习相结合的方式,其预训练阶段使用了超过160万首乐曲,而微调阶段则基于大约9000首优质古典作品,通过“时期-作曲家-乐器”的提示进行条件生成。通过引入 CLaMP-DPO 方法,NotaGen 在强化学习阶段对生成的音乐进行优化,无需人工标注,显著提升了音乐的艺术性和可控性。

NotaGen是什么

NotaGen 是一个创新的音乐生成模型,由音乐学院、北京航空航天大学和清华大学等高等院校研发,专注于高质量古典乐谱的自动生成。模型通过模仿大型语言模型的训练方式,结合预训练、微调和强化学习的策略,使得生成的音乐作品不仅风格多样且质量上乘。NotaGen 在预训练阶段吸收了超过160万首乐曲的知识,随后在约9000首高质量古典作品上进行微调,以确保模型能够生成符合特定音乐风格的乐谱。此外,通过强化学习的技术,NotaGen 在生成音乐的过程中能够自我优化,大幅提升作品的音乐性和表现力。

NotaGen

NotaGen的主要功能

  • 生成高质量古典乐谱:用户可以根据所选的时期(如巴洛克、古典、浪漫)、作曲家(如、莫扎特、肖邦)和乐器(如键盘、弦乐四重奏、管弦乐)生成符合特定风格的乐谱。
  • 提升音乐性:通过综合预训练、微调和强化学习,NotaGen 能够生成旋律优美、和声流畅、结构严谨的音乐作品。
  • 可控性生成:用户可以通过“时期-作曲家-乐器”等条件提示,灵活控制生成音乐的风格和特色。
  • 支持多种模型规模:提供多种参数规模的模型(如 NotaGen-small、NotaGen-medium 和 NotaGen-large),以适应不同硬件配置和应用需求。

NotaGen的技术原理

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

NotaGen的项目地址

NotaGen的应用场景

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

常见问题

  • NotaGen是否支持多种音乐风格? 是的,NotaGen 可以根据用户输入的时期和作曲家生成多种风格的音乐。
  • 我可以使用NotaGen生成自定义乐谱吗? 是的,用户可以通过条件提示来定制生成的乐谱。
  • NotaGen的生成速度如何? 生成速度取决于所选的模型规模和硬件配置,但总体上能够快速生成高质量的乐谱。
  • 如何获取NotaGen? 您可以通过项目官网、GitHub仓库和HuggingFace模型库获取 NotaGen。
阅读原文
© 版权声明

相关文章

暂无评论

暂无评论...