El objetivo del aprendizaje automático (machine learning en inglés) es el desarrollo de teorías, técnicas y algoritmos que permitan explorar métodos automáticos para inferir modelos a partir de datos (p. ej., para encontrar estructura o regularidades, o hacer predicciones ). Esta inferencia está basada en la observación de datos que representan información incompleta sobre un proceso. El aprendizaje automático es un punto de encuentro de diferentes disciplinas: la estadística multivariante y computacional, la informática, y la optimización, entre otros.
Profesorado
Responsable
Otros
-
Alexis Molina Martinez de los Reyes (
)
-
Luis Antonio Belanche Muñoz (
)
Competencias
Competencias Técnicas
Competencias técnicas
-
CE1 - Utilizar con destreza los conceptos y métodos matemáticos que subyacen los problemas de la ciencia y la ingeniería de los datos.
-
CE3 - Analizar fenómenos complejos mediante la probabilidad y estadística, y plantear modelos de estos tipos en situaciones concretas. Formular y resolver problemas de optimización matemática.
-
CE8 - Capacidad de elegir y emplear técnicas de modelización estadística y análisis de datos, evaluando la calidad de los modelos, validándolos e interpretándolos.
-
CE9 - Capacidad de elegir y emplear una variedad de técnicas de aprendizaje automático y construir sistemas que las utilicen para la toma de decisiones, incluso de forma autónoma.
Competencias Transversales
Transversales
-
CT3 - Comunicación eficaz oral y escrita. Comunicarse de forma oral y escrita con otras personas sobre los resultados del aprendizaje, de la elaboración del pensamiento y de la toma de decisiones; participar en debates sobre temas de la propia especialidad.
-
CT4 [Avaluable] - Trabajo en equipo. Ser capaz de trabajar como miembro de un equipo interdisciplinar, ya sea como un miembro más o realizando tareas de dirección, con la finalidad de contribuir a desarrollar proyectos con pragmatismo y sentido de la responsabilidad, asumiendo compromisos teniendo en cuenta los recursos disponibles.
-
CT7 - Tercera lengua. Conocer una tercera lengua, preferentemente el inglés, con un nivel adecuado oral y escrito y en consonancia con las necesidades que tendrán los titulados y tituladas.
Competencias Técnicas Genéricas
Genéricas
-
CG1 - Concebir sistemas computacionales que integren datos de procedencias y formas muy diversas, creen con ellos modelos matemáticos, razonen sobre dichos modelos y actúen en consecuencia, aprendiendo de la experiencia.
-
CG2 - Elegir y aplicar los métodos y técnicas más adecuados a un problema definido por datos que representen un reto por su volumen, velocidad, variedad o heterogeneidad, incluidos métodos informáticos, matemáticos, estadísticos y de procesado de la señal.
Objetivos
-
Formular el problema del aprendizaje automático a partir de datos, y conocer los tipos de tareas que se pueden dar.
Competencias relacionadas:
CE1,
CE9,
CG1,
CG2,
-
Organizar el flujo de resolución de un problema del aprendizaje automático, analizando las posibles opciones y eligiendo las más adecuadas al problema.
Competencias relacionadas:
CT4,
CT7,
CE1,
CE9,
CG1,
CG2,
-
Decidir, defender y criticar una solución para un problema de aprendizaje automático, argumentando los puntos fuertes y débiles del acercamiento.
Competencias relacionadas:
CT3,
CT4,
CE9,
CG2,
-
Conocer y saber aplicar técnicas lineales para la resolución de problemas de aprendizaje supervisado.
Competencias relacionadas:
CE3,
CE8,
CG2,
-
Conocer y saber aplicar técnicas de redes neuronales mono y multicapa para la resolución de problemas de aprendizaje supervisado.
Competencias relacionadas:
CE8,
CE9,
CG2,
-
Conocer y saber aplicar técnicas de máquinas de vectores soporte para la resolución de problemas de aprendizaje supervisado.
Competencias relacionadas:
CE8,
CE9,
CG2,
-
Conocer y saber aplicar las técnicas básicas para la resolución de problemas de aprendizaje no supervisado, con énfasis en herramientas de agrupamiento de datos.
Competencias relacionadas:
CE8,
CE9,
CG2,
-
Conocer y saber aplicar las técnicas básicas para la resolución de problemas de aprendizaje por refuerzo.
Competencias relacionadas:
CE8,
CE9,
CG2,
-
Conocer y saber aplicar técnicas de conjunto para la resolución de problemas de aprendizaje supervisado.
Competencias relacionadas:
CE8,
CE9,
CG2,
Contenidos
-
Introducción al Aprendizaje Automático
Información general y conceptos básicos. Descripción y planteamiento de los problemas atacados por el aprendizaje automático. Aprendizaje supervisado (regresión y clasificación), no supervisado (clustering) y semi-supervisado (por refuerzo y transductivo). Ejemplos modernos de aplicación.
-
Aprendizaje automático no supervisado: clustering
Definición y planteamiento del aprendizaje automático no supervisado. Introducción al clustering. Algoritmos probabilísticos: K-means y algoritmo Expectation-Maximization (E-M).
-
Aprendizaje automático supervisado (I): métodos lineales de regresión
Máxima verosimilitud para regresión. Funciones de error para regresión. Mínimos cuadrados: métodos analíticos (pseudo-inversa y SVD) e iterativos (gradient descent). Noción de regularización. Regresión regularizada L1 y L2: algoritmos ridge regression, LASSO y Elastic Net.
-
Aprendizaje automático supervisado (II): métodos lineales para clasificación
Máxima verosimilitud para clasificación. Funciones de error para clasificación. Clasificadores generativos Bayesianos: LDA/ QDA/RDA, Naïve Bayes y k-nearest neighbours.
-
Métodos jerárquicos: árboles de decisión
Construcción general de árboles de decisión. Criterios de split: ganancia en entropía y criterio de Gini. Regularización en árboles de decisión. Árboles CART para regresión y clasificación.
-
Métodos de conjunto (ensemble)
Introducción a los métodos de conjunto (ensemble). Bagging y Random Forests. Boosting. Adaboost y variantes.
-
Métodos basados en kernels
Introducción al aprendizaje con funciones de kernel. Regresión lineal regularizada kernelizada. Funciones de kernel básicas. Complejidad y generalización: dimensión de Vapnik-Chervonenkis. Máquinas de Vectores Soporte.
Actividades
Actividad
Acto evaluativo
Desarrollo del tema 1 de la asignatura
Objetivos:
1
Contenidos:
Aprendizaje autónomo
3.3h
Desarrollo del tema 2 de la asignatura
Objetivos:
1
3
7
Contenidos:
Aprendizaje autónomo
6.6h
Desarrollo del tema 3 de la asignatura
Objetivos:
1
4
Contenidos:
Desarrollo del tema 4 de la asignatura
Objetivos:
1
2
4
Contenidos:
Aprendizaje autónomo
8.3h
Desarrollo del tema 5+6 de la asignatura
Objetivos:
1
2
5
Aprendizaje autónomo
11.6h
Desarrollo del tema 7 de la asignatura
Objetivos:
1
2
5
Control de la práctica
Objetivos:
1
2
3
4
5
6
7
8
9
Semana:
8 (Fuera de horario lectivo)
Entrega de la práctica
Objetivos:
1
2
3
4
5
6
7
8
9
Semana:
15 (Fuera de horario lectivo)
Seguiment i tutories de la pràctica
Seguiment i tutories de la pràctica
Objetivos:
2
3
4
6
7
9
Contenidos:
Metodología docente
Las clases de teoría introducen todo los conocimientos, las técnicas, conceptos y resultados necesarios para alcanzar un nivel bien fundamentado y comprensible. Estos conceptos se ponen en práctica en las clases de laboratorio. En estas se proporciona código python que permite resolver ciertos aspectos de un problema de análisis de datos con las técnicas correspondientes al tema en curso. Este laboratorio también sirve de guía para la parte correspondiente de la práctica, que desarrollan los alumnos a lo largo del curso. Algunas de las horas de laboratorio se podrán usar para resolver problemas (sin ordenador) en el aula de teoría.
Hay un trabajo práctico evaluable, que trabaja un problema real a elegir por el propio estudiante y que recoge e integra los conocimientos y las competencias de todo el curso. También se evalúa mediante el trabajo práctico la competencia genérica de comunicación eficaz escrita.
Método de evaluación
La asignatura se evalúa mediante un examen parcial, un examen final y un trabajo práctico en el que se ataca un problema real, redactando el correspondiente informe.
La nota final se calcula como:
Nota Asignatura = 0,4 * Trabajo + 0,6 * max (Final, 1/3 * Parcial + 2/3 * Final)
Para los estudiantes que puedan y quieran concurrir a la reevaluación, la nota de examen de reevaluación sustituirá max (Final, 1/3 * Parcial + 2/3 * Final).
Bibliografía
Básica:
-
Pattern recognition and machine learning -
Bishop, C.M,
Springer, 2006. ISBN: 0387310738
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991003157379706711&context=L&vid=34CSUC_UPC:VU1&lang=ca
-
Machine learning: a probabilistic perspective -
Murphy, K.P,
MIT Press, 2012. ISBN: 9780262018029
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991003972109706711&context=L&vid=34CSUC_UPC:VU1&lang=ca
-
Learning from data: concepts, theory, and methods -
Cherkassky, V.S.; Mulier, F,
John Wiley, 2007. ISBN: 0471681822
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991003624509706711&context=L&vid=34CSUC_UPC:VU1&lang=ca
-
The elements of statistical learning: data mining, inference, and prediction -
Hastie, T.; Tibshirani, R.; Friedman, J,
Springer, 2009. ISBN: 0387848576
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991003549679706711&context=L&vid=34CSUC_UPC:VU1&lang=ca
Capacidades previas
Nocions mitjanes de probabilitat i estadística.
Nocions mitjanes d'algebra lineal, càlcul matricial i anàlisi real
Bon nivell de programació en llenguatges d'alt nivell