Durante el mes de mayo de 2020 se ha celebrado el primer AI Song Contest, un concurso internacional de inteligencia artificial creativa. Está inspirado por el festival de la canción de Eurovisión y consiste en elegir la mejor canción compuesta con ayuda de IA.

El concurso ha sido organizado por la emisora de televisión pública holandesa VPRO y la radio NPO 3FM.

AI Song Contest

(IA = inteligencia artificial, en inglés AI, artificial intelligence)

En este artículo, vas a encontrar:

Introducción

Este artículo es un resumen de toda la información que hay en la página oficial, que recomiendo leer: (¡pero cuidado que hay spoilers nada más entrar!) https://www.vprobroadcast.com/titles/ai-songcontest.html Como está todo en inglés, hay partes que he redactado y resumido, y muchos otros fragmentos son traducciones automáticas de todo lo que cuentan allí.

Aunque el concurso no está directamente relacionado Eurovisión, sí que se inspira en la forma y en el espíritu, con algunas diferencias:

  • No participan países, sino equipos.
  • Las canciones no se interpretan en directo ni hay una gala televisada con actuaciones, sino que se puntúan las canciones ya grabadas.

Como decía al principio, se trata de un concurso de canciones creadas con ayuda de IA. Insisto en la palabra ayuda, porque a día de hoy no existe (todavía) ningún sistema lo suficientemente inteligente y creativo como para generar una canción completa de calidad comparable a la que haría un equipo humano de músicos. Así que (por ahora) se usa únicamente como herramienta de apoyo.

En palabras de los organizadores:

Al combinar los votos de la audiencia y el jurado, queremos desafiar a los equipos a llegar lo más lejos posible en el uso de AI, pero también tratar de hacer una canción que atraiga a un público más amplio.

El concurso premia el resultado final de la obra, pero prestando atención a dos puntos:

  1. ARTÍSTICO: la calidad musical, es decir, si la canción es agradable, creativa, si la gente la escucharía…
  2. TÉCNICO: Cómo se le ha sacado partido a la inteligencia artificial, qué grado de automatización se ha conseguido…

El ganador se elige mediante un sistema doble de votación: un jurado especializado en inteligencia artificial y una votación abierta al público.

Este año se ha celebrado la primera edición y los organizadores esperan repetirlo cada año y que se convierta en una referente del estado de la tecnología y que se pueda ver la evolución a lo largo del tiempo. Los avances tecnológicos en este campo son asombrosos y es de prever que en las próximas ediciones, la “intervención humana” sea cada vez menor.

Resumen de las reglas:

  1. Cada equipo tiene que crear una canción de una duración máxima de 3 minutos con la ayuda de IA.
  2. Los equipos podían usar su propia IA, pero también se les permite usar modelos y algoritmos existentes para generar melodías, armonías, letras y/o audio. Nota: existen muchas librerías y soluciones de código abierto. En el mundo de la programación informática, es muy habitual (y absolutamente recomendable) compartir conocimientos y trabajar en comunidad.
  3. Los equipos tienen que ser transparentes. Tienen que proporcionar información sobre su proceso y los sistemas que utilicen, documentándolo para que el jurado pueda valorar el esfuerzo, la creatividad y la inteligencia a la hora de usar la tecnología.
  4. Cuanto más contenido musical creado con IA, más puntos pueden ganar por parte del jurado.
  5. La canción final es un archivo de audio. No hay vídeo con brillo y glamour involucrado en el proceso de votación.
  6. Los equipos competidores deben trabajar en Europa o en países afiliados a Eurovisión. Perdón por el tío Sam.
  7. Compartir es demostrar interés. Pedimos a todos los competidores que compartan sus algoritmos, modelos y códigos de código abierto si es posible.

Y aunque no está en las reglas lo aclaro yo: las canciones no se interpretan en directo.


Cada canción puede ganar hasta 24 puntos: 12 puntos del jurado de expertos en IA y otros 12 del público internacional.

  • El jurado evalúa varios aspectos de la canción: ¿Cómo se utilizan los datos? ¿La canción tiene una estructura interesante? ¿En qué medida la IA ha generado la melodía, armonía, letra y audio?

  • La votación por parte de la audiencia se realizó por internet entre el 10 de abril y el 10 de mayo. Cada uno podía elegir evaluar tantas canciones como quisiera (no se trataba de elegir una sola favorita). El público debía puntuar varios aspectos: la canción en conjunto, la letra, la originalidad y, por supuesto, Eurovisionismo. Cada aspecto se valora entre 0 y 3 puntos, de tal forma que el máximo de puntos por canción son 12.

