Universitat Internacional de Catalunya

MÓDULO 4: Machine Learning

MÓDULO 4: Machine Learning
10
13947
1
Segundo semestre
OB
Lengua de impartición principal: catalán

Otras lenguas de impartición: inglés, castellano

Profesorado

Presentación

En los últimos 10 años toda una serie de algoritmos avanzados, que engloban lo que se conoce como Machine Learning (ML) o Aprendizaje Automático y casi desconocidos hasta el momento por la empresa actual, se han puesto a disposición. Estos algoritmos se han reunido bajo un marco teórico-práctico y, a través de lenguajes de tipo open-source pueden se accedidos, serializados e implementados tanto en apps, en modelos de decisión empresariales y en automatización de tareas donde se esté ante un entorno incierto.

En este curso se abordan las dos ramas más conocidas del Machine Learning, que son las que engloban a los algoritmos de corte supervisado o no supervisado, aunque se ofrece, en cada caso, una leve base teórica. Sin embargo, el curso está enfocado a que el alumno adquiera conocimiento de los distintos algoritmos de tipo (ML), que tiene a su disposición bajo entornos de R, Python, etc.

Los retos que el alumno se va a encontrar, en el uso de este nuevo paradigma, junto, por supuesto, con las ventajas derivadas, hace que su uso siendo una de ellas las potentes mejoras de predictividad, frente a la estadística clásica que en general era aplicada antes del 2010.

Por último, se abre la puerta a técnicas más elaboradas que serían continuadas en módulos posteriores como son las basadas en Inteligencia Artificial (IA).

Requisitos previos

Conocimiento de informática básica y de un dominio básico tanto de R como Python

Conocimientos básicos de estadística, sobre todo en lo que atañe a los modelos clásicos de Regresión Lineal, ANOVA, Decision Trees, …

Conocimientos de técnicas básicas no supervisadas como el algoritmo kmeans, Ward, etc

Objetivos

  • Concepto de ML y diferencia con los modelos clásicos anteriores

  • Concepto de ML y alineamiento con los objetivos empresariales 

  • Concepto de ML y relación con las fuentes de información: Puesta en Producción & Re-entrenamiento automático

  • Concepto de Serialización de Modelos de ML 

  • Concepto y generación Framework Analítico

Resultados de aprendizaje de la asignatura

El alumno tendrá que ser capaz de coordinarse dentro de un grupo de 3-4 miembros para la generación de una aplicativo automático en Shiny que muestre el ciclo completo en un proyecto de modelización estadística. Se espera que logre un dominio en el uso de los algoritmos fundamentales del ML y que adquiera intuición en el uso de éstos para resolver los distintos problemas que se plantean a nivel empresarial ofreciendo apoyo analítico para la toma de decisiones de corte táctico y estratégico, mediante la automatización y la sistematización de procesos que den respuesta rápida y eficaz a las cuestiones que se plantean bajo un entorno de incertidumbre de modo objetivo y basado en la explotación de la información disponible.

Contenidos

Se plantea una serie de contenidos que recorren las técnicas creadas y desarrolladas a partir de los años 90 y popularizadas a partir del año 2010 bajo el concepto de Machine Learning. Con dichos contenidos, no sólo se pretende ofrecer una enumeración de algoritmos estadísticos-matemáticos, sino que se trata de dar en todo momento coherencia entre dichos algoritmos y las claves metodológicas para su construcción y aplicación

Tema 1: Reglas de Asociación:
1.1. Introducción al Aprendizaje no Supervisado
1.2. Análisis Cluster
1.3. Basket Market Analysis
1.4. Redes Bayesianas

Tema 2: Modelos Lineales:
2.1. Modelos de Regresión Lineal
2.2. Extensiones del Modelo de Regresión Lineal
2.3. Modelos de Variables Instrumentales
2.4. De la Estadística Clásica a los Actuales Modelos de Machine Learning
2.5. Regressiones Lasso y Ridge
2.6. Implementación de Modelos Shiny I

Tema 3: Clasificadores Lineales y no Lineales:
3.1. Análisis Discriminante Lineal y Cuadrático
3.2. Regresión Logística
3.3. Modelos Logísticos Ridge - Lasso
3.4. El Modelo KNN
3.5. Support Vector Machine
3.6. Implementación de modelos con shiny

