Logo UAB
2023/2024

Fundamentos de Aprendizaje Automático

Código: 106572 Créditos ECTS: 6
Titulación Tipo Curso Semestre
2504392 Inteligencia Artificial OB 2 1

Contacto

Nombre:
Dimosthenis Karatzas
Correo electrónico:
dimosthenis.karatzas@uab.cat

Idiomas de los grupos

Puede consutarlo a través de este enlace. Para consultar el idioma necesitará introducir el CÓDIGO de la asignatura. Tenga en cuenta que la información es provisional hasta el 30 de noviembre del 2023.

Equipo docente externo a la UAB

Oguz Mulayim

Prerrequisitos

Haber cursado las asignaturas de primer curso de Fundamentos de Programación, Fundamentos de Matemáticas, Probabilidad y Estadística, e Ingeniería de Datos.


Objetivos y contextualización

El objetivo de esta asignatura es proporcionar una formación integral en un amplio abanico de técnicas y algoritmos fundamentales de aprendizaje automático que un ingeniero especialista en inteligencia artificial debe dominar.

Los estudiantes aprenderán, implementarán y utilizarán una variedad de técnicas que abarcan tanto el aprendizaje supervisado como el no supervisado. Obtendrán sus propias implementaciones, así como explorarán librerías existentes y aplicarán este nuevo conocimiento para resolver problemas prácticos.


Competencias

  • Desarrollar pensamiento crítico para analizar de forma fundamentada y argumentada alternativas y propuestas tanto propias como ajenas.
  • Identificar, comprender y aplicar los conceptos y técnicas fundamentales de representación del conocimiento, razonamiento y aprendizaje computacional para la solución de problemas de inteligencia artificial.
  • Identificar, comprender y aplicar los conceptos y técnicas fundamentales de representación del conocimiento, razonamiento y aprendizaje computacional para la solución de problemas de inteligencia artificial. 
  • Introducir cambios en los métodos y los procesos del ámbito de conocimiento para dar respuestas innovadoras a las necesidades y demandas de la sociedad.
  • Que los estudiantes hayan demostrado poseer y comprender conocimientos en un área de estudio que parte de la base de la educación secundaria general, y se suele encontrar a un nivel que, si bien se apoya en libros de texto avanzados, incluye también algunos aspectos que implican conocimientos procedentes de la vanguardia de su campo de estudio.
  • Que los estudiantes tengan la capacidad de reunir e interpretar datos relevantes (normalmente dentro de su área de estudio) para emitir juicios que incluyan una reflexión sobre temas relevantes de índole social, científica o ética.
  • Trabajar cooperativamente para la consecución de objetivos comunes, asumiendo la propia responsabilidad y respetando el rol de los diferentes miembros del equipo.

Resultados de aprendizaje

  1. Comprender el algoritmo de descenso de gradiente y sus variantes, y poder aplicarlo para resolver problemas de regresión y clasificación.
  2. Desarrollar pensamiento crítico para analizar de forma fundamentada y argumentada alternativas y propuestas tanto propias como ajenas.
  3. Entender los conceptos de bias y variance, y poder emplear métodos de preparación de datos y técnicas de regularización para obtener soluciones generalizables a partir de los datos disponibles.
  4. Formular la función de coste más adecuada para un problema concreto según las características de los datos experimentales y requerimientos / restricciones del problema. 
  5. Proponer nuevos métodos o soluciones alternativas fundamentadas.
  6. Que los estudiantes hayan demostrado poseer y comprender conocimientos en un área de estudio que parte de la base de la educación secundaria general, y se suele encontrar a un nivel que, si bien se apoya en libros de texto avanzados, incluye también algunos aspectos que implican conocimientos procedentes de la vanguardia de su campo de estudio.
  7. Que los estudiantes tengan la capacidad de reunir e interpretar datos relevantes (normalmente dentro de su área de estudio) para emitir juicios que incluyan una reflexión sobre temas relevantes de índole social, científica o ética.
  8. Trabajar cooperativamente para la consecución de objetivos comunes, asumiendo la propia responsabilidad y respetando el rol de los diferentes miembros del equipo.

Contenido

  • Fundamentos de aprendizaje automático
    • Aprendizaje supervisado y no supervisado
    • Regresión y clasificación
    • Descenso del gradiente
    • Regresión lineal y polinomial
    • Regresión logística
    • Over/under-fitting y decomposicion de bias y variance
    • Regularización
  • Métodos básicos de reconocimiento de patrones
    • Modelos de Nearest Neighbour y razonamiento basado en casos
    • Agrupación de datos
    • Kernel Methods y Support Vector Machines
    • Arboles de decisión y random forests
    • Experimentación y evaluación del rendimiento
  • Metodos probabilísticos
    • Bayesian parameter estimation
    • Gaussian Mixture Models
    • Probability density estimation
    • Expectation Maximisation

