
NotaGen
NotaGen簡介
NotaGen 是什么?
NotaGen 是由中央音樂學院、北京航空航天大學和清華大學等機構聯合開發的一款AI音樂生成模型,專注于生成高質量的古典樂譜。它通過模仿大型語言模型(LLM)的訓練范式,能夠生成高質量的古典樂譜。
NotaGen 核心特點
高質量古典樂譜生成
NotaGen 能夠根據用戶指定的時期(如巴洛克、古典、浪漫)、作曲家(如巴赫、莫扎特、肖邦)和樂器(如鍵盤、弦樂四重奏、管弦樂)生成符合特定風格的樂譜。
先進的訓練范式
預訓練:在超過160萬首樂曲上進行預訓練,學習音樂的基本結構和模式。
微調:基于約9000首高質量古典作品進行微調,增強對特定風格和作曲家的理解。
強化學習:通過 CLaMP-DPO 方法優化生成音樂的質量和可控性,無需人工標注或預定義獎勵。
多模態數據表示
NotaGen 使用 交錯的 ABC 符號表示法(Interleaved ABC Notation),將不同聲部的音符重新排列到一行中,并通過聲部指示符 [V:] 區分。這種表示法能夠靈活處理多軌音樂和復雜樂譜。
模型架構
NotaGen 采用 Tunesformer 架構,包含兩個層次的 GPT-2 解碼器:patch-level decoder 和 character-level decoder。通過 patch-level decoder 捕獲 patch 之間的時間關系,然后將隱藏狀態傳遞給 character-level decoder,自回歸地預測下一個 patch 的字符。
生成樣本
NotaGen 提供了多種風格的生成樣本,包括鍵盤、室內樂、管弦樂、藝術歌曲、合唱和聲樂管弦樂等。此外,還嘗試了流行音樂風格的生成。
NotaGen 技術
數據表示:采用交錯的 ABC 符號表示法,支持多軌音樂和復雜樂譜。
模型架構:基于 Tunesformer,包含 patch-level 和 character-level 解碼器。
訓練范式:
預訓練:在 160 萬首樂曲上進行預訓練。
微調:在 9000 首高質量古典樂譜上進行微調,涵蓋 152 位作曲家。
強化學習:通過 CLaMP-DPO 方法優化生成音樂的質量和可控性。
NotaGen 實驗與評估
主觀 A/B 測試:NotaGen 在生成音樂的質量上優于基線模型,接近人類作曲水平。
CLaMP-DPO 方法:通過對比學習模型 CLaMP2 提供的反饋,優化生成音樂的質量,無需人工標注或預定義獎勵。
NotaGen 使用場景
專業作曲家:作為靈感工具,快速生成高質量樂譜。
音樂愛好者:降低音樂創作門檻,提供個性化創作支持。
音樂教育:作為教學工具,幫助學生理解不同風格和時期的音樂特點。
項目主頁:https://electricalexis.github.io/notagen-demo
GitHub倉庫:https://github.com/ElectricAlexis/NotaGen
論文:https://arxiv.org/pdf/2502.18008