Přeskočit na hlavní obsah

Jak tvořit hudbu pomocí umělé inteligence a strojového učení



Naučte se vytvářet hudbu s pomocí umělé inteligence! Opakující se neuronové sítě pro tvorbu hudby!

Datový soubor MAESTRO a Wave2Midi2Wave
Poté, co jsem se podíval na tyto zdroje, našel jsem výzkumný dokument, který zavádí nový dataset s názvem MAESTRO (což je zkratka MIDI a Audio Edited for Synchronous TRacks and Organisation). Navrhuje také novou architekturu Wave2Midi2Wave, která v zásadě kombinuje tři nejmodernější algoritmy a společně je trénuje v datovém souboru MAESTRO. 

MIDI je v podstatě technický standard, který zahrnuje spoustu protokolů pro počítače s rozhraním s různými druhy zvukových zařízení. To je užitečné, protože přenášené informace obsahují informace o tónu, výšce, rychlosti a tempu.

Hlavním důvodem, proč je tento nový datový soubor tak důležitý, je to, že obsahuje mnohem více dat než všechny předchozí předchozí datové sady. Abychom to uvedli do perspektivy, datový soubor MAESTRO obsahuje 172 hodin zvukových a MIDI přepisů. Datový soubor MAPS obsahuje pouze 17,9 hodin a datový soubor MusicNet pouze 15,3 hodin.

Jak jsem již zmínil dříve, Wave2Midi2Wave je v podstatě kombinací tří různých nejmodernějších modelů a každý vykonává jiný úkol. Nejprve se Wave2Midi používá k přepisu zvuku do symbolické reprezentace (MIDI). Poté část sítě Midi vytvoří nový obsah. To vše je syntetizováno programem Midi2Wave tak, aby výsledkem byla realisticky znějící hudba.

První síť ve Wave2Midi2Wave používá nejmodernější architekturu nazvanou Onsets and Frames, která automaticky převádí vaše nahrávky na noty reprezentované v MIDI. Takže pokud jste improvizovali, mohli byste přesně vědět, co jste hráli!

Pomocí CNN a LSTM byli vědci schopni „předpovídat události nástupu výšky tónu a poté použít tyto předpovědi k úpravě předpovědí výšky tónu po rámečku“. To v podstatě znamená, že jedna neuronová síť v modelu se používá k předpovědi, kdy se hraje nota (tj. nástup). A další neuronová síť předpovídá, jak dlouho se nota hraje (každý snímek, který je nota aktivní).

Midi: Music Transformer
Pro druhou síť ve Wave2Midi2Wave se používá speciální typ transformátoru ke generování zcela nových sekvencí hudby s dlouhodobou koherencí. Výstup sítě dává mnohem strukturálnější smysl ve srovnání s jinými neurálními sítěmi.

V běžném Transformátoru je pozornost věnována modelování vztahů mezi slovy, protože ve větách není význam slova založen pouze na slovech, která mu předcházela, ale na kontextu celé věty.
Transformátory agregují informace ze všech ostatních částí sítě a generují reprezentaci pro každé slovo na základě celého kontextu. Tento proces se opakuje, aby každé slovo generovalo nové reprezentace.

Jde zde o to, že pomocí transformátorů můžeme přiřadit informace různým částem dat na základě kontextu celé sítě. Vraťme se tedy k tématu hudební generace.
Jeden problém s původním Transformerem spočívá v tom, že spoléhá na absolutní pozice pro vlastní pozornost. Když to aplikuje na hudbu, Transformers zápasí s vzdálenostmi, řádem a opakováním. Při použití relativní pozornosti se model hudební transformace může zaměřit na relační prvky a generovat sekvence nad rámec toho, co bylo uvedeno v příkladech školení.

Midi2Wave: WaveNet
Poslední část sítě bere model WaveNet a trénuje jej v datové sadě pro generování hudby, která doslova zní jako nahrávka. WaveNet je modelová architektura, která je založena na systému PixelCNN a specializuje se na syntézu zvuku.
Architektura využívá konvoluční vrstvy. Protože závity nepoužívají opakující se spojení jako v RNN, což znamená, že je obvykle mnohem snazší trénovat než RNN. Jedním problémem je však to, že ke zvýšení vnímavého pole (množství dat, které může model pokrýt) je zapotřebí tuny vrstev nebo super velké filtry, což zvyšuje výpočetní náklady.

