Descripción del curso
El uso de la inteligencia artificial continúa haciéndose más común en nuestro entorno. En lo que respecta a la música y el sonido, muchos de nosotros usamos asistentes personales, como Siri o Alexa, que nos ayudan a transcribir automáticamente nuestra habla, o que pueden escuchar música y decirnos instantáneamente el autor o intérprete.
En este curso, aprenderemos los fundamentos teóricos, matemáticos, y computacionales que hacen posible el aprendizaje automático en las máquinas. Aprenderemos a usar datos de audio, como el habla, la música, y grabaciones ambientales, para entrenar redes neuronales artificiales que pueden escuchar y reconocer la información que posee el audio.
Primero, estudiaremos la representación digital del audio y la extracción de información usando métodos estandarizados como el análisis espectral. Luego, estudiaremos cómo entrenar algoritmos simples como regresión lineal y clasificación. Después aprenderemos a construir una red neuronal artificial desde cero, y cómo entrenarla intuitiva- y eficientemente. Finalmente, aprenderemos a usar Tensorflow para diseñar algoritmos que llevan a cabo la clasificación de géneros musicales, la transcripción automática del habla, y la generación artificial de audio.
Plan de estudio:
Capítulo 1. Fundamentos matemáticos del análisis espectral
Sesión1. Números reales, números imaginarios, y números complejos
Sesión 2. Representaciones cartesianas y polares de los números complejos
Sesión 3. El audio y su representación digital
Sesión 4. Funciones matemáticas
Sesión 5. La transformada discreta de Fourier (DFT)
Sesión 6. El DFT en Python3 desde cero
Capítulo 2. Reducción de dimensionalidad del audio digital
Sesión 1. El problema de la alta dimensionalidad del audio digital
Sesión 2. Reducción de dimensionalidad mediante la extracción de características
Sesión 3. El audio digital como matrices y vectores, y operaciones básicas de álgebra lineal
Sesión 4. El análisis de componentes principales
Sesión 5. PCA en Python3 aplicado al audio digital
Capítulo 3: Aprendizaje supervisado con regresión lineal, descenso por gradiente y validación cruzada
Sesión 1. Perspectiva general de técnicas de aprendizaje automático (Machine Learning)
Sesión 2. La regresión lineal
Sesión 3. Optimización de la regresión lineal aplicada al audio
Sesión 4. La validación cruzada
Sesión 5. Regresión lineal en Python 3 con aplicación al audio
Capítulo 4. Clasificación de géneros musicales con Softmax
Sesión 1. La regresión logística y su comparativa con la regresión lineal
Sesión 2. El gradiente de la entropía cruzada de la regresión logística
Sesión 3. La regresión logística en Python3 para la clasificación de arco vs pizzicato
Sesión 4. La función Softmax para la clasificación multiclase
Sesión 5. Softmax en Python3 para la clasificación de audio de 10 distintos géneros musicales
Capítulo 5. Clasificación de géneros musicales con redes neuronales artificiales
Sesión 1. La relación entre Softmax y una red neuronal artificial
Sesión 2. Definición y análisis matemático de una red neuronal artificial
Sesión 3. Descripción de las tres no-linealidades más comunes para una red neuronal
Sesión 4. El gradiente del objetivo respecto a los parámetros en una red neuronal artificial
Capítulo 6. Tensorflow2 y ejemplos de aplicaciones al audio digital
Sesión 1. La librería Tensorflow2 para el desarrollo de redes neuronales artificiales
Sesión 2. Red neuronal en Tensorflow2 para la clasificación de géneros musicales
Sesión 3. El modelo DeepSpeech para la transcripción de voz en audio digital
Sesión 4. Modelos neuronales para la síntesis de audio