
Reconocimiento Visual
Código: 108268Créditos: 6
| Titulación | Tipo | Curso |
|---|---|---|
| Inteligencia Artificial / Bachelor in Artificial Intelligence | OP | 3 |
Profesor/a de contacto
- Nombre :
- Debora Gil Resina
- Correo electrónico :
- debora.gil@uab.cat
Idiomas de los grupos
Puede consultar esta información al final del documento.
Prerrequisitos
Haber cursado las asignaturas de Fundamentos de Aprendizaje Automático, Fundamentos de Programación, Fundamentos de Visión por Computador, Probabilidad y Estadística, y Redes Neuronales y Aprendizaje Profundo. Se recomienda que el alumno tenga conocimientos y capacidades de:
- Programación en el lenguaje de programación Python
- Procesamiento de Señal, Imagen y Vídeo
- Facturación estadística
- Aprendizaje Computacional y Deep Learning
Objetivos
Aproximadamente cada década hay un tsunami tecnológico que transforma múltiples industrias. La Inteligencia Artificial (IA) es esta ola que arrasa en el mundo tecnológico actual. Si alguna vez te has preguntado:
¿cómo los ordenadores realizan la detección de caras en multitudes? ¿cómo las aplicaciones de videollamadas desenfocan el fondo o reemplazan el fondo con otras imágenes? ¿cómo se desplazan los coches autónomos de forma segura en un entorno urbano? ¿cómo se sigue el balón con tanta precisión en eventos deportivos televisados como tenis, fútbol y cómo se sigue el balón con tanta precisión en eventos deportivos televisados como tenis, fútbol y baloncesto? ¿podemos saber el tratamiento de cáncer más efectivo a partir de datos multimodales del paciente? ¿podemos saber las emociones de una persona con un video? ¿cómo aprenden las máquinas?
Si hemos despertado su curiosidad, este curso es el que necesitas. En este curso dependeremos sobre temas en Visión por Ordenador como Seguimiento de Objetos, Clasificación de Imágenes, Medicina Personalizada, Vision Language modelos y muchos más.
A diferencia de otros cursos de visión por ordenador, este curso se acerca a la visión por ordenador de manera más práctica, experiencial e intuitiva. Su principal componente es un conjunto de proyectos que debe ser desarrollados por los estudiantes repartidos en equipos. Todo lo que se necesita es un conocimiento práctico del lenguaje de programación Python. Utilizaremos python que permite incorporar diferentes bibliotecas de visión por ordenador. Lo utilizan miles de empresas, productos y dispositivos y se prueba cada día para obtener escalabilidad y rendimiento. Además dependeremos a diseñar y adaptar redes específicas y a escoger cuál es el método de procesado más adecuado según los requerimientos y restricciones de cada aplicación. En resumen, Visión y Aprendizaje es una asignatura de carácter eminentemente práctico e interdisciplinar que se sitúa en el puente que hay entre la inteligencia artificial y el mundo real y que pretende recorrer este puente en ambas direcciones.
Resultados de aprendizaje
- CM12 (Construir soluciones a problemas complejos de inteligencia artificial basadas en la selección de las técnicas más adecuadas de procesamiento de imágenes y aprendizaje computacional aplicado a la visión artificial) Construir soluciones a problemas complejos de inteligencia artificial basadas en la selección de las técnicas más adecuadas de procesamiento de imágenes y aprendizaje computacional aplicado a la visión artificial
- CM13 (Planificar el desarrollo y despliegue de soluciones basadas en visión por computador utilizando las herramientas y plataformas adecuadas, teniendo en cuenta criterios de sostenibilidad en el uso de los recursos computacionales) Planificar el desarrollo y despliegue de soluciones basadas en visión por computador utilizando las herramientas y plataformas adecuadas, teniendo en cuenta criterios de sostenibilidad en el uso de los recursos computacionales
- KM29 (Identificar los fundamentos matemáticos y algorítmicos en los que se basan las técnicas de procesamiento de imágenes de bajo nivel, de optimización y de aprendizaje computacional aplicado a la visión artificial) Identificar los fundamentos matemáticos y algorítmicos en los que se basan las técnicas de procesamiento de imágenes de bajo nivel, de optimización y de aprendizaje computacional aplicado a la visión artificial
- KM30 (Identificar las arquitecturas y modelos de aprendizaje profundo más comunes para la resolución de problemas de visión artificial) Identificar las arquitecturas y modelos de aprendizaje profundo más comunes para la resolución de problemas de visión artificial
- SM31 (Aplicar las técnicas de aprendizaje automático adecuadas a problemas de visión artificial) Aplicar las técnicas de aprendizaje automático adecuadas a problemas de visión artificial
- SM32 (Utilizar algoritmos y técnicas de procesamiento de imágenes, así como arquitecturas y modelos de aprendizaje profundo existentes, para el diseño e implementación de sistemas de visión por computador para los diferentes tipos de problemas de reconocimiento visual) Utilizar algoritmos y técnicas de procesamiento de imágenes, así como arquitecturas y modelos de aprendizaje profundo existentes, para el diseño e implementación de sistemas de visión por computador para los diferentes tipos de problemas de reconocimiento visual
- SM33 (Realizar la preparación de datos, el entrenamiento y la validación y análisis de modelos en todo tipo de problemas de visión artificial) Realizar la preparación de datos, el entrenamiento y la validación y análisis de modelos en todo tipo de problemas de visión artificial
Contenidos
- Introducción al Aprendizaje Computacional en Visión por Computador
- Clasificación de Imágenes
- Aprendizaje de instancias múltiples
- Mecanismos de atención
- Generación de Imágenes
- Aprendizaje Multimodal
- Foundation Models
- Vision Language Models
- few-shot learning
Actividades formativas y Metodología
| Título | Horas | ECTS | Resultados de aprendizaje |
|---|---|---|---|
| Resolución de Retos | 37,5 | 1,5 | CM12, CM13, KM29, KM30, SM31, SM32, SM33 |
| Trabajo individual | 95 | 3,8 | CM12, CM13, KM29, KM30, SM31, SM32, SM33 |
| Teoria | 12,5 | 0,5 | CM12, CM13, KM29, KM30 |
El curso seguirá una metodología docente de aprendizaje llamada Aprendizaje Basado en Proyectos (ABP).
La metodología ABP pretende potenciar y motivar al estudiante en su aprendizaje. Se formarán grupos de entre 2 y 4 estudiantes a los que se les encomendará la realización de un conjunto de proyectos (de tamaño medio) a lo largo del semestre. Se hará un seguimiento semanal y tutorización tanto grupal como individual de los estudiantes
Los proyectos son fijados por el profesorado de manera que cumpla las siguientes condiciones: ser lo más real posible; ser tratable mediante herramientas elementales; no tener asociado un algoritmo de solución standard. Por otro lado, es esencial entender que no se trata de encontrar un algoritmo que funcione en el 100 x 100 de los casos -a menudo no existe tal cosa- sino simplemente de "darle una propuesta de solución razonable".
Los proyectos los tienen que desarrollar cada equipo con la máxima autonomía posible. Cada equipo tendrá asignado un tutor que seguirá su evolución pero en principio se abstendrá de imponer sus ideas. Por otro lado, el estudiante debe tener claro que no se trata de buscar la 'solución' del problema en otros lugares, sino de hacer una aportación original. Esto no quiere decir que se tenga que renunciar a la información que pueda existir en la bibliografía o en Internet; pero cuando se haga uso de él hay que tener informado al profesor y explicarlo en la memoria.
Evaluación
Actividades de evaluación continuada
| Título | Peso | Horas | ECTS | Resultados de aprendizaje |
|---|---|---|---|---|
| Individual Mark | 30% | 5 | 0,2 | CM12, CM13, KM29, KM30, SM31, SM32, SM33 |
| Group Mark | 70% | 0 | 0 | CM12, CM13, KM29, KM30, SM31, SM32, SM33 |
Actividades de Evaluación
La asignatura tiene 2 actividades de evaluación:
- Proyectos grupales (70%)
- Proba escrita individual (30%)
Evaluación de los Proyectos. La asignatura tiene 3 proyectos de dificultad creciente. Al final de cada proyecto los estudiantes entregarán una memoria del trabajo realizado que serán evaluados por parte de los profesores de la asignatura sean o no los tutores. Para la evaluación se utilizarán los siguientes INSTRUMENTOS y ACTIVIDADES:
- MEMORIA DEL PROYECTO La memoria deberá seguir el modelo proporcionado al CV. Se valorará el grado de dificultad técnica, diseño experimental reproducible, análisis de métricas e interpretación de resultados. La memoria deberá incluir un apartado donde se especifique cuál es la contribución de cada miembro del grupo y cuál os se ha hecho de la IA. Por cada proyecto, se podrá solicitar el uso de mejillas especificas que constituyan conocimientos y habilidades básicas que el estudiante debe haber adquirido en la resolución del problema propuesto. El código debe permitir ejecutar un caso de uso y se podrá utilizar para verificar que los estudiantes han desarrollado correctamente el proyecto,
- APLICACIÓN: programa desarrollado.
- SEGUIMIENTO A CLASE: Evaluación a partir de las observaciones hechas por los tutores en las sesiones tutorizadas, donde se tendrá en cuenta la actitud, iniciativa, participación, asistencia y puntualidad del alumno a las sesiones de grupo.
Dado que los proyectos se desarrollan a lo largo de todo el curso, su evaluación tiene un carácter continuado, y su resultado final no es recuperable.
Prueba Individual. Al final del curso se hará una prueba escrita individual donde el estudiante deberá demostrar que ha entendido los contenidos y metodologías usadas en los proyectos realizados.
Calificaciones
La nota de la asignatura es la Media ponderada entre la nota de los proyectos y la nota de la prueba individual:
Nota Final = 0,7 * Nota Proyectos + 0,3 * Nota Individual
La nota de los proyectos saldrá de la media de los 3 proyectos realizados. Hay que tener un 5 en la Nota Individual para hacer la media. La asignatura queda aprobada si la Nota Final >=5
Para distinguir entre 'suspenso' y 'no presentado' se fija una fecha límite para que los estudiantes se puedan dar de baja de la evaluación, en cuyo caso aparecerán como 'no presentados'. Para darse de baja será necesario comunicarlo al profesor, por escrito o mediante correo electrónico, y obtener un acuse de recibo.
Si se demuestra que parte del contenido del proyecto ha sido plagiado y/o elaborado por una tercera persona diferente del estudiante y/o generado por IA, se suspenderá automáticamente.
Evaluación Única: Esta asignatura no contempla el sistema de evaluación única.
Uso de IA. Las herramientas de IA se podrán usar como herramientas de apoyo al aprendizaje (por ejemplo, para mejorar la redacción, el estilo, la claridad expositiva, la corrección lingüística /oye para la obtención de asistencia en aspectos técnicos). En ningún caso podrán sustituir y/o suplantar la actividad de aprendizaje del estudiante, ni su adquisición de los conocimientos específicos de la asignatura.
No es aceptable utilizar herramientas de inteligencia artificial para generar contenidos del trabajo que están sometidos a evaluación. Las tareas/actividades evaluables sospechosas de haber sido generadas por una IA en lugar de por el estudiante serán consideradas como una copia y serán evaluadas con un 0.
Bibliografía
Se dará al inicio del curso
Software
Python, pytorch
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 |
|---|---|---|---|---|
| (TE) Teoría | 1 | Inglés | primer cuatrimestre | tarde |
| (PAUL) Prácticas de aula | 1 | Inglés | primer cuatrimestre | tarde |
| (PLAB) Prácticas de laboratorio | 1 | Inglés | primer cuatrimestre | tarde |