只給一張圖,AI找到對應合適BGM,央音清華等構建全球化音樂信息檢索新范式
給AI看一眼圖,它就能找到對應音樂。
比如一艘海上航行的海盜船,啪一下,就檢索到了加勒比海盜經典配樂。
音樂信息檢索(Music Information Retrieval, MIR)一直面臨著多模態數據的復雜性和多語言文本理解的挑戰。
當前的MIR系統主要關注特定模態對(如文本-音頻或文本-樂譜),限制了跨模態理解的潛力。
同時,現有的數據集主要以英語為主,缺乏多語言覆蓋,導致MIR在非英語環境下的泛化能力受限。
為此,來自中央音樂學院、清華大學、香港科技大學大學、上海紐約大學等機構的研究者推出CLaMP 3(Contrastive Language-Music Pre-training)——一個跨模態、跨語言的統一音樂信息檢索框架。
通過對比學習,CLaMP 3首次實現了樂譜、演奏信號、音頻錄音等音樂模態與多語言文本的聯合對齊,使得不同模態之間可以通過文本橋接進行高效檢索。其多語言文本編碼器能夠適應從未見過的語言,在跨語言檢索任務上表現卓越。
CLaMP3基于檢索增強生成(Retrieval-Augmented Generation, RAG)策略,構建了規模達到2.31M音樂-文本對的M4-RAG數據集,并結合詳細的音樂元數據,覆蓋27種語言、194個國家的音樂文化。此外,研究團隊還推出了WikiMT-X,一個由樂譜、音頻和多樣化文本描述組成的1000個樣本的基準數據集,推動跨模態音樂理解的研究。
實驗結果表明,CLaMP 3在多個MIR任務上取得了當前最優性能,不僅大幅超越已有基線模型,還在跨模態、跨語言的檢索任務中展現了卓越的泛化能力。
圖1:CLaMP 3展現出強大的跨模態和跨語言泛化能力。監督對齊(實線箭頭)連接成對的模態,而涌現對齊(虛線箭頭)則彌合未對齊的模態。多語言文本編碼器使得在對齊過程中未見(灰色氣泡)的語言中也能進行檢索。
動機:MIR需要真正的跨模態、跨語言對齊
音樂是全球性的,但MIR的發展仍然面臨以下關鍵問題:
- 多模態數據對齊難度高:樂譜、MIDI(演奏信號)、音頻各自有獨特的數據表示方式,傳統方法難以統一處理不同模態。
- 多語言音樂信息檢索受限:現有數據集以英語為主,缺乏對其他語言的覆蓋,導致MIR模型難以泛化到全球音樂語境。
- 缺乏高質量的多模態-多語言數據:音樂文本數據多為簡短的標簽,缺乏詳細的長文本描述,限制了MIR系統的理解能力。
為解決上述問題,CLaMP 3構建了一個通用的跨模態-跨語言檢索框架,通過對比學習構建共享表示空間,使得不同模態的音樂數據可以在無配對訓練數據的情況下進行檢索。
方法:對比學習+檢索增強生成,構建統一音樂表示空間
CLaMP 3采用對比學習(Contrastive Learning)作為核心優化目標,通過多階段訓練策略對齊不同模態,并利用檢索增強生成(RAG)擴展高質量音樂-文本數據。
圖2:CLaMP 3采用對比學習來對齊不同模態的特征。樂譜和演奏信號被分割為單元(小節或MIDI消息),并由符號音樂編碼器處理,而音頻則被分割為5秒片段,并通過音頻特征提取器和音頻音樂編碼器處理。符號和音頻表示均與來自多語言文本編碼器的文本表示對齊。
訓練策略:多階段模態對齊
CLaMP 3的訓練策略借鑒了ImageBind的思想,采用四階段跨模態對齊:
- 文本與樂譜對齊:訓練文本編碼器與樂譜編碼器。
- 文本與音頻對齊:凍結文本編碼器,訓練音頻編碼器。
- 優化文本對齊:解凍文本編碼器,細調文本-音頻對齊。
- 修正跨模態漂移:重新對齊文本-樂譜,以減少前一階段的對齊偏差。
這一策略確保了所有模態最終映射到統一的表示空間,避免模態漂移問題。
核心組件:多模態Transformer編碼器
CLaMP 3由多個基于Transformer的編碼器組成,每個編碼器針對不同模態進行處理,以確保跨模態對齊和信息融合。
多語言文本編碼器
CLaMP 3的文本編碼器基于XLM-R-base,一個預訓練于2.5TB CommonCrawl數據的模型,涵蓋100種語言。該編碼器具有12層Transformer,隱藏維度為768,具備強大的跨語言泛化能力,可用于處理未見語言的數據。
符號音樂編碼器
CLaMP 3采用M3作為符號音樂編碼器,它是一種自監督學習模型,可處理多軌ABC記譜格式和MIDI。
- 輸入格式:ABC以小節(bar)為單位分割,MIDI以消息(message)為單位分割。
- 模型結構:12層Transformer,隱藏層大小768。
- 處理能力:支持512個片段(patches)或32,768個字符,可捕捉復雜的符號音樂模式。
音頻音樂編碼器
CLaMP 3的音頻編碼器是一個12層Transformer,隱藏維度同樣為768,專為音樂音頻處理而訓練。
- 特征提取:利用MERT-v1-95M預訓練特征,MERT作為凍結的音頻特征提取器。
- 輸入單位:將音頻分割為5秒片段,并計算所有MERT層的時間步均值,生成單個嵌入向量。
- 處理能力:最多支持128個嵌入向量(對應640秒音頻),能夠建模長時音樂特征。
統一表示空間
所有編碼器的輸出都經過線性層和平均池化(average pooling)處理,最終生成全局語義特征,確保不同模態數據在共享表示空間中對齊。
數據集:M4-RAG
CLaMP 3的訓練依賴于大規模的高質量多模態多語言音樂數據集M4-RAG。
數據來源
CLaMP 3結合符號音樂數據和音頻音樂數據以構建多模態學習基礎:
- 符號音樂數據:
- WebMusicText(WebMT):1.4M ABC記譜文件。
- Million MIDI Dataset(MMD):1.5M MIDI文件。
- 數據轉換:MMD轉換為ABC,WebMT轉換為MIDI,最終形成3M統一格式的符號音樂數據。
- 音頻音樂數據:
- 從網絡收集1.8M音軌,總計16萬小時音頻,并預提取音頻特征以減少計算成本。
元數據處理
CLaMP 3依賴音樂標題(Title)作為主要檢索信號,通過檢索增強生成(RAG)從Web獲取豐富的元數據,包括風格、標簽、背景信息等,最終借助Qwen2.5-72B構建M4-RAG:
- 數據量:2.31M元數據條目。
- 音樂-文本對齊:
- ABC-文本:0.58M
- MIDI-文本:0.17M
- 音頻-文本:1.56M
元數據涵蓋短文本(如流派、標簽)和長文本(如背景介紹、音樂分析),提供全面的音樂描述信息。
表1:M4-RAG的元數據概覽,按基本信息、注釋和翻譯進行分類。在注釋(Annotations)部分,地區(Region)和語言(Language)以英語書寫,其他字段遵循對應的語言規范。
語言&地理覆蓋
M4-RAG涵蓋27種語言,其中大部分元數據原始語言為英語。
翻譯增強:使用Qwen2.5-72B進行翻譯,增加低資源語言的數據量(如馬來語、緬甸語)。
全球覆蓋:數據來源于194個國家,涵蓋主流音樂市場及多樣化的地域音樂風格。
圖3:M4-RAG中原始數據和翻譯數據的語言分布,覆蓋27種語言。
圖4:M4-RAG中音樂曲目的國家分布,涵蓋194個國家。
實驗:CLaMP 3在跨模態、跨語言檢索上超越現有SOTA
CLaMP 3在多個MIR任務上取得了當前最優(SOTA)性能,相比前代CLaMP 2和其他基線模型,如CLAP、TTMR++,有顯著提升。
跨模態音樂檢索
在文本-音頻、文本-樂譜等任務上,CLaMP 3在WikiMT-X、MidiCaps、MusicCaps-Remake等基準數據集上的MRR(Mean Reciprocal Rank)均超越基線:
- 文本-ABC檢索:MRR 0.4498(提升>10%)
- 文本-音頻檢索:MRR 0.1985(超越CLAP與TTMR++)
表2:英文文本到音樂檢索任務的結果,涵蓋多個基準數據集。WikiMT和MidiCaps各包含1,010對樣本,Song Describer Dataset(SDD)包含706個音頻和1,106條文本描述,MusicCaps-Remake(MC-R)包含2,777對樣本。MC-R通過使用完整音頻和來自AudioSet評估集的重寫文本描述,避免了數據泄漏。
跨語言音樂檢索
在非英語文本到音樂的檢索任務中,CLaMP 3展現了極強的跨語言泛化能力,即使在訓練集中未見過的語言上,依然能取得優異表現。例如:
- 俄語-樂譜檢索:MRR 0.3614
- 中文-音頻檢索:MRR 0.1459
- 芬蘭語(未見語言)-音頻檢索:MRR 0.1770
表3:多語言文本到音樂檢索任務的結果,基于WikiMT-X翻譯后的背景注釋。標有星號(*)的語言未包含在M4-RAG訓練數據中。每種語言下方的BLEU分數通過SeamlessM4T模型對文本進行回譯,并與原始英語文本進行對比計算。
無配對跨模態檢索
在沒有配對訓練數據的情況下,CLaMP 3依然可以進行跨模態檢索,例如:
- 樂譜→音頻(S→A):MRR 0.0578
- 音頻→樂譜(A→S):MRR 0.0492
表4:WikiMT-X不同音樂模態配對的涌現跨模態檢索結果。S:樂譜(ABC記譜)、P:演奏信號(MIDI,由ABC轉換)、A:音頻錄音。
結論:CLaMP 3開啟跨模態、跨語言MIR新時代
CLaMP 3首次實現了樂譜、演奏信號、音頻與多語言文本的統一表示學習,突破了MIR的跨模態與跨語言限制。
項目主頁:https://sanderwood.github.io/clamp3
在線Demo:https://huggingface.co/spaces/sander-wood/clamp3
GitHub代碼:https://github.com/sanderwood/clamp3