Sobre la IA y la música

Hay muchas técnicas de IA que son aplicables a la música: aprendizaje automático, el procesamiento del lenguaje natural, las redes neuronales y el aprendizaje profundo… Para los aficionados a la informática estos términos pueden ser familiares, pero para los que no, voy a hacer un microrresumen para todos los públicos (y con poco rigor técnico). Si no os interesa… saltad a la siguiente sección, donde presento las canciones :)

La aplicación más práctica de la IA consiste en diseñar un sistema que “aprenda” a partir de ejemplos y datos existentes. A diferencia de los programas informáticos “clásicos”, en los que el programador especifica, paso a paso, cómo se debe comportar el sistema y qué decisiones tomar, de forma determinista, un sistema de aprendizaje automático extrae patrones y reglas por sí mismo, y con esos patrones es capaz de generar creaciones parecidas.


Esta técnica de entrenamiento se puede aplicar tanto a melodías (partituras) como a textos (letras de canciones), de la misma forma que a cualquier otra área, como reconocimiento de imágenes, traducción, juegos…

Los sistemas de aprendizaje profundo (que aparecerán mencionados muchas veces en este artículo) constan de:

  • Modelo (o dataset), que viene a ser una enorme “base de datos” bien clasificada, a partir de la cual la IA aprende. Al proceso por el cual se crea el modelo se le llama “entrenamiento”. Un modelo podría ser, por ejemplo, la letra de todas y cada una de las canciones que han participado en Eurovisión, y datos relacionados con ellas, como su puntuación o género musical.
  • Red neuronal que hace cosas a partir del modelo. Siguiendo con el ejemplo, podríamos diseñar una red que evalúe las palabras, temas o melodías y las relacione con la puntuación que obtuvieron, de forma que pueda “inventar” datos y seleccionar los que, según las reglas de su modelo, podrían tener más éxito.

¿Qué diferencia hay entre algo generado mediante inteligencia artificial y algo generado mediante algoritmos clásicos? No es una pregunta tonta, ya que la informática lleva décadas usándose para TODO. Para ilustrarlo, voy a poner un ejemplo. Sistemas de síntesis de voz (como la voz de Loquendo, Siro o Asistenten de Google), existen desde la década de los 50.

Esos sistemas, tradicionalmente, estaban programados con un conjunto de “reglas” para la pronunciación, entonación, pausas… que intentan cubrir todas y cada una de las posibilidades. Un detalle bastante complicado es la pronunciación de los números: por ejemplo, los números de teléfono los solemos agrupar de dos en dos, o de tres en tres. En los códigos postales pronunciamos los ceros, pero en las cantidades no: 28080 puede ser “ventiocho cero cero ochenta” o “ventiochomil ochenta”. En la programación imperativa el programador tiene que prever todas las posibilidades e intentar diferenciarlas: ¿el número va cerca de una palabra relacionada con un precio? ¿El número tiene 9 cifras y parece un teléfono?

Con un sistema de aprendizaje automático todo se hace al revés. El programador le dice al sistema: aquí tienes un millon de ejemplos de textos escritos y su correspondiente millón de grabaciones. El sistema deduce por sí mismo las reglas (que pueden ser tremendamente intrincadas) y cuando le pides que convierta un texto a voz lo hace siguiendo los mismos patrones que ha encontrado en los datos con los que lo has entrenado.

Para que esto funcione, es necesario que el entrenamiento se lleve a cabo con una cantidad enorme de datos, mientras más grande mejor. Por eso, han surgido iniciativas como Common Voice, un proyecto público en el que cualquiera puede colaborar aportando grabaciones de su voz, reCAPTCHA, que mostraban fragmentos de textos que no se podían leer con claridad para que un humano los interpretara. Con millones de respuestas “humanas” cada día, se pudo perfeccionar un sistema de reconocimiento automático de caracteres.


