0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

OpenAI最新研發(fā)的MuseNet的深度神經(jīng)網(wǎng)絡(luò),可以制作4分鐘時(shí)長(zhǎng)的音樂作品

電子工程師 ? 來源:lq ? 2019-04-29 10:27 ? 次閱讀

基于深度神經(jīng)網(wǎng)絡(luò)進(jìn)行語音合成、音樂風(fēng)格遷移,正成為不少致力于“讓人人成為音樂家”的研究人員所追求的事情。像此前我們報(bào)道的微軟小冰作詞又作曲,AI幫清華博士寫說唱歌詞晉級(jí),甚至不久前中央音樂學(xué)院招音樂AI方向博士生。不久前,為了紀(jì)念著名作曲家巴赫誕辰,Google 根據(jù)巴赫合唱和聲訓(xùn)練而成的機(jī)器學(xué)習(xí)模式 Coconet 吸引了不少人前來圍觀。

最近,OpenAI最新研發(fā)的MuseNet的深度神經(jīng)網(wǎng)絡(luò),可以制作 4 分鐘時(shí)長(zhǎng)的音樂作品,其中涵蓋 10 種不同的樂器(如鋼琴、鼓、貝斯、吉他),甚至還能將諸如鄉(xiāng)村風(fēng)格、莫扎特風(fēng)格、甲殼蟲樂隊(duì)風(fēng)格的音樂融合起來。

首先需要說明的是,MuseNet 并沒有根據(jù)人類輸入的對(duì)音樂理解進(jìn)行顯式編程,而是通過學(xué)習(xí)預(yù)測(cè)成千上萬個(gè) MIDI 文件的下一個(gè) token 來發(fā)現(xiàn)和弦、節(jié)奏和風(fēng)格的模式。MuseNet 采用了無監(jiān)督神經(jīng)網(wǎng)絡(luò)語言模型 GPT2.0(是的,就是此前被譽(yù)為可以 BERT 媲美的 NLP 模型 GPT2.0,普遍觀點(diǎn)是,經(jīng)過預(yù)訓(xùn)練可以預(yù)測(cè)上下文,無論是音頻還是文本。)

據(jù)悉,5 月 12 日將正式開放 MuseNet 語言生成工具的試用版本。(以下為學(xué)習(xí)了肖邦作曲風(fēng)格的英國(guó)女歌手 Adele 的 Someone Like You的 AI編曲錄音。)

傳送門:

https://openai.com/blog/musenet/

▌過程原理

在簡(jiǎn)單模式(默認(rèn)顯示)中,用戶會(huì)聽到預(yù)設(shè)生成的隨機(jī)未切割樣本;然后選擇某作曲家或風(fēng)格下的著名作品片段,即可生成各種風(fēng)格的音樂。

在高級(jí)模式下,用戶可直接與模型交互。這個(gè)過程需要完成的時(shí)間會(huì)更長(zhǎng),但用戶可以創(chuàng)建一個(gè)全新的作品。

注意:MuseNet 通過計(jì)算所有可能的音符和樂器的概率來生成每個(gè)音符,模型會(huì)傾向采用你選擇的樂器,但也可能會(huì)選擇逼得樂器;同樣,MuseNet 也會(huì)搭配不同風(fēng)格的樂器,如果用戶自行選擇最接近作家或樂隊(duì)常用分風(fēng)格或樂器,產(chǎn)生的音樂會(huì)更自然。

研究人員還創(chuàng)建了作曲家和樂器的 token,以便更好地控制 MuseNet 生成的樣本類型。訓(xùn)練期間,這些作曲家和樂器 token 將預(yù)先添加到每個(gè)樣本中,因此模型將學(xué)習(xí)利用該信息進(jìn)行音符預(yù)測(cè)。生成音樂時(shí),可以調(diào)整模型,如拉赫瑪尼諾夫的鋼琴曲為前提,以創(chuàng)建選定風(fēng)格的音樂。

研究人員還將 MuseNet 中的嵌入進(jìn)行可視化,以深入了解模型所學(xué)到的內(nèi)容。他們采用了 t-SNE 創(chuàng)建各種風(fēng)格嵌入的余弦相似性。(如下 2D 圖像所示,可查看某個(gè)特定作曲家或風(fēng)格之間的關(guān)系。)

