Logo UAB
2020/2021

Redes Neuronales y Aprendizaje Profundo

Código: 104407 Créditos ECTS: 6
Titulación Tipo Curso Semestre
2503740 Matemática Computacional y Analítica de Datos OB 3 2
La metodología docente y la evaluación propuestas en la guía pueden experimentar alguna modificación en función de las restricciones a la presencialidad que impongan las autoridades sanitarias.

Contacto

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

Uso de idiomas

Lengua vehicular mayoritaria:
español (spa)
Algún grupo íntegramente en inglés:
No
Algún grupo íntegramente en catalán:
No
Algún grupo íntegramente en español:
No

Otras observaciones sobre los idiomas

El material escrito de la asignatura se preparará en inglés.

Prerequisitos

Haber cursado las asignaturas de la materia 7: Inteligencia Artificial y Aprendizaje Computacional, y las asignaturas de Modelización e Inferencia (2º), Análisis Complejo de Datos (2º), y Teoría de la Información (3º).

Objetivos y contextualización

Esta asignatura tiene como objetivo dar una introducción práctica a los modelos de redes neuronales y el aprendizaje profundo.

Los estudiantes consolidarán y ampliarán sus antecedentes teóricos, construyendo sobre asignaturas anteriores sobre aprendizaje automático y complementando el conocimiento previo con nuevos conceptos sobre el diseño de redes neuronales, las herramientas y sistemas de aprendizaje profundo, y las técnicas de aprendizaje para dichos modelos.

Los estudiantes deben terminar esta asignatura, teniendo un amplio conocimiento de las diferentes arquitecturas de redes neuronales y sus escenarios de uso típicos, y una capacidad demostrada para elegir críticamente la arquitectura correcta y los mecanismos de aprendizaje adecuados para cada tarea.

Finalmente, los estudiantes recibirán capacitación práctica y adquirirán experiencia en el uso de los sistemas actuales de aprendizaje profundo para resolver tareas concretas.

Competencias

  • Evaluar de manera crítica y con criterios de calidad el trabajo realizado.
  • 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 puedan transmitir información, ideas, problemas y soluciones a un público tanto especializado como no especializado.
  • Que los estudiantes sepan aplicar sus conocimientos a su trabajo o vocación de una forma profesional y posean las competencias que suelen demostrarse por medio de la elaboración y defensa de argumentos y la resolución de problemas dentro de su área de estudio.
  • Resolver problemas relacionados con el análisis de grandes volúmenes de datos a través del diseño de sistemas inteligentes y de aprendizaje computacional.
  • Trabajar cooperativamente en un contexto multidisciplinar asumiendo y respetando el rol de los diferentes miembros del equipo.
  • Utilizar eficazmente bibliografía y recursos electrónicos para obtener información.

Resultados de aprendizaje

  1. Comprender los mecanismos de aprendizaje profundo basado en redes neuronales para poder diseñar y aplicar la arquitectura más adecuada a un problema determinado.
  2. Conocer y aplicar las técnicas de aprendizaje más adecuadas para resolver problemas computacionales en diferentes casos de estudio.
  3. Entender y evaluar los resultados y limitaciones de las técnicas de aprendizaje más comunes.
  4. Evaluar de manera crítica y con criterios de calidad el trabajo realizado.
  5. Identificar y definir soluciones computacionales en múltiples dominios para la toma de decisiones basada en la exploración de alternativas, el razonamiento incierto y la planificación de tareas.
  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 puedan transmitir información, ideas, problemas y soluciones a un público tanto especializado como no especializado.
  8. Que los estudiantes sepan aplicar sus conocimientos a su trabajo o vocación de una forma profesional y posean las competencias que suelen demostrarse por medio de la elaboración y defensa de argumentos y la resolución de problemas dentro de su área de estudio.
  9. Trabajar cooperativamente en un contexto multidisciplinar asumiendo y respetando el rol de los diferentes miembros del equipo.
  10. Utilizar eficazmente bibliografía y recursos electrónicos para obtener información.

