今天小編分享的科技經驗:Meta開源文本生成音樂大模型,我們用《七裡香》歌詞試了下,歡迎閱讀。
機器之心報道
編輯:杜偉、梓文
年初,谷歌推出了音樂生成大模型 MusicLM,效果非常不錯。有人稱這比大火的 ChatGPT 還重要,幾乎解決了音樂生成問題。近日,Meta 也推出了自己的文本音樂生成模型 MusicGen,并且非商業用途免費使用。
在進入正文前,我們先聽兩段 MusicGen 生成的音樂。我們輸入文本描述「a man walks in the rain, come accross a beautiful girl, and they dance happily」
然後嘗試輸入周傑倫《七裡香》歌詞中的前兩句「窗外的麻雀在電線杆上多嘴,你說這一句 很有夏天的感覺」(支持中文)
試玩地址:https://huggingface.co/spaces/facebook/MusicGen
文本到音樂是指在給定文本描述的情況下生成音樂作品的任務,例如「90 年代吉他即興搖滾歌曲」。作為一項具有挑戰性的任務,生成音樂要對長序列進行建模。與語音不同,音樂需要使用全頻譜,這意味着以更高的速率對信号進行采樣,即音樂錄音的标準采樣率為 44.1 kHz 或 48 kHz,而語音的采樣率為 16 kHz。
此外,音樂包含不同樂器的和聲和旋律,這使音樂有着復雜的結構。但由于人類聽眾對不和諧十分敏感,因此對生成音樂的旋律不會有太大容錯率。當然,以多種方法控制生成過程的能力對音樂創作者來說是必不可少的,如鍵、樂器、旋律、流派等。
最近自監督音頻表示學習、序列建模和音頻合成方面的進展,為開發此類模型提供了條件。為了使音頻建模更加容易,最近的研究提出将音頻信号表示為「表示同一信号」的離散 token 流。這使得高質量的音頻生成和有效的音頻建模成為可能。然而這需要聯合建模幾個并行的依賴流。
Kharitonov 等人 [ 2022 ] 、Kreuk 等人 [ 2022 ] 提出采用延遲方法并行建模語音 token 的多流,即在不同流之間引入偏移量。Agostinelli 等人 [ 2023 ] 提出使用不同粒度的多個離散标記序列來表示音樂片段,并使用自回歸模型的層次結構對其進行建模。同時,Donahue 等人 [ 2023 ] 采用了類似的方法,但針對的是演唱到伴奏生成的任務。最近,Wang 等人 [ 2023 ] 提出分兩個階段解決這個問題:限制對第一個 token 流建模。然後應用 post-network 以非自回歸的方式聯合建模其餘的流。
本文中,Meta AI 的研究者提出了 MUSICGEN,這是一種簡單、可控的音樂生成模型,能在給定文本描述的情況下生成高質量的音樂。
論文地址:https://arxiv.org/pdf/2306.05284.pdf
研究者提出一個對多個并行聲學 token 流進行建模的通用框架,作為以前研究的概括 ( 見下圖 1 ) 。為提高生成樣本的可控性,本文還引入了無監督旋律條件,使模型能夠根據給定和聲和旋律生成結構匹配的音樂。本文對 MUSICGEN 進行了廣泛的評估,所提出的方法在很大程度上優于評估基線:MUSICGEN 的主觀評分為 84.8 ( 滿分 100 分 ) ,而最佳基線為 80.5。此外,本文還提供一項消融研究,闡明了每個組件對整體模型性能的重要性。
最後,人工評估表明,MUSICGEN 產生了高質量的樣本,這些樣本在符合文本描述,在旋律上也更好地與給定的和聲結構對齊。
本文的主要貢獻有如下幾點:
提出了一個簡單高效的模型:可以在 32khz 產生高質量的音樂。MUSICGEN 可以通過有效的碼本交錯策略,用單階段語言模型生成一致的音樂;
提出一個單一的模型,進行文本和旋律條件生成,其生成的音頻與提供的旋律是一致的,并符合文本條件信息;
對所提出方法的關鍵設計選擇進行了廣泛的客觀及人工評估。
方法概覽
MUSICGEN 包含一個基于自回歸 transformer 的解碼器,并以文本或旋律表示為條件。該(語言)模型基于 EnCodec 音頻 tokenizer 的量化單元,它從低幀離散表示中提供高保真重建效果。此外部署殘差向量量化(RVQ)的壓縮模型會產生多個并行流。在此設定下,每個流都由來自不同學得碼本的離散 token 組成。
以往的工作提出了一些建模策略來解決這一問題。研究者提出了一種新穎的建模框架,它可以泛化到各種碼本交錯模式。該框架還有幾種變體。基于模式,他們可以充分利用量化音頻 token 的内部結構。最後 MUSICGEN 支持基于文本或旋律的條件生成。
音頻 tokenization
研究者使用了 EnCodec,它是一種卷積自編碼器,具有使用 RVQ 量化的潛在空間和對抗重建損失。給定一個參考音頻随機變量 X ∈ R^d・f_s,其中 d 表示音頻持續時間,f_s 表示采樣率。EnCodec 将該變量編碼為幀率為 f_r ≪ f_s 的連續張量,然後該表示被量化為 Q ∈ {1, . . . , N}^K × d・f_r,其中 K 表示 RVQ 中使用的碼本數量,N 表示碼本大小。
碼本交錯模式
精确扁平化自回歸分解。自回歸模型需要一個離散随機序列 U ∈ {1, . . . , N}^S 和序列長度 S。按照慣例,研究者将采用 U_0 = 0,這是一個确定性的特殊 token,表示序列的開始。然後他們可以對分布進行建模。
不精确的自回歸分解。另一種可能是考慮自回歸分解,其中一些碼本需要進行并行預測。比如定義另一個序列,V_0 = 0,并且 t ∈ {1, . . . , N}, k ∈ {1, . . . , K}, V_t,k = Q_t,k。當删除碼本索引 k 時(如 V_t),這代表了時間為 t 時所有碼本的串聯。
任意碼本交錯模式。為了試驗此類分解,并準确測量使用不精确分解的影響,研究者引入了碼本交錯模式。首先考慮Ω = { ( t, k ) : {1, . . . , d・f_r}, k ∈ {1, . . . , K}},它是所有時間步和碼本索引對的集合。碼本模式是序列 P= ( P_0, P_1, P_2, . . . , P_S ) ,其中 P_0 = ∅ ,,并且 0 < i ≤ S, P_i ⊂ Ω,這樣 P 是Ω的分區。研究者通過并行地預測 P_t 中的所有位置來建模 Q,并以 P_0, P_1, . . . , P_T 中的所有位置為條件。同時考慮到實際效率,他們只選擇了「每個碼本在任何 P_s 中最多出現一次」的模式。
模型條件化
文本條件化。給定與輸入音頻 X 匹配的文本描述,研究者計算條件張量 C ∈ R^T_C × D,其中 D 是自回歸模型中使用的内部維數。
旋律條件化。雖然文本是當今條件生成模型的主要方法,但更自然的音樂方法是以來自另一個音軌甚至口哨或哼唱的旋律結構為條件。這種方法還允許對模型輸出進行迭代優化。為了支持這一點,研究者嘗試通過聯合調節輸入的色譜圖和文本描述來控制旋律結構。再最初的試驗中,他們觀察到以原始色譜圖為條件通常會重建原始樣本,導致過拟合。為此,研究者在每個時間步中選擇主要的時頻 bin 來引入信息瓶頸。
模型架構
碼本投影和位置嵌入。給定一個碼本模式,在每個模式步 P_s 中只有一些碼本的存在。研究者從 Q 中檢索出對應 P_s 中索引的值。每個碼本在 P_s 中最多出現一次或根本不存在。
Transformer 解碼器。輸入被饋入到具有 L 層和 D 維的 transformer 中,每一層都由一個因果自注意力塊組成。然後使用一個跨注意力塊,該塊由條件化信号 C 提供。當使用旋律調節時,研究者将條件化張量 C 作為 transformer 輸入的前綴。
Logits 預測。在模式步 P_s 中,transformer 解碼器的輸出被轉換為 Q 值的 Logits 預測。每個碼本在 P_s+1 中最多出現一次。如果碼本存在,則從 D 通道到 N 應用特定于碼本的線性層來獲得 Logits 預測。
實驗結果
音頻 tokenization 模型。研究對 32 kHz 單聲道音頻使用非因果五層 EnCodec 模型,其步幅為 640,幀率為 50 Hz,初始隐藏大小為 64,在模型的五層中每層都增加一倍。
變壓器模型,研究訓練了不同大小的自回歸 Transformer 模型:300M, 1.5B, 3.3B 參數。
訓練數據集。研究使用 2 萬小時的授權音樂來訓練 MUSICGEN。詳細來說,研究使用了一個包含 10K 個高質量曲目的内部數據集,以及分别包含 25K 和 365K 只有樂器曲目的 ShutterStock 和 Pond5 音樂數據集。
評估數據集。研究在 MusicCaps 基準上對所提出的方法進行了評估,并與之前的工作進行了比較。MusicCaps 是由專家音樂家準備的 5.5K 樣本 ( 10 秒長 ) 和跨流派平衡的 1K 子集組成的。
下表 1 給出了所提方法與 Mousai、Riffusion、MusicLM 和 Noise2Music 的比較。結果表明,在音頻質量和對提供的文本描述的一致性方面,MUSICGEN 的表現優于人類聽眾的評估基線。Noise2Music 在 MusicCaps 上的 FAD 方面表現最好,其次是經過文本條件訓練的 MUSICGEN。有趣的是,添加旋律條件會降低客觀指标,但是并不會顯著影響人類評分,且仍然優于評估的基線。
研究者在給出的評估集上使用客觀和主觀度量,在文本和旋律表示的共同條件下評估 MUSICGEN,結果見下表 2。結果表明,用色譜圖條件化訓練的 MUSICGEN 成功地生成了遵循給定旋律的音樂,從而可以更好地控制生成的輸出。MUSICGEN 對于在推理時使用 OVL 和 REL 丢掉色度具有魯棒性。
碼本交錯模式的影響。研究者使用 2.2 節中的框架評估了各種碼本模式,K = 4,由音頻 tokenization 模型給出。本文在下表 3 中報告了客觀和主觀評價。雖然扁平化改善了生成效果,但它的計算成本很高。使用簡單的延遲方法,只需花費一小部抽成本就能得到類似的性能。
模型大小的影響。下表 4 報告了不同模型大小的結果,即 300M、1.5B 和 3.3B 參數模型。正如預期的那樣,擴大模型大小可以得到更好的分數,但前提是需要更長的訓練和推理時間。主觀評價方面,在 1.5B 時整體質量是最優的,但更大的模型可以更好地理解文本提示。
© THE END
轉載請聯系本公眾号獲得授權
投稿或尋求報道:[email protected]