▌利用 Sparse Transformer 記住長(zhǎng)期結(jié)構(gòu)

MuseNet 使用 Sparse Transformer 的重算和優(yōu)化內(nèi)核來訓(xùn)練一個(gè)具有 24 個(gè)注意力頭的 72 層網(wǎng)絡(luò),并將全部注意力放在 4096 個(gè) token 的上下文中。這個(gè)長(zhǎng)文本的目的是能夠記住一個(gè)片段中的長(zhǎng)期結(jié)構(gòu)?;蛘?,它還可以創(chuàng)建音樂旋律結(jié)構(gòu)。

音樂生成是測(cè)試 Sparse Transformer 的一個(gè)有用域,因?yàn)樗挥谖谋竞蛨D像的中間位置。它具有文本的 token 結(jié)構(gòu)。在圖形中,你可以查看 N 個(gè) token,而在音樂中,查看之前的起點(diǎn)沒有固定數(shù)。此外,還可以很容易聽到該模型是否在按照成百上千個(gè) token 順序來獲取長(zhǎng)期結(jié)構(gòu)。

▌數(shù)據(jù)集

研究人員收集了不同來源的 MuseNet 訓(xùn)練數(shù)據(jù)(ClassicalArchives、BitMidi、MAESTRO ),涵蓋爵士樂、流行樂,以及非洲、印度和阿拉伯等不同風(fēng)格的音樂。

首先,研究人員采用 transformer 在序列數(shù)據(jù)上進(jìn)行訓(xùn)練:給定一組音符,要求它預(yù)測(cè)其他即將出現(xiàn)的音符。在嘗試了幾種不同方法后將 MIDI 文件編碼為適用于此任務(wù)的 token。

在這種其中,他們采用和弦方法,將每次聽到的音符組合視為單獨(dú)的 “和弦”,并為每個(gè)和弦指定一個(gè) token。然后,通過僅關(guān)注音符開頭壓縮音樂模式,并嘗試使用字節(jié)對(duì)編碼方案進(jìn)行近一步壓縮。

研究人員還嘗試了標(biāo)記時(shí)間推移的兩種不同方法:一是根據(jù)音樂節(jié)奏進(jìn)行縮放的 token,代表節(jié)拍或節(jié)拍的一小部分;二是以絕對(duì)時(shí)間為單位來標(biāo)記 token。他們采用了一種結(jié)合了表現(xiàn)力和簡(jiǎn)潔性的編碼方式:將音高、音量以及樂器信息組合稱一個(gè) token。

在訓(xùn)練中,

通過提高和降低音高來調(diào)換音符。(之后的訓(xùn)練中,減少了調(diào)換數(shù)量,使得每個(gè)樂器都有生成的音符。)

提高音量,調(diào)高或降低不同樣本的整體音量。

增加時(shí)間,當(dāng)使用以秒為單位的絕對(duì)時(shí)間編碼時(shí),可有效稍微減緩或加速片段。

在 token 嵌入空間中使用 mixup。

研究人員還創(chuàng)建了一個(gè)內(nèi)部評(píng)測(cè),在訓(xùn)練中,通過模型預(yù)測(cè)給定的樣本是否來自數(shù)據(jù)集還是之前生成的樣本,進(jìn)行評(píng)判。

▌嵌入

為了給模型提供更加結(jié)構(gòu)化的上下文,研究人員還添加幾種不同類型的嵌入。

除了標(biāo)準(zhǔn)位置嵌入外,還有學(xué)習(xí)到的嵌入,可在給定的樣本中追蹤時(shí)間推移;然后,他們還在每個(gè)和弦中的音符添加了嵌入;最后,他們添加了兩個(gè)結(jié)構(gòu)化嵌入,該嵌入可表明模型既定的音樂樣本在較大音樂片段中的位置。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 神經(jīng)網(wǎng)絡(luò)

    關(guān)注

    42

    文章

    4722

    瀏覽量

    100307
  • 生成器
    +關(guān)注

    關(guān)注

    7

    文章

    313

    瀏覽量

    20919
  • 程序員
    +關(guān)注

    關(guān)注

    4

    文章

    946

    瀏覽量

    29732
  • 機(jī)器學(xué)習(xí)

    關(guān)注

    66

    文章

    8320

    瀏覽量

    132165