Por si alguien tiene interés por el tema, dejo algunos enlaces para que podáis explorar:

  • Tensorflow, una de las herramientas de IA más populares: https://www.tensorflow.org/js/demos
  • Magenta, una aplicación de tensorflow enfocada principalmente a la música: https://magenta.tensorflow.org/demos. Hay muchos muchos ejemplos.
  • GPT-2 es un modelo de lenguaje escrito. Digamos que contiene patrones, reglas y ejemplos de cómo son los textos “reales” que escriben los humanos, y se puede combinar con una red neuronal para hacer “cosas” con esas reglas, tales como detectar los sentimientos predominantes en un texto, los temas de los que habla.. o bien inventar textos que parezcan “reales” (donde reales significa “creados por humanos”) https://openai.com/blog/better-language-models/
  • Una aplicación práctica de GPT-2: escribe una frase y la IA sigue por tí: https://talktotransformer.com/
  • Un ejemplo de generación de imágenes mediante IA. ¡Estas personas no existen! https://www.thispersondoesnotexist.com/
  • Un generador de letras mediante IA. A partir de un tema, un género y una palabra: https://theselyricsdonotexist.com/
  • Un impresionante generador de canciones, al completo, incluyendo voz https://openai.com/blog/jukebox/. Los resultados rozan el valle inquietante y son algo parecido a canciones, sin serlo del todo. A pesar de que el sonido es un poco grotesco, de todos los proyectos que he visto que tengan relación con la música, este es el que me parece más avanzado y realista.

Participantes

Estos son los 13 equipos participantes. He escrito lo que me ha parecido más destacable de cada canción, pero en los enlaces donde pone “más información” hay mucha más información por si queréis indagar.

NOTA: los vídeos que he puesto no funcionan si tienes activado AdBlock o algo similar. Si tienes problemas para verlos, en algunas canciones también pongo enlaces a youtube o spotify.

1er equipo: Uncanny Valley

  • País: Australia
  • Canción: Beautiful the World

La única responsable de la letra y la melodía de Beautiful the world es una IA entrenada con canciones de Eurovisión. Además, usaron otra IA entrenada con sonidos de animales australianos, como koalas y demonios de Tasmania, para generar pequeños fragmentos que se utilizan en la canción a modo de instrumentos.

Una vez generados estos elementos, por separado, el equipo confió en un productor musical con experiencia y en vocalistas reales para darle vida a la canción. El resultado final es una canción moderna y en la que la intervención de la inteligencia artificial pasa desapercibida.

Diría que únicamente se nota en algunas frases incoherentes y absurdas en la letra, pero precisamente ese “surrealismo” le aporta algo original.

2º equipo: Beatroots

  • País: Bélgica
  • Canción: Violent Delights Have Violent Ends

Sin tener experiencia en el uso de inteligencia artificial para generar música, se pusieron el listón alto: la inteligencia artificial tenía que crear lo máximo posible. Han diseñado un sistema que, simplemente eligiendo la estructura de la canción, un instrumento y el género, crea la canción al completo. Se apoya en otras soluciones existentes y las combina para que no necesite más más intervención humana.

Beatroots sabía que el resultado no iba a ser éxito mundial. Les bastaba con que pareciera una canción y que (en sus propias palabras) sus madres pudieran estar orgullosas.

Usaron la base de datos de ultimate-guitar.com para crear la melodía y los acordes. La letra están completamente escrita por una IA y la voz se ha generado a partir de un sintetizador vocal llamado Sinsy.

Nota: Sinsy es un software abierto desarrollado por la Universidad de Nagoya hace una década que es capaz de generar un archivo de sonido con una voz artificial a partir de una letra y una partitura. http://www.sinsy.jp

Usando este método, cada uno de los miembros del equipo generó su propia canción e hicieron una preselección interna utilizando el mismo sistema de votación que Eurovision. Delicias violentas tienen finales violentos fue la ganadora.

Mi opinión personal: el resultado es horrible (tanto que es hasta gracioso) pero admirable a nivel técnico porque todo es completamente artificial.

3er equipo: Polaris

  • País: Bélgica
  • Canción: Princess

Polaris compuso su canción con el software Magenta de Google, que fue entrenado usando 1.5 millones de archivos MIDI. Lo bueno de esto es que cualquiera puede jugar con él, ya que es de código abierto. La melodía, el ritmo y la línea de bajo se generaron simultáneamente de una vez por la IA.

