這個AI能用Lady Gaga曲風續(xù)寫貝多芬,網(wǎng)友們紛紛玩得不亦樂乎
編者按:OpenAI 前幾日突然在 Twitch 展開直播。此前,OpenAI 的每次 DOTA2 直播都是在這里進行的,但這次的內容不再是電子游戲了,而是直播 AI 創(chuàng)作的曲子。OpenAI CTO Greg Brockman 都調侃說:「六個月前我也想不到我們會把直播頻道的分類從 DOTA2 換成音樂和表演」。
直播的主角是 OpenAI 新創(chuàng)造的作曲 AI「MuseNet」,它可以創(chuàng)作不同風格的、時長達 4 分鐘的樂曲,風格可以根據(jù)不同的作曲者變化(巴赫、貝多芬、Oscar Peterson、Frank Sinatra、Bon Jovi)、不同的風格變化(Jazz、Albeniz、電影配樂、鄉(xiāng)村、印度寶萊塢、迪士尼),而且樂曲中可以使用 10 種不同的樂器?!窶useNet」使用的是和前段時間 OpenAI 的文本生成模型 GPT-2 類似的大規(guī)模 Transformer 模型,而且為了增強它的長序列建模能力,「MuseNet」也使用了雷鋒網(wǎng) AI 科技評論剛剛介紹過的稀疏注意力技術。繼上次用 GPT-2 生成接近人類水準的短文之后,OpenAI 儼然已經(jīng)成為了長序列建模的小能手。
學習音樂畢竟是一件有難度的任務,不同的樂器有不同的音色,不同的曲風也有各自的微結構。所以 OpenAI 的做法是讓模型學習并預測 MIDI (音符、控制參數(shù)等組成的數(shù)字音頻信號,可以用 MIDI 播放器播放),而不是學習原始音頻波形;同時 OpenAI 也為模型設計了對應作曲者和樂器的 token,簡化數(shù)據(jù)參數(shù)。
在稀疏 Transformer 的重新計算以及優(yōu)化過的核心幫助下,MuseNet 被設計為一個 72 層、具有 24 個注意力頭的網(wǎng)絡,它可以在 4096 個元素長度的內容上進行完整的注意力操作。正因為它能夠處理的序列足夠長,所以它可以記住曲子中的長段結構,完成段落的重復以及變化。
為了讓模型更好地控制樂曲主體內容的結構,OpenAI 為模型設計了多種不同的嵌入。除了正常的位置嵌入之外,他們額外讓模型學習一個嵌入,用它來追蹤每個樣本中已經(jīng)經(jīng)過的時間。這樣,所有同時響起的音符都會具有同樣的時間嵌入。他們還為和弦中的每個音符增加了一個嵌入(這種做法類似于相對注意力,當模型需要生成第四個音符的時候它會提供第三個音符作為參考,也就讓模型更容易學習)。***,他們還增加了兩種不同的結構嵌入,它們的共同作用是告訴模型某一段音樂在更大的曲目范圍內的位置;其中,***個嵌入會把大段音樂分為128個部分,第二個嵌入會從127到0倒數(shù),表示距離結尾還有多遠。
模型的效果是驚人的,不僅當天的 Twitch 直播中演示的不同風格的曲目辨識度高、旋律自然,而且 OpenAI 在介紹博客中展示的混搭生成結果(從某首知名樂曲中取一個小節(jié)作為開頭,然后讓模型以其他的風格續(xù)寫,模型會給出四種結果),以及好奇的網(wǎng)友們利用 OpenAI 提供的試驗工具生成的樂曲都讓大家無比欽佩。我們推薦大家到 MuseNet 的官方介紹頁面親自嘗試混搭續(xù)寫工具以及聽聽已有的生成樂曲。
用Lady Gaga曲風續(xù)寫貝多芬的《致愛麗絲》,來自 OpenAI 技術博客
用肖邦曲風續(xù)寫Adele的《Some One Like You》,來自 OpenAI 技術博客
4 月 25 日的 Twtich 作曲直播錄像,此前OpenAI自己的工作人員都沒有聽過這些樂曲;來自 OpenAI 技術博客
OpenAI 還根據(jù)嵌入的學習結果制作了不同作曲者之間的相似度關系圖,也和我們日常的認知非常相符。
在 OpenAI 的研究人員們看來,音樂生成任務的難度介于文本和圖像之間,它具有和文本類似的靈活的序列結構(比如圖像中可以固定地參照前 N 個元素,而文本和音樂中的這個數(shù)字大小是不固定的)。他們收集了訓練數(shù)據(jù)集并嘗試了不同的訓練技巧。
這項研究實在是生動有趣,OpenAI 也希望大家多多參與活動,多多討論和反饋,也幫助他們選定這項研究的下一步目標。公開參與的時間一直持續(xù)到 5 月 12 日,大家快到 openai.com/blog/musenet/ 玩玩聽聽看吧!
本文轉自雷鋒網(wǎng),如需轉載請至雷鋒網(wǎng)官網(wǎng)申請授權。