原文標(biāo)題:程序員拯救樂壇?OpenAI用“逆天”GPT2.0搞了個(gè)AI音樂生成器

文章出處:【微信號(hào):rgznai100,微信公眾號(hào):rgznai100】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    詳解深度學(xué)習(xí)、神經(jīng)網(wǎng)絡(luò)與卷積神經(jīng)網(wǎng)絡(luò)的應(yīng)用

    處理技術(shù)也可以通過深度學(xué)習(xí)來獲得更優(yōu)異的效果,比如去噪、超分辨率和跟蹤算法等。為了跟上時(shí)代的步伐,必須對(duì)深度學(xué)習(xí)與神經(jīng)網(wǎng)絡(luò)技術(shù)有所學(xué)習(xí)和研究。本文將介紹
    的頭像 發(fā)表于 01-11 10:51 ?1751次閱讀
    詳解<b class='flag-5'>深度</b>學(xué)習(xí)、<b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b>與卷積<b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b>的應(yīng)用

    從AlexNet到MobileNet,帶你入門深度神經(jīng)網(wǎng)絡(luò)

    取得了良好的性能。可以說,DNN其實(shí)是一種架構(gòu),是指深度超過幾個(gè)相似層的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),一般能夠達(dá)到幾十層,或者由一些復(fù)雜的模塊組成。ILSVRC(ImageNet大規(guī)模視覺識(shí)別挑戰(zhàn)賽)每年都不斷被
    發(fā)表于 05-08 15:57

    【PYNQ-Z2試用體驗(yàn)】基于PYNQ的神經(jīng)網(wǎng)絡(luò)自動(dòng)駕駛小車 - 項(xiàng)目規(guī)劃

    的數(shù)篇帖子里,我會(huì)圍繞“基于PYNQ的神經(jīng)網(wǎng)絡(luò)自動(dòng)駕駛小車”項(xiàng)目,對(duì)整個(gè)項(xiàng)目的實(shí)現(xiàn)進(jìn)行詳解,相信有電子設(shè)計(jì)基礎(chǔ)的網(wǎng)友們也可以很容易進(jìn)行復(fù)現(xiàn),制作并訓(xùn)練一輛屬于自己的自動(dòng)駕駛小車。 一、作品
    發(fā)表于 03-02 23:10

    神經(jīng)網(wǎng)絡(luò)資料

    基于深度學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò)算法
    發(fā)表于 05-16 17:25

    解析深度學(xué)習(xí):卷積神經(jīng)網(wǎng)絡(luò)原理與視覺實(shí)踐

    解析深度學(xué)習(xí):卷積神經(jīng)網(wǎng)絡(luò)原理與視覺實(shí)踐
    發(fā)表于 06-14 22:21

    深度神經(jīng)網(wǎng)絡(luò)是什么

    多層感知機(jī) 深度神經(jīng)網(wǎng)絡(luò)in collaboration with Hsu Chung Chuan, Lin Min Htoo, and Quah Jia Yong. 與許忠傳,林敏濤和華佳勇合作
    發(fā)表于 07-12 06:35

    基于深度神經(jīng)網(wǎng)絡(luò)的激光雷達(dá)物體識(shí)別系統(tǒng)

    的激光雷達(dá)物體識(shí)別技術(shù)一直難以在嵌入式平臺(tái)上實(shí)時(shí)運(yùn)行。經(jīng)緯恒潤(rùn)經(jīng)過潛心研發(fā),攻克了深度神經(jīng)網(wǎng)絡(luò)在嵌入式平臺(tái)部署所面臨的算子定制與加速、量化策略、模型壓縮等難題,率先實(shí)現(xiàn)了高性能激光檢測(cè)神經(jīng)網(wǎng)絡(luò)
    發(fā)表于 12-21 07:59

    卷積神經(jīng)網(wǎng)絡(luò)模型發(fā)展及應(yīng)用

    十余年來快速發(fā)展的嶄新領(lǐng)域,越來越受到研究者的關(guān)注。卷積神經(jīng)網(wǎng)絡(luò)(CNN)模型是深度學(xué)習(xí)模型中最重要的一種經(jīng)典結(jié)構(gòu),其性能在近年來深度學(xué)習(xí)任務(wù)上逐步提高。由于可以自動(dòng)學(xué)習(xí)樣本數(shù)據(jù)的特征
    發(fā)表于 08-02 10:39

    【人工神經(jīng)網(wǎng)絡(luò)基礎(chǔ)】為什么神經(jīng)網(wǎng)絡(luò)選擇了“深度”?

    由 Demi 于 星期四, 2018-09-06 09:33 發(fā)表 現(xiàn)在提到“神經(jīng)網(wǎng)絡(luò)”和“深度神經(jīng)網(wǎng)絡(luò)”,會(huì)覺得兩者沒有什么區(qū)別,神經(jīng)網(wǎng)絡(luò)還能不是“
    發(fā)表于 09-06 20:48 ?659次閱讀

    什么是神經(jīng)網(wǎng)絡(luò)?什么是卷積神經(jīng)網(wǎng)絡(luò)?

    在介紹卷積神經(jīng)網(wǎng)絡(luò)之前,我們先回顧一下神經(jīng)網(wǎng)絡(luò)的基本知識(shí)。就目前而言,神經(jīng)網(wǎng)絡(luò)深度學(xué)習(xí)算法的核心,我們所熟知的很多深度學(xué)習(xí)算法的背后其實(shí)都
    的頭像 發(fā)表于 02-23 09:14 ?3213次閱讀

    卷積神經(jīng)網(wǎng)絡(luò)深度神經(jīng)網(wǎng)絡(luò)的優(yōu)缺點(diǎn) 卷積神經(jīng)網(wǎng)絡(luò)深度神經(jīng)網(wǎng)絡(luò)的區(qū)別

    深度神經(jīng)網(wǎng)絡(luò)是一種基于神經(jīng)網(wǎng)絡(luò)的機(jī)器學(xué)習(xí)算法,其主要特點(diǎn)是由多層神經(jīng)元構(gòu)成,可以根據(jù)數(shù)據(jù)自動(dòng)調(diào)整神經(jīng)
    發(fā)表于 08-21 17:07 ?3768次閱讀

    10分鐘快速了解神經(jīng)網(wǎng)絡(luò)(Neural Networks)

    神經(jīng)網(wǎng)絡(luò)深度學(xué)習(xí)算法的基本構(gòu)建模塊。神經(jīng)網(wǎng)絡(luò)是一種機(jī)器學(xué)習(xí)算法,旨在模擬人腦的行為。它由相互連接的節(jié)點(diǎn)組成,也稱為人工神經(jīng)元,這些節(jié)點(diǎn)組織成層次結(jié)構(gòu)。Source:victorzho
    的頭像 發(fā)表于 09-21 08:30 ?3787次閱讀
    10<b class='flag-5'>分鐘</b>快速了解<b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b>(Neural Networks)

    深度神經(jīng)網(wǎng)絡(luò)模型有哪些

    模型: 多層感知器(Multilayer Perceptron,MLP): 多層感知器是最基本的深度神經(jīng)網(wǎng)絡(luò)模型,由多個(gè)全連接層組成。每個(gè)隱藏層的神經(jīng)元數(shù)量可以不同,通常使用激活函數(shù)如
    的頭像 發(fā)表于 07-02 10:00 ?863次閱讀

    bp神經(jīng)網(wǎng)絡(luò)深度神經(jīng)網(wǎng)絡(luò)

    BP神經(jīng)網(wǎng)絡(luò)(Backpropagation Neural Network)是一種常見的前饋神經(jīng)網(wǎng)絡(luò),它使用反向傳播算法來訓(xùn)練網(wǎng)絡(luò)。雖然BP神經(jīng)網(wǎng)絡(luò)在某些方面與
    的頭像 發(fā)表于 07-03 10:14 ?484次閱讀

    深度神經(jīng)網(wǎng)絡(luò)與基本神經(jīng)網(wǎng)絡(luò)的區(qū)別

    在探討深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Networks, DNNs)與基本神經(jīng)網(wǎng)絡(luò)(通常指?jìng)鹘y(tǒng)神經(jīng)網(wǎng)絡(luò)或前向神經(jīng)網(wǎng)絡(luò))的區(qū)別時(shí),我們需
    的頭像 發(fā)表于 07-04 13:20 ?483次閱讀