Por otro lado, el equipo utilizó datos proporcionados por la organización de AI Song Contest para generar la letra. Estos datos consistía en las letras de 200 canciones y utilizaron la red neuronal GPT-2 de OpenAI. Grosso modo, este sistema encuentra patrones y características comunes en los datos de ejemplo (rimas, longitud de las fases, estructuras y repeticiones…) y genera un nuevo texto que cumpla esos mismos patrones.

Sin embargo, combinar las letras con la melodía resultó ser difícil de automatizar, por lo que el equipo lo hizo de forma manual.

4º equipo: Algomus & Friends

  • País: Francia
  • Canción: I Keep Counting

El equipo está formado por un grupo de expertos en análisis de música con ayuda de ordenadores. Todos tocan algún instrumento musical aunque no están acostumbrados a componer, y menos de esta manera, así que este concurso era una oportunidad para ponerse a prueba.

Cada sección de la canción (estrofa, estrbillo, etc.) se abordó por separado para crear un esquema de acorde, letra y melodía.

Para las letras, el equipo comenzó a partir de los pares de palabras más comunes en las canciones de Eurovisión, como ‘mi corazón’ y ‘el sol’, y usó esto como base para que la IA creara la letra. El primer intento fue un éxito instantáneo: un buen equilibrio entre oraciones gramaticalmente correctas y margen para la interpretación poética.

Para la melodía, también utilizaron material generado por una IA, aunque todo se pasó por un filtro humano hasta encontrar algo que sonara bien.

Finalmente, visitaron a Niam, artista y estudiante de la Universidad de Lille, para cantar la letra. Combinan su voz con una sintética.

5º equipo: DataDada

  • País: Francia
  • Canción: Je secoue le monde

Lo primero que destaca de esta canción es que no está interpretada por un ser humano, sino por un chatbot con el elegante nombre francés Robert de Barretin.

Robert es fruto de un trabajo anterior, ya que el equipo DataDada, que se formó en 2014, ha producido una gran cantidad de trabajo musical a la vanguardia de la tecnología y la creatividad. Puedes probarlo aquí: https://sandbox.data.bingo/robert/prototype/robert/

Para el concurso, este equipo alimentó a su AI con datos de las tres canciones con mejor puntuación cada año y utilizaron varias herramientas de de código abierto para generar música y texto a partir de los datos.

A partir de esos elementos, el equipo utilizó un software y técnicas de producción musical tradicionales (Ableton) para dar forma a una canción coherente que “la gente quisiera escuchar”. El equipo quería que la comopsición fuera ‘tonta, ingeniosa y sorprendente’. De acuerdo con la filosofía de Dada, la letra tenía que ser original e inusual. Como invitada especial, el equipo invitó a la cantante Lily Gray a ayudar con los arreglos musicales.

6º equipo: Dadabots x Portrait XO

  • País: Alemania
  • Canción: I’ll Marry You, Punk Come

En cada edición del Festival de Eurovisión hay un participante que adopta un enfoque inusual. En el AI Song Contest han sido Dadabots x Portrait XO. Este trío está formado por Portrait XO, un artista que experimenta con IA y nuevos medios; Zack Zukowski, un experto en aprendizaje automático que además toca cinco instrumentos musicales; y CJ Carr, especialista en aprendizaje profundo aplicado al metal, rock y punk.

SampleRNN es un sistema de aprendizaje automático para generar sonidos, pensado para la generación de voces sintéticas que se desarrolló alrededor de 2016.

El equipo utilizó un método único para escribir la letra: entrenaron esta red neuronal con canciones acapella de la década de 1950. El resultado de SampleRNN eran balbuceosm, que sonaban parecido a voces, pero sin sentido. Intentaron reconocer palabras en esos sonidos (pareidolia) y de ahí nació la letra de me casaré contigo, ven, Punk. A partir de ahí construyeron una historia: una niña humana se enamora de un niño artificial durante una epidemia severa.

7º equipo: Ligatur

  • País: Alemania
  • Canción: Offshore in Deep Water

Utilizaron IA para crear, por separado, las partes de una canción pop típica, estrofas, puente y estribillo, puente, y luego los introdujeron manualmente en software de producción de audio, para generar una canción coherente.

Para la letra, dejaron que la IA generara cien letras y luego eligieron sus diez favoritos. De entre esas, se quedaron con la que se ajustaba más al sombrío ambiente del audio.

