NotaGen

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

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

NotaGen的主要功能

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

NotaGen

NotaGen的技术原理

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

相关AI热点

暂无评论

none
暂无评论...