從莫扎特到披頭士,Facebook 新 AI 輕鬆轉換音樂風格

本文爲 AI 研習社編譯的技術博客,原標題 Understanding how Facebook’s new AI translates between music genres — in 7 minutes,作者爲 Arya Vohra。 翻譯 | 老趙 校對 | 醬番梨 審覈 | 付騰

莫扎特 — 披頭士

想象一下:你的朋友幾周來一直在嘮叨你聽一首歌,儘管你已經告訴他你不喜歡 Ed Sheeran。 他們繼續糾纏你,聲稱“旋律是偉大的”。 如果只有你能聽到文明形式的那種旋律,就像巴赫管風琴協奏曲那樣。

不要再等了。

Facebook的人工智能研究團隊提出了一個音樂域名轉移系統,聲稱能夠翻譯“樂器,流派和風格”。 您可以在下面看到結果。

讓我們一探究竟吧!

我很震驚,這是非常令人印象深刻的東西。

本文的工作改進了兩個空間的先前發展:域轉移和音頻合成。 域轉移空間的最新進展在包含週期一致性(hehe)方面是一致的,如StarGAN(Choi等人,2017)(https://arxiv.org/abs/1711.09020),CycleGAN(Zhu等人,2017)(https://arxiv.org/abs/1703.10593),DiscoGAN(Kim等人,2017) (https://arxiv.org/abs/1703.05192),NounGAN。 使用週期一致性損失的關鍵目標是鼓勵網絡保留所有與內容相關的信息,並專注於更改與域相關的信息。

讓我們先梳理一下 域名,內容,GAN,三輪車...所有的這些混亂的概念。 循環一致性概括了下面的陳述:F(G(X))≈X,函數G(X)應該具有大致返回輸入X的相應的倒數F(X)。這可以通過引入a來促進循環一致性損失,如下所示: 這可以在下面看到:

基本上,在所有前向循環一致性 x→G(x)→F(G(x))≈ x 的誤差和所有後向循環一致性y→F(y)→G(F(y))≈y 的誤差。 現在,對於與域相關的信息與內容相關的信息...這個有點困難。 在GAN的上下文中,域信息是給定輸入中確定其適合域的所有內容,而內容信息是關於圖像的所有其他內容。 例如,如果我們有這樣一輛汽車的圖像:

我們有一組域,包括這樣的汽車:{紅色汽車,藍色汽車,綠色汽車},我們得出結論,圖像中所有與域相關的信息都是汽車的紅色,而諸如汽車的形狀之類的東西。 汽車,前照燈的數量,背景等都是與內容相關的信息。 看到FAIR團隊的模型不是循環一致的,我們可能只是浪費了一些時間來研究這個問題,但是至少我們學到了什麼。 由於使用了 Teacher forcing ,FAIR團隊的模型不是循環一致的 — 讓我們稍微繞道一下,看看這在實踐中意味着什麼。

Teacher forcing是強化學習的一種形式(ML技術源於心理學領域的研究。在這裏瞭解更多:https://medium.freecodecamp.org/an-introduction-to-reinforcement-learning-4339519de419)。 在訓練期間,模型輸入包含先前時間步的地面實況輸出。 在訓練期間看到的序列是基本事實,因此是準確的,但對於生成的樣本可能不是這種情況。 因此,生成的樣本序列遠離訓練期間看到的序列。

雖然,如果他們真的想要,他們可能會實現循環一致性損失因子,如Kaneko等人。我沒有使用自迴歸模型,這有一些非常有趣的含義,我將在稍後介紹。 該團隊還爲每個輸出域使用了一個解碼器,因爲單個解碼器顯然無法令人信服地在輸出域範圍內執行。

來到這個更有趣的部分(論文中那些漂亮的擴張圖已經很好了,我們就用它),FAIR團隊使用了WaveNet。 具體來說,是對NSynth數據集的WaveNet變體背後的團隊進行調整。 FAIR系統的不同之處在於:使用多個解碼器,解析域混淆網絡,以及使用音調增強來阻止網絡懶惰地記憶數據。

圖1.Engel等人的“使用WaveNet自動編碼器對音頻音符進行神經音頻合成”的WaveNet改編

圖2. FAIR團隊使用的實際模型

讓我們來看看 domain confusion 。 “ Domain-Adversarial Training of Neural Networks ”(Ganin et.al 2016)描述了高效的域轉移 — 他們在當時達到了最先進的績效 — 基於以下原則:“要實現有效的域轉移,預測必須基於無法區分訓練(來源)和測試(目標)領域的功能而製作。

該團隊使用對抗訓練來做到這一點。 WaveNet自動編碼器是生成器,域分類網絡是鑑別器。 將對抗性術語添加到自動編碼器的損失中(查看下面的等式)可以鼓勵自動編碼器學習域不變的潛在表示。 這就是啓用單個自動編碼器的原因,這是使本文變得很酷的關鍵因素之一。

在上面的等式中可以看到很多東西 — 讓我們快速分解它。 1. L(y,y)是分別對每個y ^和目標y元素對應的交叉熵損失。 2. 解碼器Dj是一種自迴歸模型,它以共享編碼器E的輸出爲條件。 3. O(s ^ j,r)是應用於具有隨機種子r的樣本的增強函數。 C是域混淆網絡,其被訓練以最小化分類丟失。 4. λ:lambda負責解開。 解纏結確保潛在表示中的所有神經元正在學習關於輸入數據的不同事物。 這是解開變分自動編碼器的一個關鍵特性,在本視頻中對來自Arxiv洞察力的變分自動編碼器進行了詳細解釋(跳到此時間戳以專門學習解纏結) 我認爲現在開始走到一起了。要結束,讓我們來看看他們是如何訓練這件事的。

他們訓練的領域代表了古典音樂中6種不同音色(音色:特定樂器的獨特聲音)和紋理(紋理:同時演奏的樂器和音符的數量)的傳播。 其中一個特別突出的結果是自動編碼器訓練的嵌入和音高之間的相關性 - 相同音高的儀器對之間的餘弦相似度在0.90-0.95範圍內,這是非常了不起的。 它就是這樣! 在音樂空間中進行深度學習是一個非常好的一步。 我真的很期待看到這會推動社區的發展。 我希望你喜歡這篇第一篇文章,在AI Journal上關注我們!

原文鏈接:https://medium.com/the-artificial-intelligence-journal/understanding-how-facebooks-new-ai-translates-between-music-genres-in-7-minutes-61d6cb1e5b4a

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章