lunes
15 FebMódulo 7: Aprendizaje Computacional Predictivo
Esta semana comenzamos con el séptimo módulo de nuestra IV Edición del Máster en Advanced Analytics on Big Data de la UMA. Un módulo complementario al anterior (Aprendizaje Computacional Descriptivo) e impartido nuevamente por el docente Javier Del Ser Lorente.
Este segundo módulo profundiza técnicamente en diferentes técnicas de análisis predictivo de datos. Cada una de las secciones de este módulo está estructurada de manera independiente, cubriendo los fundamentos técnicos, la historia, ejemplos de aplicación y prácticas en laboratorio tuteladas por el ponente.
Al término de este módulo el alumno será capaz de identificar en qué casuísticas y escenarios de aplicación son aplicables cada una de las técnicas de análisis de datos abordadas en el módulo, así como las diferencias, ventajas e inconvenientes de cada una de ellas.
Docentes
Javier Del Ser Lorente (javier.delser@tecnalia.com).
Tutorías presenciales Miércoles 18.00 a 21.00.
Tutorías virtuales (email, foros, chat, Skype): bajo demanda.
Distribución horaria
- Clase 1: Técnicas de Aprendizaje Computacional Predictivo: repaso (Javier Del Ser Lorente)
- Clase 2: Modelos por vecindad, Bayesianos, Árboles de Decisión y Ensembles (Javier Del Ser Lorente)
- Clase 3: Máquinas de Soporte Vectorial y Fundamentos de Computación Neuronal (Javier Del Ser Lorente)
- Clase 4: Modelos de predicción para series temporales (Javier Del Ser Lorente)
- Clase 5: Limpieza y preprocesado de datos (1/2) (Javier Del Ser Lorente)
- Clase 6: Limpieza y preprocesado de datos (2/2) (Javier Del Ser Lorente)
Tecnologías
Python, Sklearn. kNN, Modelos SVM, Decision Tree, Random Forest, Naïve Bayes, Neural Networks, validación cruzada, métricas de scoring, limpieza de datos, …
Pre-Requisitos
conocimientos básicos de Python.
Planificación docente
Clase 1 (teórica):
- Repaso al proceso de modelización predictiva
- Extracción de características
- Validación cruzada y generalización
- Problemas prácticos
- Conexión con optimización y modelización prescriptiva
Clase 2 (teórica):
- Clasificación/regresión por vecindad (k-vecinos)
- Inferencia y aprendizaje bayesiano
- Introducción formal a la regla de Bayes y a la inferencia Bayesiana.
- Hipótesis MAP/ML para clasificación y predicción.
- Aprendizaje de redes bayesianas a partir de datos.
- Árboles de decisión y regresión
- Introducción: árboles de clasificación y regresión. Motivación.
- Inducción de árboles: algoritmos ID3, C4.5. Criterios de partición y podado.
- Extensión a clasificación multi-clase y regresión.
- Mezclas de modelos
- Bagging versus boosting
- Bosques aleatorizados (“Random Forest”).
- Boosting Classifier.
- Ejemplos prácticos de aplicación.
Prácticas: KNN, Pipeline, Optimización
Clase 3 (teórico-práctica):
- Máquinas de vectores soporte
- Introducción teórica.
- Tipos de máquinas de vectores soporte. Kernels. Construcción.
- Selección del modelo: validación cruzada y búsqueda por rejilla.
- Máquinas de vectores soporte para clasificación multi-clase y regresión.
- Máquinas de vectores soporte para clasificación de una única clase (one-class).
- Computación Neuronal
- Introducción e historia de la Computación Neuronal.
- Estructura básica de una red neuronal: aprendizaje y adaptación.
- Fundamentos de las redes neuronales artificiales (ANN).
- Ejemplos prácticos de aplicación.
Prácticas: Notebook SVM, Notebook ANN
Clase 4 (teórico-práctica):
- ¿Qué es una serie temporal?
- Modelos de predicción para series temporales
- Modelos simples: medias móviles, smoothing
- Consideraciones sobre estacionalidad, tendencia, ruido
- ¿Se puede modelizar la predicción de series temporales como un problema de aprendizaje supervisado?
Prácticas: Notebook Time Series Forecasting
Clase 5 (teórica):
- Preprocesamiento de datos: propósitos
- Integración de datos
- Normalización de datos
- Transformación de datos
- Imputación de datos
Clase 6 (teórica):
- Identificación de ruido (aprendizaje supervisado)
- Identificación de atipicalidades (aprendizaje supervisado/no supervisado)
- Reducción de dimensionalidad
- Balanceo de clases
- Consideraciones finales
- Revisión de dudas puntuales
Material previo
Detallados a lo largo de la teoría. Para curiosos antes de comenzar el módulo, recomiendo:
- N. Cristianini, J. Shawe-Taylor. Support Vector Machines and other kernel-based learning methods.
- C.-C. Chang, C.-J. Lin. LIBSVM: a library for support vector machines. ACM Trans. on Intel. Sys. and Tech. 2, 27:1-27:27 (2011).
- R.-E. Fan, K.-W. Chang, C.-J. Hsieh, X.-R. Wang, C.-J. Lin. LIBLINEAR: A library for large linear classification. JMLR 9, 1871-1874 (2008).
- Scikit-learn development team. Support Vector Machines (user guide). Scikit-learn documentation. http://scikit-learn.org/stable/modules/svm.html
- Unsupervised Feature Learning and Deep Learning tutorial: http://ufldl.stanford.edu/wiki/index.php/UFLDL_Tutorial
- S. Garcia, Julian Luengo, Francisco Herrera, “Data preprocessing in Data Mining”, Springer, 2015
- S.G. Makridakis, S.C. Wheelwright, R.J. Hyndman, “Forecasting”, 3rd Ed., Wiley &
- Sons, 1998
- P.J. Brockwell, R.A. Davis, «Introduction to Time Series and Forecasting», 2nd ed. Springer, 2002
- A. K. Palit, D. Popovic, “Computational Intelligence in Time Series Forecasting: Theory and Engineering Applications”, Springer, 2005
- 11) C. Chatfield, “The analysis of time series: An Introduction”, Chapman & Hall/CRC, 2003
Deja un comentario