Tema 4: Automatización de Modelos de Series Temporales:
4.1. Introducción a los modelos de series temporales
4.2. Modelos ARIMA
4.3. Análisis Financiero e introducción a los modelos ARCH y VAR
4.4. Modelos retro-alimentado en datos de series temporales
4.5. Modelos de ML en Series Temporales
4.6. Modelo Prophet

Tema 5: Decision Tree, Random Forest y métodos ensemble
5.1. Árboles de regresión y de decisión
5.2. Técnicas de Bosques Aleatorios: Bagging, Boosting, Random Forest, XGBOOST
5.3. Mixtura de Modelos: Ponderación, Voting Classifier y Stacking
5.4. Interpretabilidad de Modelos de ML: LIME, SHAP, XEMP

Tema 6: Neural Network
6.1. Aprendizaje no Supervisado en Redes Neuronales: Redes de Kohonen
6.2. Aprendizaje Supervizado: Perceptrones simples y multicapa
6.3. Modelos Avanzados de Redes Neuronales: Introducción al Deep Learning
6.4. Redes Neuronales y Series Temporales : Introducción a los modelos LTSM

Metodología y actividades formativas

Modalidad totalmente presencial en el aula



A lo largo del módulo se sigue una metodología de Evaluación Continua donde se combinarán tanto diversas actividades individuales como diversos trabajos en grupo cuyos criterios generales de evaluación se describen en el siguiente apartado
La impartición del tema se lleva a cabo a base de “píldoras” de breves explicaciones teóricas con debate de la técnica estadística e inmediatamente se desarrolla un ejemplo aplicado de los conceptos comentados anteriormente
Se valorará la asistencia, la participación y el debate en clase
Se hará uso de entornos de programación habituales en la empresa con datos libres y software estadístico de licencia tipo GNU que los alumnos podrán descargar en su PC para seguir las prácticas de un modo más personalizado y a su propio ritmo
Se incentiva que el alumno utilice indistintamente R y Python para resolver problemas prácticos de la asignatura.

Sistemas y criterios de evaluación

Modalidad totalmente presencial en el aula



Los bloques a evaluar y valorar a lo largo del módulo van a ser 3, donde cada uno se valora en una escala del 1 al 10, que posteriormente se promedian de modo ponderado tal y como se describe a continuación:

-Test individuales de 30 a 40 preguntas que se realizarán en un tiempo de 45-60 minutos sobre lo impartido cada 2 módulos. Habrá 2 exámenes tipo test (de las sesiones 1 y 2 y las sesiones 3 y 4). Cada pregunta consta de 4 cuestiones con solo 1 correcta y cuya suma total irá en una escala del 1 al 10. Las cuestiones mal contestadas restarán ¼ de su valor. La ponderación total de los test será 30% del total

-Trabajos en grupos: Se detallan distintos trabajos en grupo que se anunciarán al final de la segunda sesión. Estos trabajos van a ser mini-proyectos muy enfocados a la utilización de las técnicas desarrolladas puntuándose sobre todo: el trabajo en equipo, la originalidad sobre las líneas dadas que realice el grupo y la versatilidad de los entregables (todas estas pautas serán más detalladas en la descripción de dichos trabajos). La entrega del trabajo será a lo sumo 4 semanas a contar desde la finalización del módulo. El peso total del trabajo será del 60% del total. Esta nota afectaría a todos los alumnos que componen el grupo

-Colaboración y participación en clase: Se evalúa el comportamiento y sobre todo la participación en el módulo por parte de los alumnos. El planteamiento de preguntas y cuestionarse en todo momento lo que se está recibiendo lectivamente será considerado muy positivamente siempre y cuando se realice en un adecuado entorno constructivo. El peso total en la evaluación será del 10%

El aprobado del módulo se obtiene si tras la valoración ponderada se pasa el valor de 5 y se informará a los alumnos tras el plazo de entrega de los trabajos de grupo.

Bibliografía y recursos

Tema 1:
Hahsler, M; Grün, B; Hornik, K (2005) Arules – A Computational Environment for Mining Association Rules and Frequent Item Sets Journal of Statistical Software, October 2005, Vol 14, Issue 15
Grimmett, G; Stirzaker, D (2004) Probability and Random Process 3ed Oxford University Press ISBN 0-19-857223-9
Korl, K; Nichols, A (2011) Bayesian Artificial Intelligence 2ed Ed. CRC Press ISBN 978-1-4398-1591-5
Scutari, M (2010) Learning Bayesian Networks with the bnlearn R Package Journal of Statistical Software, July 2010, Vol 35, Issue 3