La pareja quería influir en la pieza lo menos posible, pero tiene algo de humanidad: André cantó la letra, aunque su voz se combina con un vocoder.

8º equipo: OVGneUrovision

  • País: Alemania
  • Canción: Traveller in Time

OVGneUrovision es un equipo de una sola persona: Richhiey Thomas, de Mumbai, residente en Alemania. Thomasn no tenía ninguna formación musical y comenzó el proceso viendo tutoriales de composición de canciones en YouTube.

Creó Traveler in Time al vincular creativamente varios sistemas, como Magenta. Creó su canción sección por sección, usando su intuición para seleccionar lo que le parecía que sonaba bien. La batería proviene de la caja de ritmos de Google Creative Lab, mientras que Magenta MusicVAE creó la línea de bajo para la pista.

Thomas dice que la IA lo ayudó a hacer música. ‘Sé cómo debería sonar una canción, pero no soy capaz de tocarla solo en un piano. Con las notas generadas por IA, puedo hacerlo’.

Esta canción instrumental.

Comentario personal: Esta canción es simple y puede que suene básica, pero es el resultado que puede conseguir cualquiera con herramientas que están disponibles y sin necesidad de ninguna formación musical.

9º equipo: KTH/KMH+Doremir

  • País: Suecia
  • Canción: Come To Ge Ther

El equipo KTH / KMH + Doremir fue con un enfoque más arriesgado. En lugar de generar melodías y letras por separado, utilizaron un algoritmo para crear ambas a la vez. Para cada tono de determinada longitud se buscaba una sílaba que encajara. No conseguían oraciones demasiado largas, así que al final la composición se convirtió en un puzle en el que unieron piezas creadas por IA y retoques humanos.

Combinan una voz sintética, de Google WaveNet y la de una joven cantante, Olga Rosenberg.

10º equipo: New Piano

  • País: Suiza
  • Canción: Painful Words

Ante la elección de hacer una canción accesible con bastantes intervenciones humanas, o experimentar con la mayor cantidad de IA posible aunque la canción sonase peor, eligieron lo segundo. Esta pareja se planteó el AI Song Contest como un reto para descubrir qué podían conseguir con tanta IA y tan poco ser humano como sea posible.

El equipo produjo la letra entrenando un sistema GPT-2 con un conjunto de datos de 1.562 letras de canciones de Eurovisión, y utilizó una tecnología de generación neural de melodías condicionadas por letras para hacer que las palabras encajen en la música (proyecto de código abierto).

Emplearon un sintetizador Mellotron para las partes vocales y añadieron esa voz artificial a la melodía generada por ordenador. La canción fue editada usando el programa Audacity.

Las habilidades de New Piano son técnicas más que musicales, y esto queda claro al oir la canción.

Nota personal: el título es muy adecuado, duele oír, pero como demostración técnica es interesante.

11er equipo: Can AI Kick It

  • País: Países Bajos
  • Canción: Abbus

Team Can AI kick it descubrió que la IA puede tener tendencias bastante subversivas, anarquistas y revolucionarias. El generador de letras creaba frases como “¡Queremos revolución, matar al gobierno, matar al sistema!” Puede ser porque el generador se basó en textos de Reddit. En cualquier caso, el equipo decidió comprometerse: la IA y el artista Willie Wartaal harían un dueto e intentarían sacarle jugo a la letra.

A medida que la canción avanza, Wartaal suena cada vez más robótico, como si su voz se fundiese con la IA y esta se hace cargo, liderando la revolución.

Un miembro del equipo, Arran Lyonm ya había desarrollado un sistema con un algoritmo de generación musical basado en redes neuronales. El equipo utilizó este sistema como punto de partida para su proceso. El sistema de autoaprendizaje estudió un conjunto de datos que consta de 5000 canciones pop y 250 pistas de Eurovisión.

Por otro lado, Anja Volk, Iris Ren y varios estudiantes de maestría de la Universidad de Utrecht contribuyeron con melodías de un modelo de aprendizaje profundo entrenado tanto en canciones de Eurovision como en una enorme de base datos de canciones populares holandesas.

