Fundamentos de Deep
Fernanda Mora
Learning y una aplicación
de energía eléctrica en México
para predecir la demanda
Marzo 2017
Contenido
- Objetivo
- Motivación
- Desarrollo
- Resultados
- Conclusiones
Objetivo
2 grandes objetivos
- Dar un recorrido general por Deep Learning
- Aplicar Deep Learning a un problema relevante en México
Motivación
Deep Learning es atractivo
Imagen tomada de Bengio et al., 2016
¿Qué es esto?
Imagen tomada de Bengio et al., 2016
¿Cómo sabría una computadora que es una persona?
Output (object identity)
3rd layer (object parts)
2nd layer
(corners and contours)
1st layer (edges)
Input layer (pixels)
- Modelos con múltiples capas o etapas de procesamiento no lineal de información.
- Métodos para el aprendizaje supervisado y/o no supervisado para la representación de atributos usando capas sucesivas y más abstractas.
¿Qué es Deep Learning?
Muy usado por empresas innovadoras
Facebook: reconocimiento de personas
Skype: traductor
La energía eléctrica en México es relevante
- Pieza clave para la motorización del país
- Fuente de energía renovable y limpia
- No puede almacenarse a gran escala
- Lo que se produce y no se consume, se pierde. Si no se produce suficiente, hay escasez
- Privatización de la energía
Energía eléctrica en México
Producción y consumo de energía eléctrica en México 2006-2015
Pérdida de 6,357,854 MW
4.4% de lo previsto
294,345 hogares mexicanos por un año
$5,041,778,222 pesos
Fuente: Comisión Federal de Electricidad. Costos y consumos promedio para Noviembre 2016
Desarrollo
Recorrido por Deep Learning
"Conjunto de algoritmos que intentan modelar abstracciones de alto nivel usando arquitecturas de múltiples transformaciones no lineales"
¿Qué es Deep Learning?
- Aumento drástico en las capacidades de procesamiento de los microchips (i.e., general-purpose graphical processing units/GPGPUs)
- Aumento significativo del volumen de datos
- Avances en aprendizaje de máquina
¿Por qué se volvió tan popular?
Deep Learning como subárea de inteligencia artificial
Deep Learning aprende en varios niveles
Aprendizaje
¿Qué no es profundo?
- Modelos lineales
- Redes neuronales con una capa oculta
- Máquinas de Soporte Vectorial
Muchas arquitecturas de Deep Learning
Perceptrón multicapa
Redes de creencia profunda
Redes convolucionales profundas
Máquinas de Boltzmann profundas
Redes neuronales recurrentes
...
Aplicación
Red neuronal recurrente
Red neuronal recurrente
Definición.- Una red neuronal recurrente es una red neuronal que simula un sistema dinámico discreto de la siguiente manera:
Y la función de pérdida asociada:
Pascanou et al., 2013
Red neuronal recurrente se le puede agregar más profundidad
Pascanou et al., 2013
Red neuronal recurrente profunda
1
2
3
4
Pascanou et al., 2013
Gradiente que explota y decae
Tomada de "On the difficulty of training Recurrent Neural Networks". Pascanu, et al., 2013
No modela dependencias temporales grandes
Tomada de "Supervised Sequence Labelling with Recurrent Neural Networks". Graves, 2012
Tomada de "Supervised Sequence Labelling with Recurrent Neural Networks". Graves, 2012
Propuesta: Long short term memory network (Hochreiter y Schmidhuber, 1997)
Bloques de memoria
Tomada de "Supervised Sequence Labelling with Recurrent Neural Networks". Graves, 2012
Las puertas permiten conservar la información del gradiente
LSTM completa
Tomada de "Supervised Sequence Labelling with Recurrent Neural Networks". Graves, 2012
Propuesta: Deep LSTM
Dropout(p)
Retraso(m)
Stateful
# Bloques
Tamaño del batch
# Épocas
Función de activación
Número de capas
Keras
Tuning:
Software:
Modelos tradicionales
- Regresión lineal:
- Red neuronal superficial: perceptrón de una sola capa
Resultados
Serie no estacionaria
Serie no estacionaria y escalada
Resultados modelos tradicionales
Regresión lineal
Red neuronal superficial
Modelo Deep Learning: caso base
Modelo Deep Learning
Dropout
Retraso
Modelo Deep Learning
Bloques
Stateful
Modelo Deep Learning
Epocas
Tamaño del batch
Función de activación
Modelo Deep Learning
Número de capas
Resultados de los modelos (RMSE)
- Modelo de Deep Learning: 0.01778
- Modelo de regresión lineal: 0.0189
- Modelo de red neuronal superficial: 0.0279
Modelo de Deep Learning tiene -6% RMSE que regresión lineal, -36% RMSE que red neuronal superficial
Conclusiones
Deep Learning
- La profundidad permite aprender representaciones abstractas y jerárquicas de los datos
- Agunos modelos de deep Learning son capaces de representar una función más eficientemente que los algoritmos de aprendizaje máquina usuales
- Deep Learning alcanza resultados sin precedentes en reconocimiento de imágenes, voz y texto, pero ha sido poco explorado para poblemas sociales y económicos
- El entrenamiento de redes profundas es difícil
Energía eléctrica en México
- Período de 2006-2015
- Pérdida total de 6,357,854 MW: 4.4% de lo producido
- $5,041,778,222 pesos
- 294,345 hogares mexicanos por un año
Modelo Deep Learning
- Las RNN permiten modelar series temporales
- Es posible añadir más profundidad a las RNN
- Es difícil entrenar RNN
- Se usó una LSTM porque se entrena satisfactoriamente y porque modela dependencias a largo plazo
- Se agregó profundidad a la LSTM y se optimizó según varios criterios
- Se comparó con modelos tradicionales obteniendo un error de -6% y -36%
Trabajo futuro
- Incrementar el tamaño del dataset
- Correr el modelo sin preprocesar los datos
- Análisis con el impacto de los resultados
- Incorporar más elementos para el tunning de la LSTM
- Survey sobre el estado de los resultados teóricos de Deep Learning
¡Gracias!
Presentación_examen_licenciatura
By Sophie Germain
Presentación_examen_licenciatura
- 1,575