Aviso importante
La guía docente es provisional.
La versión en PDF de la guía docente puede tardar unos días en estar disponible en el DDD.

Aprendizaje Automático para Visión por Computador
Código: 44774Créditos: 6
| Titulación | Tipo | Curso |
|---|---|---|
| Computer Vision | OB | 1 |
Profesor/a de contacto
- Nombre :
- Maria Vanrell Martorell
- Correo electrónico :
- maria.vanrell@uab.cat
Equipo docente
- Ramon Baldrich Caselles
- Fernando Luis Vilariño Freire
- Dimosthenis Karatzas
- Pau Rodriguez Lopez
- Carlos Boned Riera
- Guillem Arias Bedmar
- Lluis Gomez Bigorda
Equipo docente (externo a la UAB)
- Xavier Suau
Idiomas de los grupos
Puede consultar esta información al final del documento.
Prerrequisitos
- Un grado en Ingeniería, Matemáticas, Física o similar.
- Competencias de programación en Python.
Objetivos
Coordinador del curso: Dr. Ramon Baldrich Caselles
El objetivo de este curso es presentar las técnicas de aprendizaje automático para resolver problemas de visión por computador. El aprendizaje automático se ocupa del análisis automático de datos a gran escala. Hoy en día, conforma los conceptos básicos de muchos métodos de visión por computadora, especialmente aquellos relacionados con el reconocimiento o la clasificación de patrones visuales, donde los 'patrones' abarcan imágenes de objetos del mundo, escenas y secuencias de video de acciones humanas, por nombrar algunos.
Este curso presenta los fundamentos y las técnicas más importantes para la clasificación de patrones visuales, centrándose principalmente en métodos supervisados. Además, se abordan temas relacionados como descriptores de imágenes y reducción de dimensionalidad. En la medida de lo posible, todas estas técnicas se prueban y evalúan en un proyecto práctico relacionado con la descripción de la escena a partir de imágenes, junto con las métricas y los procedimientos estándar para la evaluación del rendimiento, como las curvas de recuperación de precisión y la validación cruzada en k veces.
Los resultados del aprendizaje son:
(a) Distinga los principales tipos de técnicas de ML para la visión por computadora: supervisado versus no supervisado, generativo versus discriminativo, espacio de características originales versus kernelización de vectores de características.
(b) Conozca los puntos fuertes y débiles de los diferentes métodos, en parte aprendidos mientras resuelve un problema real de clasificación de patrones.
(c) Ser capaz de usar implementaciones de métodos existentes y construirlas desde cero.
El curso profundiza en dos enfoques principales para introducir ML en el problema de clasificación de imágenes. Usando: a) descripción de imagen hecha a mano, b) descripción de imagen basada en datos. En el primer caso se usa Bag of Words, en el segundo el enfoque de aprendizaje profundo. El contenido de DL se desarrolla, proporcionando tanto bases teóricas de las diferentes partes de los modernos sistemas de Neural Networs como las mejores prácticas para aplicarlo en aplicaciones reales.
Resultados de aprendizaje
- CA06 (Conseguir los objetivos de un proyecto de visión realizado en equipo.) Conseguir los objetivos de un proyecto de visión realizado en equipo.
- KA03 (Identificar qué métodos de aprendizaje computacional se pueden usar en función de los datos para la resolución de un problema de visión.) Identificar qué métodos de aprendizaje computacional se pueden usar en función de los datos para la resolución de un problema de visión.
- KA10 (Seleccionar los mejores procedimientos de experimentación que se deben diseñar para el aprendizaje computacional desde el entrenamiento hasta la evaluación.) Seleccionar los mejores procedimientos de experimentación que se deben diseñar para el aprendizaje computacional desde el entrenamiento hasta la evaluación.
- KA16 (Reconocer las dimensiones de género, medioambientales y éticas de los sistemas de visión y su aplicación.) Reconocer las dimensiones de género, medioambientales y éticas de los sistemas de visión y su aplicación.
- SA03 (Aplicar y evaluar técnicas de aprendizaje computacional para solucionar un problema particular.) Aplicar y evaluar técnicas de aprendizaje computacional para solucionar un problema particular.
- SA13 (Calcular la huella de carbono de cualquier experimento que requiera entrenar una red neuronal profunda.) Calcular la huella de carbono de cualquier experimento que requiera entrenar una red neuronal profunda.
- SA14 (Detectar sesgos en conjuntos de datos de aprendizaje que permitan evitar la construcción de sistemas que discriminen socialmente.) Detectar sesgos en conjuntos de datos de aprendizaje que permitan evitar la construcción de sistemas que discriminen socialmente.
- SA17 (Preparar presentaciones orales que permitan debatir los resultados del desarrollo de un proyecto de visión.) Preparar presentaciones orales que permitan debatir los resultados del desarrollo de un proyecto de visión.
Contenidos
- Introducción al aprendizaje computacional
- Entorno experimental
- Codificaciones: SVM y Random Forest
- Introducción a las Redes Neuronales
- Introducción al Aprendizaje Profundo (Deep Learning, DL)
- Redes Neuronales Convolucionales (CNN)
- Entrenamiento: preprocesado de datos, inicialización, optimización del gradiente
- Clasificación de imágenes
- Entender y visualización de CNNs
- Métodos eficientes para el Aprendizaje Profundo
Actividades formativas y Metodología
| Título | Horas | ECTS | Resultados de aprendizaje |
|---|---|---|---|
| Trabajo autónomo | 113 | 4,52 | CA06, KA03, KA10, KA16, SA03, SA13, SA14, SA17 |
| Sesiones de seguimiento de proyecto | 8 | 0,32 | CA06, KA03, KA10, KA16, SA03, SA13, SA14, SA17 |
| Sesiones teóricas | 20 | 0,8 | CA06, KA03, KA10, KA16, SA03, SA13, SA14, SA17 |
Sesiones supevisadas: (Algunes d'aquestes sesiones podrien ser en línea síncronas)
- Sesiones magistrales, donde los profesores explicarán contenidos generales de los diferentes temas. La mayoria seran necesarios para la resolución de problemas.
Sesiones dirigidas:
- Sesiones de proyecto, donde los objetivos y problemas de los proyectos se presentarán y discutirán. Los estudiantes deberan interactuar con el coordinador de proyecto sobre los problemas surgidos y las ideas aportadas para resorverlos. (Approx. 1 hora/semana)
- Sesiones de presentación, donde los estudiantes harán una presentación oral sobre como han solucionado el probema y sobre los resultados obtenidos.
- Sesión de exámen, donde los estudiantes son evaluados individualmente, demostrando la adquisición de los conocimientos desarrollados y la capacidad de resolución de problemas asociados.
Trabajo autónomo:
- Los estudiantes deberan estudiar y trabajar autonomamente con los materiales derivados de las clases magistrales y de las sesiones de proyecto.
- Los estudiantes trabajaran en grupo para resolver los problemas planlteados en los proyectos con los siguientes entregables:
- Codigo
- Informe
- Presentación oral
Evaluación
Actividades de evaluación continuada
| Título | Peso | Horas | ECTS | Resultados de aprendizaje |
|---|---|---|---|---|
| Asistencia a sesiones | 0.05 | 0,5 | 0,02 | CA06, KA03, KA10, KA16, SA03, SA13, SA14, SA17 |
| Proyecto | 0.55 | 6 | 0,24 | CA06, KA03, KA10, KA16, SA03, SA13, SA14, SA17 |
| Examen | 0.4 | 2,5 | 0,1 | KA03, KA10, KA16, SA03 |
La Nota final de este módulo se calcula con la seguiente fórmula:
Nota final = 0.4 x Examen + 0.55 x Proyecto+ 0.05 x Asistencia
donde,
- Examen: es la nota obtenida en el examen final del módulo (tiene que ser >= 3).
- Assistencia: es la nota derivada de la asistencia a las sesiones (mínimo 70%)
- Proyecto: es la nota que pone el coordinador del proyecto de acuerdo con los resultados del seguimiento semanal del proyecto y de las entregas (tiene que ser >= 5). Todo de acuerdo con criterios específicos, tales como:
- Participación en les sesiones de discusión y en el trabajo en equipo (evaluación entre-miembros)
- Entrega de las partes obligatorias y opcionales del proyecto.
- Desarrollo del código (estilo, comentarios, etc.)
- Informe (justificación de las decisiones tomadas en el desarrollo del proyecto)
- Presentación (Presentación y demostración del proyecto desarrollado)
Sólo los estudiantes que han suspendido (nota final < 5.0) podran hacer el examen de recuperación.
Bibliografía
Artículos en revistas:
- Barber, D. “Bayesian Reasoning and Machine Learning”. Cambridge University Press, 2012.
- Yoshua Bengio. “Learning Deep Architectures for AI”. Foundations and Trends in Machine Learning, Vol. 2, No. 1, 2009.
- Christopher J. C. Burges. “Dimension Reduction: A Guided Tour”. Foundations and Trends in Machine Learning, Vol. 2, No. 4, 2009.
- Christoph H. Lampert. “Kernel Methods in Computer Vision”. Foundations and Trends in Computer Graphics and Vision, Vol. 4, No. 3, 2008.
- Tinne Tuytelaars and Krystian Mikolajczyk. “Local Invariant Feature Detectors: A Survey”. Foundations and Trends in Computer Graphics and Vision, Vol. 3, No. 3, 2007.
Libros:
- Ian Goodfellow, Yoshua Bengio and Aaron Courville. “Deep Learning”. 2016. Cambridge, MA, USA: The MIT Press. ISBN: 978-0262035613
- Mehryar Mohri, Afshin Rostamizadeh, and Ameet Talwalkar, “Foundations of Machine Learning”
MIT Press, 2012. http://www.cs.nyu.edu/~mohri/mlbook/ - Z.H. Zhou. Ensemble Methods: Foundations and Algorithms. Chapman & Hall/CRC, 2012.
Informes técnicos:
- Criminisi, A. and Shotton, J. and Konukoglu, E. “Decision Forests for Classification, Regression, Density Estimation, Manifold Learning and Semi-Supervised Learning”. Technical report MSR-TR-2011-114. Microsoft Research, 2011. http://research.microsoft.com/pubs/155552/decisionForests_MSR_TR_2011_114.pdf
Software
Entorno de programación en Python con especial atención a las librerías más usadas de visión por computador y aprendizaje profundo.
Grupos e idiomas de la asignatura
La información proporcionada es provisional hasta el 30 de noviembre. A partir de esta fecha, podrá consultar el idioma de cada grupo a través de este enlace. Para acceder a la información, será necesario introducir el CÓDIGO de la asignatura
| Tipo de docencia | Grupo | Idioma | Semestre | Turno |
|---|---|---|---|---|
| (TEm) Teoría (máster) | 1 | Inglés | primer cuatrimestre | tarde |
| (PLABm) Prácticas de laboratorio (máster) | 1 | Inglés | primer cuatrimestre | tarde |
| (PLABm) Prácticas de laboratorio (máster) | 2 | Inglés | primer cuatrimestre | tarde |