Para hacer que el algoritmo sea aún más efectivo, Ashley Burgoyne diseño un sistema llamado: Eurovision Hit Predictor, que estudia los elementos clave de una melodía pegadiza y lo compara con canciones de Eurovisión (y sus resultados). El sistema de inteligencia artificial de Arran Lyon creó cientos de melodías y líneas de bajo, que luego se enviaron al Eurovision Hit Predictor para determinar su atractivo.

En resumen, el equipo tomó muchas pequeñas piezas generadas independientemente por IA y las unió como un rompecabezas para generar algo musical y lírico.

Una curiosidad sobre el título:

Pensamos que sería divertido preguntarle a nuestro generador de letras “¿Qué es Abbus?” para ver lo que piensa que significa (ya que inventó esta palabra). Aparentemente significa ‘una nube naciente’. Google define naciente como “recién nacido y comenzando a mostrar signos de potencial futuro”, o “recién generados en forma reactiva” … ¿Podría ser esto más apropiado?

12º equipo: COMPUTD / Shuman&Angel-Eye

  • País: Países Bajos
  • Canción: I Write A Song

¿Qué hace que una canción sea pegadiza? Durante una sesión de lluvia de ideas con todo el equipo, establecieron varias condiciones previas para los algoritmos de aprendizaje automático. Tenía que ser una canción alegre, por lo que todas las canciones con un sentimiento negativo se filtraron de la base de datos. El equipo quería evitar que su canción se convirtiera en una copia o colección de muestras de canciones existentes de Eurovisión. Para esto, el resultado de una posible melodía siempre se comparó con el conjunto de datos original y si sonaba demasiado parecida a una canción ya existente la descartaban.

El equipo quería componer una letra que tratara precisamente sobre una IA que escribe una canción. Intentaron modificar el sitema generador de letras para que incluyera siempre esas palabras, pero los resultados no fueron demasiado buenos y finalmente cogieron fragmentos pequeños y los retocaron para unirlos de forma coherente.

13er equipo: Brentry

  • País: Reino Unido
  • Canción: Hope Rose High

Hope Rose High es un producto de la determinación de Tom Collins. Inicialmente trabajó con otra persona, pero este proyecto quedó varado a mediados de marzo cuando estalló la pandemia y casi toda Europa entró en confinamiento. Collins, profesor de tecnología musical en la Universidad de York, decidió darle la vuelta a esta situación y retomó el proyecto junto con su esposa, Nancy Carlisle, basándose en los mismos datos que Collins había utilizado en su primera colaboración. El resultado es una canción totalmente diferente que utiliza el mismo material fuente, prueba de las innumerables posibilidades que ofrece la IA.

Nancy modificó la melodía, los acordes y las partes de batería generados por la IA para convertirla en una balada, y Collins escribió la línea de bajo.

El texto también fue creado por una IA, pero la combinación, instrumentación y producción de estos materiales proviene de Collins y Carlisle.

El nombre de su equipo, Brentry, es un guiño irónico a Brexit.

Conclusión

Si has escuchado todas o algunas de las canciones, habrás podido comprobar que los resultado y la calidad son tremendamente diferentes. Parece que las canciones que han sido cantadas, producidas y ensambladas por humanos suenan mucho mejor. Al menos, más parecidos a lo que estamos acostumbrados.

Sin embargo, hay otros elementos, como las letras y las melodías, cuya artificialidad pasa desapercibida. De hecho, algunas letras generadas por IA pueden ser graciosas y tener una cierta interpretación irónica o surrealista. Para muestra, probad esta página: https://theselyricsdonotexist.com/.

Aquí está el video con las puntuaciones. La gala se celebró y se emitió por internet el 12 de mayo de 2020. En la primera mitad se presenta a los participantes y a continuación se revelan las puntuaciones del jurado y del público.


Y como extra, voy a poner aquí una canción publicada el año pasado, también creada con técnicas de inteligencia artificial. Aunque no tiene nada que ver con este concurso, aunque va en la misma línea. Se llama Blue Jeans and bloody tears y es un dúo entre una voz sintética y el ganador de Eurovisión en 1978 Izhar Cohen (con la icónica canción A-ba-ni-bi). Es un temazo y la letra es de un surrealismo exquisito:

Baby summer’s gone
It’s gone for the both of us
And tears will always have wet eyes
I’ll cry but I’ll survive
On a mission
I will let you go forever
Blue jeans and bloody tears