Metodología

Las técnicas y metodologías de Machine Learning están íntimamente relacionadas con los tipos de problemas que pretenden resolver. A lo largo de esta asignatura será esa tipología de problemas la que proporcionará la motivación de cada apartado y orientará la organización de los contenidos.

Habrá dos tipos de sesiones:

Clases de teoría: El objetivo de estas sesiones es que el profesor explique los antecedentes teóricos de la asignatura. Para cada uno de los temas estudiados se explica la teoría y formulación matemática, así como las correspondientes soluciones algorítmicas.

Sesiones de laboratorio: Las sesiones de laboratorio tienen como objetivo facilitar la interacción, el trabajo colaborativo y reforzar la comprensión de los temas vistos en las clases de teoría mediante la elaboración de casos prácticos que requieren el diseño de soluciones utilizando los métodos estudiados en las clases de teoría. La resolución de problemas se iniciará en la clase y se complementará con una serie de problemas semanales para trabajar en casa.

Las actividades anteriores se complementarán con un sistema de tutorías y consultas fuera del horario de clases.

Proyecto de la Asignatura: Durante el semestre se realizará un proyecto, donde los alumnos deberán resolver un problema específico de cierta complejidad. Se trabajará en grupos de 2-3 alumnos, donde cada miembro del grupo deberá contribuir por igual a la solución final. Estos grupos de trabajo se mantendrán hasta el final del semestre y deberán autogestionarse en cuanto a distribución de roles, planificación del trabajo, asignación de tareas, gestión de los recursos disponibles, conflictos,etc. Para desarrollar el proyecto, los grupos trabajarán de forma autónoma, mientras que algunas de las sesiones de laboratorio se utilizarán (1) para que el profesor presente la temática de los proyectos y discuta los posibles enfoques, (2) para monitorear el estado del proyecto y (3) para que los equipos presenten sus resultados finales.

Toda la información de la asignatura y los documentos relacionados que necesiten los alumnos estarán disponibles en el campus virtual (cv.uab.cat).

Nota: se reservarán 15 minutos de una clase dentro del calendario establecido por el centro o por la titulación para que el alumnado rellene las encuestas de evaluación de la actuación del profesorado y de evaluación de la asignatura o módulo.


Actividades

Título Horas ECTS Resultados de aprendizaje
Tipo: Dirigidas      
Clases de teoría 24 0,96 1, 3, 4
Sesiones de laboratorio 21 0,84 1, 2, 3, 4, 5, 7, 8
Tipo: Supervisadas      
Trabajo en problemas / proyectos 40 1,6 1, 2, 3, 4, 5, 7, 8
Tutorías 2 0,08 1, 2, 3, 4, 5, 7
Tipo: Autónomas      
Estudio individual 20 0,8 1, 2, 3, 4
Trabajo en problemas / proyectos 30 1,2 1, 2, 3, 4, 5, 7, 8

Evaluación

Para evaluar el nivel de aprendizaje del alumno, se establece una fórmula que combina la adquisición de conocimientos teóricos y prácticos, y la capacidad de resolución de problemas.

Nota final

La nota final se calcula ponderada de la siguiente forma y según las diferentes actividades que se llevan a cabo:

Nota final = 0.5 * Nota de teoría + 0.1 * Nota de problemas + 0.4 * Nota de Proyecto

Esta fórmula se aplicará siempre que la calificación de la evaluación teórica y práctica sea superior a 5. No hay restricción en la calificación del portafolio de problemas. Si al hacer el cálculo de la fórmula se obtiene> = 5 pero la nota de teoría o la nota de la evaluación práctica no alcanza el mínimo exigido, se otorgará una nota final de 4,5.

Nota de teoría

La nota de teoría tiene como objetivo evaluar las habilidades individuales del alumno en cuanto al contenido teórico de la asignatura, esto se realiza de forma continua durante el curso a través de dos exámenes parciales. La calificación general de teoría es el promedio de las calificaciones de los dos exámenes parciales.

El examen parcial # 1 se realiza a mitad de semestre y sirve para eliminar parte de la materia si se aprueba. El examen parcial # 2 se realiza al final del semestre y sirve para eliminar la parte del temario que viene después del parcial 1 si se aprueba.

