基于深度神經網絡進行語音合成、音樂風格遷移,正成為不少致力于“讓人人成為音樂家”的研究人員所追求的事情。像此前我們報道的微軟小冰作詞又作曲,AI幫清華博士寫說唱歌詞晉級,甚至不久前中央音樂學院招音樂AI方向博士生。不久前,為了紀念著名作曲家巴赫誕辰,Google 根據巴赫合唱和聲訓練而成的機器學習模式 Coconet 吸引了不少人前來圍觀。
最近,OpenAI最新研發的MuseNet的深度神經網絡,可以制作 4 分鐘時長的音樂作品,其中涵蓋 10 種不同的樂器(如鋼琴、鼓、貝斯、吉他),甚至還能將諸如鄉村風格、莫扎特風格、甲殼蟲樂隊風格的音樂融合起來。
首先需要說明的是,MuseNet 并沒有根據人類輸入的對音樂理解進行顯式編程,而是通過學習預測成千上萬個 MIDI 文件的下一個 token 來發現和弦、節奏和風格的模式。MuseNet 采用了無監督神經網絡語言模型 GPT2.0(是的,就是此前被譽為可以 BERT 媲美的 NLP 模型 GPT2.0,普遍觀點是,經過預訓練可以預測上下文,無論是音頻還是文本。)
據悉,5 月 12 日將正式開放 MuseNet 語言生成工具的試用版本。(以下為學習了肖邦作曲風格的英國女歌手 Adele 的 Someone Like You的 AI編曲錄音。)
傳送門:
https://openai.com/blog/musenet/
▌過程原理
在簡單模式(默認顯示)中,用戶會聽到預設生成的隨機未切割樣本;然后選擇某作曲家或風格下的著名作品片段,即可生成各種風格的音樂。
在高級模式下,用戶可直接與模型交互。這個過程需要完成的時間會更長,但用戶可以創建一個全新的作品。
注意:MuseNet 通過計算所有可能的音符和樂器的概率來生成每個音符,模型會傾向采用你選擇的樂器,但也可能會選擇逼得樂器;同樣,MuseNet 也會搭配不同風格的樂器,如果用戶自行選擇最接近作家或樂隊常用分風格或樂器,產生的音樂會更自然。
研究人員還創建了作曲家和樂器的 token,以便更好地控制 MuseNet 生成的樣本類型。訓練期間,這些作曲家和樂器 token 將預先添加到每個樣本中,因此模型將學習利用該信息進行音符預測。生成音樂時,可以調整模型,如拉赫瑪尼諾夫的鋼琴曲為前提,以創建選定風格的音樂。
研究人員還將 MuseNet 中的嵌入進行可視化,以深入了解模型所學到的內容。他們采用了 t-SNE 創建各種風格嵌入的余弦相似性。(如下 2D 圖像所示,可查看某個特定作曲家或風格之間的關系。)
▌利用 Sparse Transformer 記住長期結構
MuseNet 使用 Sparse Transformer 的重算和優化內核來訓練一個具有 24 個注意力頭的 72 層網絡,并將全部注意力放在 4096 個 token 的上下文中。這個長文本的目的是能夠記住一個片段中的長期結構。或者,它還可以創建音樂旋律結構。
音樂生成是測試 Sparse Transformer 的一個有用域,因為它位于文本和圖像的中間位置。它具有文本的 token 結構。在圖形中,你可以查看 N 個 token,而在音樂中,查看之前的起點沒有固定數。此外,還可以很容易聽到該模型是否在按照成百上千個 token 順序來獲取長期結構。
▌數據集
研究人員收集了不同來源的 MuseNet 訓練數據(ClassicalArchives、BitMidi、MAESTRO ),涵蓋爵士樂、流行樂,以及非洲、印度和阿拉伯等不同風格的音樂。
首先,研究人員采用 transformer 在序列數據上進行訓練:給定一組音符,要求它預測其他即將出現的音符。在嘗試了幾種不同方法后將 MIDI 文件編碼為適用于此任務的 token。
在這種其中,他們采用和弦方法,將每次聽到的音符組合視為單獨的 “和弦”,并為每個和弦指定一個 token。然后,通過僅關注音符開頭壓縮音樂模式,并嘗試使用字節對編碼方案進行近一步壓縮。
研究人員還嘗試了標記時間推移的兩種不同方法:一是根據音樂節奏進行縮放的 token,代表節拍或節拍的一小部分;二是以絕對時間為單位來標記 token。他們采用了一種結合了表現力和簡潔性的編碼方式:將音高、音量以及樂器信息組合稱一個 token。
在訓練中,
通過提高和降低音高來調換音符。(之后的訓練中,減少了調換數量,使得每個樂器都有生成的音符。)
提高音量,調高或降低不同樣本的整體音量。
增加時間,當使用以秒為單位的絕對時間編碼時,可有效稍微減緩或加速片段。
在 token 嵌入空間中使用 mixup。
研究人員還創建了一個內部評測,在訓練中,通過模型預測給定的樣本是否來自數據集還是之前生成的樣本,進行評判。
▌嵌入
為了給模型提供更加結構化的上下文,研究人員還添加幾種不同類型的嵌入。
除了標準位置嵌入外,還有學習到的嵌入,可在給定的樣本中追蹤時間推移;然后,他們還在每個和弦中的音符添加了嵌入;最后,他們添加了兩個結構化嵌入,該嵌入可表明模型既定的音樂樣本在較大音樂片段中的位置。
-
神經網絡
+關注
關注
42文章
4771瀏覽量
100719 -
生成器
+關注
關注
7文章
315瀏覽量
21003 -
程序員
+關注
關注
4文章
951瀏覽量
29799 -
機器學習
+關注
關注
66文章
8408瀏覽量
132568
原文標題:程序員拯救樂壇?OpenAI用“逆天”GPT2.0搞了個AI音樂生成器
文章出處:【微信號:rgznai100,微信公眾號:rgznai100】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論