Contenido

  • Redes neuronales
    • Perceptron
    • Multi-layer perceptrón
    • Backpropagation
  • Proceso de entrenamiento
    • Inicialización
    • Algoritmos de optimización
    • Técnicas de regularización
    • Tareas y funciones de coste
  • Arquitecturas profundas de redes neuronales
    • Redes convolucionales
    • Redes recurrentes
    • Hopfield nets y Boltzmann machines
    • Aprendizaje no supervisado (autoencoders)
    • Aprendizaje de métricas (siamese y triplet networks)
    • Generative Adversarial Networks

Metodología

El diseño de las redes neuronales se guía por 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 sección y dirigirá la organización de los contenidos.

 

Habrá tres 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 la formulación matemática, así como las soluciones algorítmicas correspondientes.

Sesiones de práctica: las sesiones de prácticas tienen como objetivo facilitar la interacción y reforzar la comprensión de los temas vistos en las clases de teoría, trabajando a través de casos prácticos que requieren el diseño de una solución en la que se utilizan los métodos vistos en las clases de teoría. Estas sesiones se iniciarán en la clase y se complementarán con un conjunto semanal de problemas para resolver en casa.

Sesiones de proyectos: las sesiones de proyectos complementan las sesiones de práctica semanales. Son sesiones en las que se realizan diferentes tipos de actividades relacionadas con la realización de una serie de proyectos. Los estudiantes trabajarán en colaboración en pequeños equipos. Los proyectos tendrán una base común y una parte abierta que los equipos pueden decidir abordar de diferentes maneras. Durante las sesiones del proyecto (1) el profesor presentará y discutirá los proyectos y posibles enfoques, y (2) los equipos presentarán sus resultados a la clase. Los equipos deberán diseñar e implementar una solución, gestionar la distribución y organización del trabajo a realizar, y presentar los resultados finales al profesor y al resto de los alumnos.

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

 

La asignatura seguirá un paradigma de metodología mixta, donde las explicaciones teóricas (clases teóricas) se combinarán con ejemplos prácticos (sesiones de práctica), cambiando entre las dos modalidades según sea necesario durante las sesiones. La relación entre teoría y práctica será aproximadamente de 2 a 1 en el aula, complementada por actividades autodidactas (conjuntos de problemas) y actividades de trabajo en equipo (proyectos).

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

Actividades

Título Horas ECTS Resultados de aprendizaje
Tipo: Dirigidas      
Clase de Practicas (problemas) 13 0,52 1, 2, 3, 5, 6, 7, 8, 10
Clase de Teoría 28 1,12 1, 2, 3, 5, 6
Tipo: Supervisadas      
Clase de proyectos 9 0,36 4, 1, 2, 3, 5, 6, 7, 8, 9
Tutorias 5 0,2 4, 1, 2, 3, 5, 10
Tipo: Autónomas      
Dedicación a los problemas 12 0,48 1, 2, 3, 6, 7, 8, 10
Dedicación a los proyectos 37 1,48 1, 2, 3, 5, 6, 7, 8, 9, 10
Lectura y estudio de material 40 1,6 1, 2, 3, 5, 10

Evaluación

Para evaluar el nivel de aprendizaje del estudiante se establece una fórmula que combina el aprendizaje de conocimientos, la capacidad de resolución de problemas y las capacidades de trabajar en equipo, así como de la presentación de los resultados obtenidos.

Nota Final

La nota final se calcula ponderando las diferentes actividades de evaluación que se llevan a cabo de la siguiente manera:

Nota final = 0.4 * Nota Teoría + 0.1 * Nota Problemas + 0.5 * Nota Proyectos

Se aplicará esta fórmula siempre que la nota de teoría y la nota de proyectos sean mayor que 5. No hay ninguna restricción sobre la nota de problemas. Si haciendo el cálculo de la fórmula sale >= 5, pero las notas de teoría o proyectos no llegan al mínimo exigido, entonces la nota que se pondrá en el expediente será de 4.5.

Nota de Teoría

La nota de teoría pretende valorar las capacidades individuales del estudiante en cuanto a los contenidos teóricos de la asignatura, esto se hace de forma continuada durante el curso con dos exámenes parciales:

Nota Teoría = 0.5 * Nota Examen #1 + 0.5 * Nota Examen #2

El examen parcial #1 se hace en la mitad del semestre y sirve para eliminar parte de la materia si se aprueba.

El examen parcial #2 se hace al final del semestre y sirve para eliminar parte de la materia si se aprueba.

