El 29 de mayo, comenzaremos el curso de
Python Neural Networks , que habla sobre el aprendizaje automático profundo y le enseña cómo resolver las tareas más complejas que administra un ingeniero de aprendizaje profundo. Para mostrar cuán interesante y versátil es el trabajo en el campo del aprendizaje automático, le sugerimos que se familiarice con una serie de traducciones de artículos sobre el tema de las redes neuronales en Python.

¿Qué es MuseNet?
Hemos creado y presentamos MuseNet, una red neuronal profunda que puede crear composiciones musicales de cuatro minutos utilizando diez instrumentos diferentes. MuseNet experimenta combinando diferentes estilos musicales: desde el país hasta las obras maestras de Mozart y los inmortales éxitos de The Beatles.
La base de la red no es fácilmente nuestra percepción y comprensión de la música, sino la capacidad de encontrar muestras de armonía, ritmo y estilo en cientos de miles de archivos MIDI, y luego crear sus propias obras. MuseNet Neural Network utiliza la misma tecnología que el GPT-2, un modelo a gran escala capacitado para predecir las mejores secuencias tanto en texto como en audio. Conocer muchos estilos le permite a la red crear combinaciones completamente únicas de música de diferentes generaciones.
Fichas de compositor e instrumental
Creamos tokens para compositores y varios instrumentos musicales para dar a MuseNet el máximo control sobre las muestras que crea la red. En el curso de la capacitación, se agregan tokens de compositores e instrumentos a cada muestra, lo que ayuda a la red a aprender a usar esta información en el pronóstico.
Estructura a largo plazo
MuseNet utiliza
los núcleos recalculados y optimizados de
Sparse Transformer para entrenar la red de 72 niveles. En nuestra opinión, la generación de música es un nicho muy exitoso para probar y desarrollar capacidades de Sparse Transformer.
Recopilación y procesamiento de datos.
Recopilamos datos para capacitar a MuseNet en una amplia variedad de fuentes.
Los proyectos
ClassicalArchives y
BitMidi nos ayudaron mucho, y
pusieron sus colosales colecciones a nuestra disposición. También utilizamos colecciones de música variada que se encuentran en Internet: jazz, música pop, música africana, india y árabe. Además, utilizamos la colección
MAESTRO .
El entrenamiento se lleva a cabo en datos en serie, teniendo en cuenta el conjunto de tokens, le pedimos a la red que prediga el próximo token. Intentamos usar varios métodos diferentes para codificar archivos MIDI. Al principio, pensamos en un enfoque de acordes, que consideraba cada combinación de notas que sonaban simultáneamente como un acorde separado y asignaba el token correspondiente. También tratamos de condensar patrones musicales, concentrándonos en el comienzo de cada nota.
bach piano_strings start tempo90 piano:v72:G1 piano:v72:G2 piano:v72:B4 piano:v72:D4 violin:v80:G4 piano:v72:G4 piano:v72:B5 piano:v72:D5 wait:12 piano:v0:B5 wait:5 piano:v72:D5 wait:12 piano:v0:D5 wait:4 piano:v0:G1 piano:v0:G2 piano:v0:B4 piano:v0:D4 violin:v0:G4 piano:v0:G4 wait:1 piano:v72:G5 wait:12 piano:v0:G5 wait:5 piano:v72:D5 wait:12 piano:v0:D5 wait:5 piano:v72:B5 wait:12
Durante el entrenamiento, nosotros:
- Movimos las notas en una escala de tono (durante el entrenamiento, el número de transposiciones disminuye);
- Agregamos y reducimos tanto el sonido general como el sonido de muestras individuales;
- Trabajamos con el tiempo: aceleramos y ralentizamos fragmentos individuales de la composición;
- Solíamos trabajar con tokens de mezcla .
Además, usamos algo así como un crítico musical incorporado: le pedimos que evalúe la composición y decida si esta muestra se crea a partir de los datos presentados o si es antigua. Dicha estimación permite seleccionar muestras durante la generación.
Integración
Para hacer que el modelo tenga un contexto más estructural, agregamos integraciones. Además de las integraciones posicionales estándar, hemos agregado integraciones que rastrean el flujo de tiempo en las muestras. Esto le permite incrustar correctamente y simultáneamente notas que suenan simultáneamente. También agregamos dos integraciones estructurales que permiten a MuseNet comprender en qué sección de la composición general se debe ubicar una muestra en particular.
MuseNet ya da conciertos
Los interesados pueden familiarizarse con el trabajo de MuseNet, la red neuronal ya
ofrece sus propios conciertos en línea en Twitch . Para aquellos que estén interesados en crear redes neuronales en Python y el aprendizaje automático profundo, llevamos a cabo
un seminario web abierto donde hablaremos sobre el programa del curso y las habilidades que recibirán los estudiantes.