K obejití se používají dilatační závity. To v podstatě znamená, že filtry mohou být použity na větší plochu, pokud jsou určité vstupní hodnoty přeskočeny. Dosáhnete téměř stejného efektu jako větší filtr, pokud jste jej rozšířili o nuly, ale je mnohem účinnější.

Trénink WaveNet, nejmodernější model pro syntézu řeči, na datovém souboru MAESTRO přináší některé docela neuvěřitelné výsledky se kterými vás zde postupně seznámím a uvedu na konkrétních příkladech.

Komentáře

Populární příspěvky z tohoto blogu

Skalní reliéfy u Kopicova statku

Ve skalách pod Kopicovým statkem, Jirošovou rychtou, vytvořil tehdejší majitel a lidový umělec Vojtěch Kopic galerii skalních reliéfů především z české historie. Jeho práce trvala téměř 40 let (1940 až 1978) a za tu dobu vzniklo přes 30 reliéfů postav, zvířat či průčelí staveb, často doplněných o citáty či poselství.

Vojtěch Kopic (1909–1978) se do stavení přiženil v roce 1932. Od čtyřicátých let až do své smrti v rokli pod statkem vytesal v pískovcových skalách řadu reliéfů, jejichž témata čerpal především z českých dějin. Památková ochrana těchto děl byla vyhlášena s účinností od 25. listopadu 2017 formou stanovení ochranného pásma kulturní památky Kopicův statek.

Po reliéfech vás provede značená stezka, odbočení na ní je vyznačeno turistickými směrovkami.

Kopicův statek (dříve Jirošova rychta) je roubená usedlost z konce 18. století, kulturní památka. Jedná se (spolu např. s Dlaskovým statkem) o jeden z nejzajímavějších příkladů lidové architektury pojizerského typu. Statek (Kacanovy …

Labská bouda

Labská bouda je soukromý hotel v Krkonoších, v první zóně Krkonošského národního parku. Labská bouda leží v nadmořské výšce 1340 metrů na Labské louce nedaleko města Špindlerův Mlýn. Několik set metrů od boudy se nachází pramen Labe. Vzhledem ke své poloze je především v zimním období významným orientačním prvkem. Moderní železobetonová devítipatrová budova z roku 1975 nese stejný název jako původní hostinec z 19. století, který vyhořel roku 1965. Přístupová komunikace vede z obce Horní Mísečky; od obce výše však není povolen vjezd soukromým vozidlům (dále autobusem a pěšky). V sobotu 17. listopadu 2018 v okolí Labské boudy začala hořet horská tundra. Požár byl ohlášen po 16. hodině, uhašen byl v půl osmé večer, zasahovalo celkem sedm požárních jednotek. Zasažená plocha činila asi 20 ha. Budova neutrpěla žádné škody díky opačnému směru větru. Požár byl zřejmě způsoben nedbalostí turistů.
Budova vznikla v polovině 19. století jako hostinec s ubytovacím zázemím. Již dříve zde ale údajně …

Vilémov, Rokytnice nad Jizerou, Krkonoše

Rokytnice nad Jizerou (německy Rochlitz an der Iser) je město a horské letovisko v západních Krkonoších. Nachází se v Libereckém kraji, v okrese Semily, v protáhlém údolí Huťského potoka mezi masivy hor Stráž (782 m), Čertova hora (1022 m) a Lysá hora (1344 m) a podél levého (východní) břehu řeky Jizery. Žije zde přibližně 2 600 obyvatel.
Celkem zahrnuje čtyři katastrální území: Dolní Rokytnice, Horní Rokytnice nad Jizerou, Rokytno v Krkonoších a Františkov v Krkonoších. Z evidenčního hlediska se v rámci Dolní Rokytnice navíc rozlišují ještě místní části Hleďsebe, Hranice a Studenov.
Katastrální území Dolní Rokytnice ve městě Rokytnice nad Jizerou zahrnuje kromě vlastní Dolní Rokytnice ještě sídelní celky Hleďsebe, Studenov, Liščí Díra, Hranice, Vilémov, Letní Strana, Zimní Strana, Malá Rokytnice. Na jihozápadě do něj spadá vrch Stráž. Do Dolní Rokytnice patří i kostel svatého Michaela archanděla.
Hranice mezi Dolní a Horní Rokytnicí probíhá náměstím před radnicí: většina plochy náměstí …