Estos exámenes pretenden hacer una evaluación individualizada de las capacidades de cada estudiante para resolver problemas utilizando las técnicas explicadas en clase, así como evaluar el nivel de conceptualización que el estudiante ha hecho de las técnicas vistas. Para poder tener una nota de teoría será necesario que las notas de ambos exámenes parciales sean superiores a 4. Si haciendo el cálculo de la fórmula sale una nota deteoría >= 5, pero no llega al mínimo exigido en alguno de los exámenes parciales, entonces la nota de teoría que se usará en el cálculo final será de 4.5.

Examen de recuperación. En caso de que la nota de teoría no llegue al nivel adecuado para aprobar la teoría, los estudiantes se pueden presentar a un examen de recuperación, destinado a recuperar la parte no superada de la evaluación continua.

Nota de Problemas

La parte de problemas tiene como objetivo conseguir que el estudiante se entrene con los contenidos de la asignatura de manera continuada y que se familiarice directamente en la aplicación de la teoría. Como evidencia de este trabajo se pide la presentación de un portafolio en el que se irán guardando los problemas realizados. Para obtener nota de problemas se requiere la entrega del 70% de los conjuntos de problemas como mínimo, en caso contrario, la nota de problemas será igual a 0.

Nota Problemas = Evaluación del portfolio

Nota de Proyectos

La parte de formación práctica de esta asignatura se basa a una serie de proyectos que se desarrollaran durante el curso. Tiene un peso esencial en la nota global de la asignatura y pretende que el estudiante se enfrente al problema de diseñar una solución a un reto que se plantea de forma contextualizada y que, por tanto, requiere el diseño de una solución integral, desde la preparación de los datos hasta el diseño y entrenamiento de un modelo neuronal. Además, el estudiante debe demostrar sus habilidades para trabajar en equipo y presentar convincentemente los resultados.

Cada uno de los proyectos se evalúa a través de su entregable, una presentación oral que harán los estudiantes en clase, y un proceso de autoevaluación por parte de los estudiantes. La nota se calcula delasiguiente manera:

Nota Proyecto Individual= 0.5 * Nota Entregables + 0.3 * Nota Presentación + 0.2 * Nota Autoevaluación

La nota total de proyectos es el promedio de la nota de los N proyectos individuales:

Nota Proyectos = SUMA(Nota Proyecto Individual)/N

En caso de no superar alguno de los proyectos de prácticas se permitirá la recuperación de la parte de los entregables de los proyectos no superados, con la restricción a un grado máximo de 7/10. La presentación oral no se puede recuperar.

Notas importantes

Sin perjuicio de otras medidas disciplinarias que se estimen oportunas, y de acuerdo con la normativa académica vigente, la comisión de actividades irregulares por parte del estudiante (por ejemplo, plagiar, copiar, dejar copiar, …) implicará suspender la actividad correspondiente con un cero (0). Las actividades de evaluación calificadas de esta forma y por este procedimiento no serán recuperables.

En caso de que no se haga ninguna entrega de problemas, no se asista a ninguna sesión de presentación de los proyectos en prácticas de laboratorio y no se haga ningún examen, la nota correspondiente será un "no evaluable". En otro caso, los "no presentados" computan como un 0 para el cálculo de la media ponderada.

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.

Actividades de evaluación

Título Peso Horas ECTS Resultados de aprendizaje
Autoevaluación 10 0 0 4, 9
Entregables de problemas 10 0 0 1, 2, 3, 5, 6, 7, 8, 10
Entregables de proyectos 25 0 0 4, 1, 2, 3, 6, 7, 8, 9, 10
Examenes 40 5 0,2 1, 2, 3, 5, 6, 8, 10
Presentación de proyectos 15 1 0,04 4, 1, 2, 3, 7, 8, 9, 10

Bibliografía

  • Deep Learning, Ian Goodfellow, Yoshua Bengio, and Aaron Courville, MIT Press, 1st Ed. 2016
  • Deep learning with Python, François Chollet, Manning Publications, 1st Ed., 2017
  • Pattern Recognition and Machine Learning, Christopher Bishop, Springer, 2011
  • Neural Networks for Pattern Recognition, Christopher Bishop, Oxford University Press, 1st ed., 1996