Estos exámenes tienen como objetivo evaluar las habilidades de cada alumno de forma individualizada, tanto en la resolución de problemas utilizando las técnicas explicadas en clase, como valorando el nivel de conceptualización que ha hecho el alumno de las técnicas vistas. Para obtener una nota de teoría se requerirá que las calificaciones de ambos exámenes parciales sean superiores a 4. Si al hacer el cálculo de la fórmula se obtiene> = 5 pero las calificaciones de cualquiera de los dos exámenes parciales no alcanzan el mínimo requerido, entonces la nota final de teoría será de 4.5.

Examen de recuperación. En caso de que la nota de teoría no alcanza el nivel adecuado para aprobar, los alumnos pueden realizar un examen de recuperación, destinado a recuperar la parte reprobada (1, 2 o ambas) del proceso de evaluación continua.

Nota de Problemas

El objetivo de los problemas es que el alumno se entrene de forma continuada con los contenidos de la asignatura y se familiarice con la aplicación de los conceptos teóricos. Como prueba de este trabajo se solicita la entrega de un portafolio con las soluciones a los problemas semanales. Para obtener una nota de problemas se requiere que el alumno entregue un mínimo del 70% de los problemas. En caso contrario, la calificación de problemas será 0.

 

Nota de Proyecto

El proyecto de asignatura tiene un peso esencial en la nota global de la asignatura. Desarrollar el proyecto requiere que los estudiantes trabajen de manera colaborativa y diseñen una solución integral al reto definido. Además, los estudiantes deben demostrar sus habilidades de trabajo en equipo y presentar los resultados en clase.

El proyecto se evalúa a través de sus entregables, una presentación oral que los estudiantes realizarán en clase y un proceso de autoevaluación. La participación de los estudiantes en las tres actividades (preparación del entregable, presentación y autoevaluación) es necesaria para obtener la calificación de los proyectos. La calificación se calcula de la siguiente manera:

Nota Proyecto = 0.6 * Nota Entregable + 0.3 * Nota Presentación + 0.1 * Nota Autoevaluación

Si al realizar el cálculo anterior se obtiene >= 5 pero el estudiante no participó en ninguna de las actividades (entregables, presentación, autoevaluación), entonces se otorgará una calificación final de 4.5 al proyecto del curso.

En caso de no alcanzar la nota mínima, el grupo podrá recuperar el proyecto, con una nota máxima restringida a 7/10.

Notas importantes

Sin perjuicio de otras medidas disciplinarias que se estimen oportunas, y de acuerdo con la normativa académica vigente, las actividades de evaluación serán suspendidas con cero (0) siempre que un alumno cometa alguna irregularidad académica que pueda alterar dicha evaluación (por ejemplo, plagio, copia, cesión de copia, ...). Las actividades de evaluación calificadas de esta forma y por este procedimiento no serán recuperables. Si se necesita aprobar alguna de estas actividades de evaluación para aprobar la asignatura, esta asignatura se suspenderá directamente, sin posibilidad de recuperarla en el mismo curso.

En caso de que el alumno no haga ninguna entrega de problemas, no participe en ninguna evaluación práctica y en ningún de los exámenes, la nota correspondiente será "no evaluable". En cualquier otro caso, los "no presentados" computan como un 0 para el cálculo del promedio ponderado.

Para obtener matrícula de honor, la calificación final debe ser igual o superior a 9 puntos. Debido a que el número de estudiantes con esta distinción no puede exceder el 5% del número total de estudiantes inscritos en el curso, se le otorga a quien tenga la calificación final más alta. En caso de empate, se tendrán en cuenta los resultados de los exámenes parciales.

Más detalles sobre el proceso de evaluación sedarán en clase durante las primeras semanas del semestre. En caso de discrepancia entre esta guía y la información proporcionada en clase, prevalecerá la información proporcionada en clase.


Actividades de evaluación continuada

Título Peso Horas ECTS Resultados de aprendizaje
Entrega de problemas 10% 5 0,2 1, 2, 3, 4
Pruebas escritas 50% 4 0,16 1, 3, 4, 6
Pruebas practicas 40% 4 0,16 2, 5, 6, 7, 8

Bibliografía

  • Data Science from Scratch: First Principles with Python, Joel Grus, O'Reilly Media, 2015, 1st Ed.
  • Pattern Recognition and Machine Learning, Christopher Bishop, Springer, 2011
  • Model-Based Machine Learning, J. Winn, C. Bishop, early access: http://mbmlbook.com/
  • Introduction to Data Science. L. Igual, S. Seguí. Springer, 2017
  • Pattern Classification, Duda, Hart, and Stork, 2nd Ed., 2002

Software

Para los problemas y proyectos del curso se utilizará Python, y los módulos de Python: NumPy, MatPlotLib, SciKit Learn, Pandas