Deep-Learning Machine lyssnar på Bach och skriver sedan sin egen musik i samma stil

Johann Sebastian Bach anses allmänt vara en av barockmusikens stora kompositörer. Bach levde och verkade i Tyskland under 1700-talet och är vördad för skönheten i sina kompositioner och hans tekniska behärskning av harmoni och kontrapunkt.





En musikform som Bach utmärkte sig i var en typ av polyfonisk hymn känd som en koralkantat. Dessa bygger på lutherska texter och sjungs av fyra röster. Kompositören börjar med en välkänd låt som sjungs av sopranen och komponerar sedan tre harmonier som sjungs av alt, tenor och bas. Bach skrev över 300 korta koralkompositioner.

Dessa kompositioner har lockat datavetare eftersom processen att producera dem är stegliknande och algoritmisk. Men att göra det här bra är också svårt på grund av det känsliga samspelet mellan harmoni och melodi. Det väcker en intressant fråga: skulle en maskin kunna skapa koraler i samma stil som Bach?

Idag får vi svar tack vare Gaetan Hadjeres och Francois Pachets arbete vid Sony Computer Science Laboratories i Paris. Dessa killar har utvecklat ett neuralt nätverk som har lärt sig att producera körkantater i stil med Bach. De kallar sin maskin DeepBach (se även AI Songsmith Cranks Out Surprisingly Catchy Tunes ).



Efter att ha tränats på koralharmoniseringar av Johann Sebastian Bach, är vår modell kapabel att generera mycket övertygande koraler i stil med Bach, säger Hadjeres och Pachet. Faktum är att ungefär halva tiden lurar dessa kompositioner mänskliga experter att tro att de faktiskt var skrivna av Bach.

Maskininlärningstekniken är enkel. Hadjeres och Pachet börjar med att skapa en datamängd för att träna deras neurala nätverk. De börjar med 352 koraler komponerade av Bach och transponerar sedan dessa till andra tonarter som ligger inom ett fördefinierat sångområde, för att ge en datamängd på 2 503 koraler. De använder 80 procent av dessa för att träna sitt neurala nätverk att känna igen Bach-harmonier och resten för att validera det.

Maskinen producerar sedan egna harmonier i stil med Bach. Teamet testar enheten genom att ge den en melodi, som den sedan använder för att producera harmonier för tre andra röster, alt, tenor och bas.



Medan andra algoritmiska tillvägagångssätt också kan göra detta, är en viktig fråga hur väl de alla står sig i jämförelse med Bachs arbete. För att ta reda på det bad teamet mer än 1 600 personer att lyssna på två olika harmonier av samma melodi. Mer än 400 av dem var professionella musiker eller musikstudenter. Var och en fick bestämma vilken av de två harmonierna som lät mer som Bach. Teamet inkluderade även harmonier producerade av andra algoritmer i detta test.

Resultaten ger intressant läsning. När de fick en DeepBach-genererad harmoni, bedömde ungefär hälften av väljarna att den var komponerad av Bach. Det är betydligt högre än med musik som genereras av någon annan algoritm. Vi anser att detta är ett bra partitur med kunskap om komplexiteten i Bachs kompositioner, säger Hadjeres och Pachet.

Även när de konfronterades med musik komponerad av Bach själv, bedömde deltagarna det bara korrekt 75 procent av gångerna.



Det är ett intressant arbete som har fascinerande konsekvenser. Om det är möjligt för en djupinlärningsmaskin att producera koraler i Bachs stil, varför inte också i stil med andra tonsättare och kanske till och med andra musikstilar?

Det kan ge ett intressant sätt att analysera kompositioner och studera kreativitetens natur. Denna metod är inte bara tillämplig på Bachs koraler utan omfattar ett brett spektrum av polyfonisk koralmusik, från Palestrina till Take 6, säger Hadjeres och Pachet.

I många fall är det lättare sagt än gjort. Bachs koraler är mycket strukturerade och följer specifika regler i sin konstruktion, om än många av dem. Andra former av musik är inte alltid så organiserade.



Ändå har djupinlärningsmaskiner från Sonys labb och på andra håll börjat producera välrenommerade musikstycken. Det kommer inte som någon överraskning om dessa maskiner snart börjar ta sig an mer ambitiösa verk som symfonier, operor och mer. Bach skulle säkert ha blivit förvånad!

Ref: arxiv.org/abs/1612.01010 : DeepBach: En styrbar modell för generering av Bach-koraler

Dölj