La macchina per l'apprendimento profondo ascolta Bach, quindi scrive la propria musica nello stesso stile

Johann Sebastian Bach è ampiamente considerato uno dei grandi compositori di musica barocca. Bach visse e lavorò in Germania durante il 18° secolo ed è venerato per la bellezza delle sue composizioni e per la sua padronanza tecnica dell'armonia e del contrappunto.





Una forma di musica in cui Bach eccelleva era un tipo di inno polifonico noto come cantata corale. Questi sono basati su testi luterani e cantati da quattro voci. Il compositore inizia con una nota melodia cantata dal soprano e poi compone tre armonie cantate dalle voci di contralto, tenore e basso. Bach ha scritto oltre 300 brevi composizioni corali.

Queste composizioni hanno attratto gli informatici perché il processo di produzione è graduale e algoritmico. Ma farlo bene è anche difficile a causa della delicata interazione tra armonia e melodia. Ciò solleva una domanda interessante: una macchina potrebbe creare corali nello stesso stile di Bach?

Oggi riceviamo una risposta grazie al lavoro di Gaetan Hadjeres e Francois Pachet presso i Sony Computer Science Laboratories di Parigi. Questi ragazzi hanno sviluppato una rete neurale che ha imparato a produrre cantate corali nello stile di Bach. Chiamano la loro macchina DeepBach (vedi anche AI ​​Songsmith Cranks Out Sorprendentemente orecchiabili melodie ).



Dopo essere stato addestrato sulle armonizzazioni corali di Johann Sebastian Bach, il nostro modello è in grado di generare corali altamente convincenti nello stile di Bach, dicono Hadjeres e Pachet. In effetti, circa la metà delle volte, queste composizioni ingannano gli esperti umani facendogli pensare che siano state effettivamente scritte da Bach.

La tecnica di apprendimento automatico è semplice. Hadjeres e Pachet iniziano creando un set di dati per addestrare la loro rete neurale. Iniziano con 352 corali composti da Bach e poi li traspongono ad altre chiavi che si trovano all'interno di un'estensione vocale predefinita, per fornire un set di dati di 2.503 corali. Usano l'80 percento di questi per addestrare la loro rete neurale a riconoscere le armonie di Bach e il resto per convalidarlo.

La macchina quindi produce armonie proprie nello stile di Bach. Il team testa il dispositivo assegnandogli una melodia, che poi utilizza per produrre armonie per altre tre voci, il contralto, il tenore e il basso.



Mentre altri approcci algoritmici possono fare questo, una domanda importante è quanto bene si confrontano tutti con il lavoro di Bach. Per scoprirlo, il team ha chiesto a più di 1.600 persone di ascoltare due diverse armonie della stessa melodia. Più di 400 di loro erano musicisti professionisti o studenti di musica. Ciascuno doveva determinare quale delle due armonie suonasse più simile a Bach. Il team ha incluso anche le armonie prodotte da altri algoritmi in questo test.

I risultati costituiscono una lettura interessante. Quando è stata data un'armonia generata da DeepBach, circa la metà degli elettori ha ritenuto che fosse composta da Bach. È significativamente più alto rispetto alla musica generata da qualsiasi altro algoritmo. Consideriamo questa una buona partitura conoscendo la complessità delle composizioni di Bach, dicono Hadjeres e Pachet.

Anche di fronte alla musica composta dallo stesso Bach, i partecipanti lo giudicavano correttamente solo il 75% delle volte.



È un lavoro interessante che ha implicazioni affascinanti. Se è possibile per una macchina di deep learning produrre corali nello stile di Bach, perché non anche nello stile di altri compositori e forse anche altri stili musicali?

Ciò potrebbe fornire un modo interessante per analizzare le composizioni e studiare la natura della creatività. Questo metodo non è applicabile solo ai corali di Bach, ma abbraccia un'ampia gamma di musica corale polifonica, da Palestrina a Take 6, ad esempio Hadjeres e Pachet.

In molti casi, sarà più facile a dirsi che a farsi. I corali di Bach sono altamente strutturati e seguono regole specifiche nella loro costruzione, anche se moltissime. Altre forme di musica non sono sempre così organizzate.



Tuttavia, le macchine di deep learning dei laboratori Sony e altrove hanno iniziato a produrre brani musicali apprezzati. Non sorprenderà se queste macchine inizieranno presto ad assumere opere più ambiziose come sinfonie, opere e altro ancora. Bach sarebbe stato sicuramente stupito!

Rif: arxiv.org/abs/1612.01010 : DeepBach: un modello orientabile per la generazione dei corali di Bach

nascondere