Tema 2:
Matilla García, M; Pérez Pascual, P.; Sanz Carnero, B. (2013) Econometría y Predicción Ed. UNED ISBN 9788448183103
Gareth, J.; Witten, D.; Hastie, T. y Tibshirani R. (2013) An Introduction to Statistical Learning with Applications in R Springer Science + Business Media New York ISBN 978-1-4614-7137-0
Grimmett, G; Stirzaker, D (2004) Probability and Random Process 3ed Oxford University Press ISBN 0-19-857223-9
Müller, A. C.; Guido, S (2017) Introduction to Machine Learning with Python Ed O’Relly ISBN 978144936415

Munzert, S.; Rubba, C.; Meissner, P.; Nyhuis, D. (2015) Automated Data Collection with R John Wiley & Sons, Ltd ISBN 9781118834817
Korl, K; Nichols, A (2011) Bayesian Artificial Intelligence 2ed Ed. CRC Press ISBN 978-1-4398-1591-5
Scutari, M (2010) Learning Bayesian Networks with the bnlearn R Package Journal of Statistical Software, July 2010, Vol 35, Issue 3
Tennenbaum, J; Director, B (2005) How Gauss Determined The Orbit of Ceres Journal of Statistical Software, October 2005, Vol 14, Issue 15

Tema 3:
Carmona Suárez J. (2014) Tutorial sobre Máquinas de Vectores Soporte (SVM) UNED http://www.ia.uned.es/~ejcarmona/publicaciones/[2013-Carmona]%20SVM.pdf
Cortes, C.; Vapnik, V. (1995) Support-vector networks. Machine Learning, 20(3), 273-297
Gareth, J.; Witten, D.; Hastie, T. y Tibshirani R. (2013) An Introduction to Statistical Learning with Applications in R Springer Science + Business Media New York ISBN 978-1-4614-7137-0
Fisher, R. A. (1936) The Use of Multiple Measurements in Taxonomic Problems Annals of Eugenics. 7 (2): 179-188

James G.; Witten D.; Hastie T. Tibshirani R. (2013) An Introduction to Statistical Learning Springer ISBN 978-1-4614-7137-02

Müller, A. C.; Guido, S (2017) Introduction to Machine Learning with Python Ed O’Relly ISBN 978144936415


Tema 4:
Matilla García, M; Pérez Pascual, P.; Sanz Carnero, B. (2013) Econometría y Predicción Ed. UNED ISBN 9788448183103
Cowpertwait, P. S. P.; Metcalfe, A. V. (2009) Introductory Time Series with R Springer ISBN 978-0387-88697-5

Tema 5:
Benjamin H.; Mayr A.; Robinzonov N. Schmidt M. (2012) Model-based Boosting in R A Hands-on Tutorial Using the R Package mboost Technical Report Number 120, 2012 Department of Statistics University of Munich

James G.; Witten D.; Hastie T. Tibshirani R. (2013) An Introduction to Statistical Learning Springer ISBN 978-1-4614-7137-02

Müller, A. C.; Guido, S (2017) Introduction to Machine Learning with Python Ed O’Relly ISBN 978144936415


Tema 6:
Bonifacio, M; Sanz Molina, A. (2001) Redes Neuronales y Sistemas Borrosos Ed. RAMA ISBN 84-7897-466-0
Chollet, F; Allaire J. J. (2018) Deep Learning with R Ed. Manning ISBN 9781617295546
Gareth, J.; Witten, D.; Hastie, T. y Tibshirani R. (2013) An Introduction to Statistical Learning with Applications in R Springer Science + Business Media New York ISBN 978-1-4614-7137-0
Hastie, T.; Tibshirani, R.; Friedman, J. (2008) The Elements of Statistical Learning. Data Mining, Inference, and Prediction Springer
Terence, L. F. (1999) Feedforward Neural Network Methodology Springer-Verlag New York, Berlín, Heidelberg ISBN 0-387-98745-2
Wehrens, R.; M. C. Buydens, L. (2007) Self and Super-organizing Maps in R: The Kohonen Package. Journal of Statistical Software Oct 2007, Vol 21, Issue 5