5.65. AI367. Tópicos en Inteligencia Artificial (Obligatorio)
- Semestre: 10mo Sem. Créditos: 4
- Horas del curso: Teoría: 2 horas; Práctica: 2 horas; Laboratorio: 2 horas;
-
Prerrequisitos:
- AI264. Aprendizaje Profundo (7mo Sem)
5.65.1. Justificación
La Inteligencia Artificial es un campo en rápida evolución. Este curso explora temas avanzados y contemporáneos que están dando forma actualmente a la industria y la investigación. Se pone énfasis en la IA Generativa, Modelos de Lenguaje Grandes (LLMs) y Aprendizaje por Refuerzo Avanzado. Los estudiantes analizarán las arquitecturas detrás de los sistemas modernos de IA, como los Transformers, y discutirán los desafíos técnicos y sociales de desplegar agentes inteligentes autónomos a gran escala.
5.65.2. Objetivos Generales
- 1.
- Comprender la arquitectura y el proceso de entrenamiento de Modelos de Lenguaje Grandes.
- 2.
- Dominar los principios de la IA Generativa para síntesis de texto e imágenes.
- 3.
- Implementar algoritmos avanzados de Aprendizaje por Refuerzo para la toma de decisiones.
- 4.
- Aplicar técnicas de ingeniería de prompts y ajuste fino a modelos existentes.
- 5.
- Evaluar críticamente los últimos artículos de investigación y tendencias en IA.
5.65.3. Contribución a los resultados (Outcomes)
-
AG-C06) Aprendizaje a lo largo de la vida: Reconoce la importancia del aprendizaje continuo y la adaptación a nuevas tecnologías. (Usage)
5.65.4. Contenido
5.65.4.1. Aprendizaje Automático I: Fundamentos (6 horas) [Habilidades AG-C06]
Referencias Bibliográficas: [Goodfellow et al., 2016a, Foster, 2022]
Temas
- 1.
- Definición y ejemplos de una amplia variedad de tareas de aprendizaje automático:
- a)
- Aprendizaje supervisado:
- 1)
- Clasificación
- 2)
- Regresión
- b)
- Aprendizaje por refuerzo
- c)
- Aprendizaje no supervisado:
- 1)
- Agrupamiento
- 2.
- Ideas fundamentales:
- a)
- Teorema de no hay almuerzo gratis: ningún aprendiz puede resolver todos los problemas; las decisiones de diseño de representación tienen consecuencias.
- b)
- Fuentes de error e indecidibilidad en el aprendizaje automático
- 3.
- Un aprendizaje supervisado simple basado en estadísticas como regresión lineal o árboles de
decisión:
- a)
- Enfocarse en cómo funcionan sin entrar en detalles matemáticos o de optimización; suficiente para entender y usar implementaciones existentes correctamente
- 4.
- El problema del sobreajuste/control de la complejidad de la solución (regularización, poda - solo
intuición):
- a)
- El compromiso entre sesgo (subajuste) - varianza (sobreajuste)
Aprendizaje esperado (Learning Outcomes)
- 1.
- Describir las diferencias entre los tres estilos principales de aprendizaje (supervisado, por refuerzo y no supervisado) y determinar cuál es apropiado para un dominio de problema particular [Explicar]
- 2.
- Diferenciar los términos: IA, aprendizaje automático y aprendizaje profundo [Evaluar]
- 3.
- Formular una aplicación como un problema de clasificación, incluyendo las características de entrada disponibles y la salida a predecir (por ejemplo, identificar caracteres alfabéticos a partir de entrada de cuadrícula de píxeles) [Aplicar]
- 4.
- Identificar el sobreajuste en el contexto de un problema y curvas de aprendizaje y describir soluciones al sobreajuste [Evaluar]
- 5.
- Explicar cómo funciona el aprendizaje automático como un proceso de optimización/búsqueda [Explicar]
5.65.4.2. Aprendizaje Automático II: Datos, Representaciones y Evaluación (5 horas) [Habilidades AG-C06]
Referencias Bibliográficas: [Goodfellow et al., 2016a, Foster, 2022]
Temas
- 1.
- Trabajar con Datos:
-
a)
- Preprocesamiento de datos:
- 1)
- Importancia y peligros de las elecciones de preprocesamiento
- b)
- Manejo de valores faltantes (imputación, marcar como faltante):
- 1)
- Implicaciones de imputar versus marcar como faltante
- c)
- Codificación de variables categóricas, codificación de datos de valor real
- d)
- Normalización/estandarización
- e)
- énfasis en datos reales, no ejemplos de libros de texto
-
- 2.
- Representaciones:
- a)
- Espacios de hipótesis y complejidad
- b)
- Expansión de características de base simple, como elevar al cuadrado características univariadas
- c)
- Representaciones de características aprendidas
- 3.
- Evaluación del aprendizaje automático:
- a)
- Separación de conjuntos de entrenamiento, validación y prueba
- b)
- Métricas de rendimiento para clasificadores
- c)
- Estimación del rendimiento en prueba en datos retenidos
- d)
- Ajuste de los parámetros de un modelo de aprendizaje automático con un conjunto de validación
- e)
- Importancia de entender qué está haciendo un modelo, dónde están sus peligros/limitaciones y las implicaciones de sus decisiones
Aprendizaje esperado (Learning Outcomes)
- 1.
- Aplicar dos o más algoritmos de aprendizaje estadístico simple a una tarea de clasificación y medir la precisión de los clasificadores [Aplicar]
- 2.
- Implementar un algoritmo de aprendizaje estadístico y el proceso de optimización correspondiente para entrenar el clasificador y obtener una predicción en nuevos datos [Aplicar]
- 3.
- Explicar los procedimientos adecuados de evaluación de AA, incluyendo las diferencias entre rendimiento en entrenamiento y prueba, y qué puede salir mal con el proceso de evaluación llevando a informes inexactos del rendimiento de AA [Explicar]
- 4.
- Comparar dos algoritmos de aprendizaje automático en un conjunto de datos, implementando la metodología de preprocesamiento de datos y evaluación (por ejemplo, métricas y manejo de divisiones entrenamiento/prueba) desde cero [Aplicar]
5.65.4.3. Aprendizaje Automático III: Redes Neuronales y Ética (5 horas) [Habilidades AG-C06]
Referencias Bibliográficas: [Goodfellow et al., 2016a, Foster, 2022]
Temas
- 1.
- Redes neuronales básicas:
- a)
- Fundamentos de comprensión de cómo funcionan las redes neuronales y su proceso de entrenamiento, sin detalles de los cálculos
- b)
- Introducción básica a redes neuronales generativas (por ejemplo, modelos de lenguaje grandes)
- 2.
- ética para el Aprendizaje Automático:
- a)
- Enfocarse en datos reales, escenarios reales y estudios de caso
- b)
- Sesgo de conjunto de datos/algorítmico/de evaluación y consecuencias no deseadas
Aprendizaje esperado (Learning Outcomes)
- 1.
- Describir el proceso de entrenamiento de redes neuronales y las representaciones aprendidas resultantes [Explicar]
5.65.4.4. Formulación del Aprendizaje Automático y Evaluación (3 horas) [Habilidades ]
Referencias Bibliográficas: [Goodfellow et al., 2016a]
Temas
- 1.
- Formulación del aprendizaje automático simple como un problema de optimización, como regresión
lineal por mínimos cuadrados o regresión logística:
- a)
- Función objetivo
- b)
- Descenso de gradiente
- c)
- Regularización para evitar sobreajuste (formulación matemática)
- 2.
- Conjuntos de modelos:
- a)
- Combinación de mayoría ponderada simple
- 3.
- Evaluación de rendimiento:
- a)
- Otras métricas para clasificación (por ejemplo, error, precisión, exhaustividad)
- b)
- Métricas de rendimiento para regresores
- c)
- Matriz de confusión
- d)
- Validación cruzada:
- 1)
- Ajuste de parámetros (búsqueda en cuadrícula/aleatoria, mediante validación cruzada)
Aprendizaje esperado (Learning Outcomes)
- 1.
- Comparar y contrastar varias técnicas de aprendizaje (por ejemplo, árboles de decisión, regresión logística, Bayes ingenuo, redes neuronales y redes de creencia), proporcionando ejemplos de cuándo cada estrategia es superior [Comparar]
- 2.
- Evaluar el rendimiento de un sistema de aprendizaje simple en un conjunto de datos del mundo real [Evaluar]
- 3.
- Caracterizar el estado del arte en teoría del aprendizaje, incluyendo sus logros y limitaciones [Explicar]
- 4.
- Explicar el problema del sobreajuste, junto con técnicas para detectar y manejar el problema [Explicar]
- 5.
- Explicar el triple compromiso entre el tamaño de un espacio de hipótesis, el tamaño del conjunto de entrenamiento y la precisión del rendimiento [Explicar]
5.65.4.5. Aprendizaje Profundo, RL y Ética (3 horas) [Habilidades ]
Referencias Bibliográficas: [Goodfellow et al., 2016a]
Temas
- 1.
- Aprendizaje profundo:
- a)
- Redes feed-forward profundas (solo intuición, sin matemáticas)
- b)
- Redes neuronales convolucionales (solo intuición, sin matemáticas)
- c)
- Visualización de representaciones de características aprendidas de redes profundas
- d)
- Otras arquitecturas (NN generativas, NN recurrentes, transformers, etc.)
- 2.
- Visión general de los métodos de aprendizaje por refuerzo
- 3.
- Dos o más aplicaciones de algoritmos de aprendizaje automático:
- a)
- Por ejemplo, medicina y salud, economía, visión, lenguaje natural, robótica, juego
- 4.
- ética para el Aprendizaje Automático:
- a)
- Continuar enfocándose en datos reales, escenarios reales y estudios de caso
- b)
- Privacidad
- c)
- Equidad
- d)
- Propiedad intelectual
- e)
- Explicabilidad
Aprendizaje esperado (Learning Outcomes)
- 1.
- Visualizar el progreso del entrenamiento de una red neuronal a través de curvas de aprendizaje en un kit de herramientas establecido (por ejemplo, TensorBoard) y visualizar las características aprendidas de la red [Aplicar]
- 2.
- Dada una aplicación real de aprendizaje automático, describir problemas éticos respecto a las elecciones de datos, pasos de preprocesamiento, selección de algoritmo y visualización/presentación de resultados [Aplicar]
5.65.4.6. Procesamiento del Lenguaje Natural (20 horas) [Habilidades AG-C06]
Referencias Bibliográficas: [Tunstall et al., 2022, Russell and Norvig, 2020]
Temas
- 1.
- Gramáticas deterministas y estocásticas
- 2.
- Algoritmos de análisis sintáctico:
- a)
- CFGs y analizadores de tabla (por ejemplo, CYK)
- b)
- CFGs probabilísticos y CYK ponderado
- 3.
- Representación del significado/Semántica:
- a)
- Representaciones del conocimiento basadas en lógica
- b)
- Roles semánticos
- c)
- Representaciones temporales
- d)
- Creencias, deseos e intenciones
- 4.
- Métodos basados en corpus
- 5.
- N-gramas y HMMs
- 6.
- Suavizado y retroceso
- 7.
- Ejemplos de uso: Etiquetado POS y morfología
- 8.
- Recuperación de información:
- a)
- Modelo de espacio vectorial:
- 1)
- TF & IDF
- b)
- Precisión y exhaustividad
- 9.
- Extracción de información
- 10.
- Traducción de lenguaje
-
11.
- Clasificación de texto, categorización:
- a)
- Modelo de bolsa de palabras
- 12.
- Aprendizaje profundo para PLN:
- a)
- RNNs
- b)
- Transformers
- c)
- Incrustaciones multimodales (por ejemplo, imágenes + texto)
- d)
- Modelos de lenguaje generativos
Aprendizaje esperado (Learning Outcomes)
- 1.
- Definir y contrastar gramáticas deterministas y estocásticas, proporcionando ejemplos para mostrar la adecuación de cada una [Definir]
- 2.
- Simular, aplicar o implementar algoritmos clásicos y estocásticos para analizar lenguaje natural [Aplicar]
- 3.
- Identificar los desafíos de representar el significado [Analizar]
- 4.
- Listar las ventajas de usar corpus estándar. Identificar ejemplos de corpus actuales para una variedad de tareas de PLN [Listar/Enumerar]
- 5.
- Identificar técnicas para recuperación de información, traducción de lenguaje y clasificación de texto [Analizar]
- 6.
- Implementar una transformación TF/IDF, usarla para extraer características de un corpus, y entrenar un algoritmo de aprendizaje automático estándar usando esas características para hacer clasificación de texto [Aplicar]
5.65.4.7. Aprendizaje Automático I: Fundamentos (6 horas) [Habilidades AG-C06]
Referencias Bibliográficas: [Sutton and Barto, 2018]
Temas
- 1.
- Definición y ejemplos de una amplia variedad de tareas de aprendizaje automático:
- a)
- Aprendizaje supervisado:
- 1)
- Clasificación
- 2)
- Regresión
- b)
- Aprendizaje por refuerzo
- c)
- Aprendizaje no supervisado:
- 1)
- Agrupamiento
-
2.
- Ideas fundamentales:
- a)
- Teorema de no hay almuerzo gratis: ningún aprendiz puede resolver todos los problemas; las decisiones de diseño de representación tienen consecuencias.
- b)
- Fuentes de error e indecidibilidad en el aprendizaje automático
- 3.
- Un aprendizaje supervisado simple basado en estadísticas como regresión lineal o árboles de
decisión:
- a)
- Enfocarse en cómo funcionan sin entrar en detalles matemáticos o de optimización; suficiente para entender y usar implementaciones existentes correctamente
- 4.
- El problema del sobreajuste/control de la complejidad de la solución (regularización, poda - solo
intuición):
- a)
- El compromiso entre sesgo (subajuste) - varianza (sobreajuste)
Aprendizaje esperado (Learning Outcomes)
- 1.
- Describir las diferencias entre los tres estilos principales de aprendizaje (supervisado, por refuerzo y no supervisado) y determinar cuál es apropiado para un dominio de problema particular [Explicar]
- 2.
- Diferenciar los términos: IA, aprendizaje automático y aprendizaje profundo [Evaluar]
- 3.
- Formular una aplicación como un problema de clasificación, incluyendo las características de entrada disponibles y la salida a predecir (por ejemplo, identificar caracteres alfabéticos a partir de entrada de cuadrícula de píxeles) [Aplicar]
- 4.
- Identificar el sobreajuste en el contexto de un problema y curvas de aprendizaje y describir soluciones al sobreajuste [Evaluar]
- 5.
- Explicar cómo funciona el aprendizaje automático como un proceso de optimización/búsqueda [Explicar]
5.65.4.8. Aprendizaje Automático II: Datos, Representaciones y Evaluación (5 horas) [Habilidades AG-C06]
Referencias Bibliográficas: [Sutton and Barto, 2018]
Temas
- 1.
- Trabajar con Datos:
- a)
- Preprocesamiento de datos:
- 1)
- Importancia y peligros de las elecciones de preprocesamiento
- b)
- Manejo de valores faltantes (imputación, marcar como faltante):
- 1)
- Implicaciones de imputar versus marcar como faltante
- c)
- Codificación de variables categóricas, codificación de datos de valor real
-
d)
- Normalización/estandarización
- e)
- énfasis en datos reales, no ejemplos de libros de texto
- 2.
- Representaciones:
- a)
- Espacios de hipótesis y complejidad
- b)
- Expansión de características de base simple, como elevar al cuadrado características univariadas
- c)
- Representaciones de características aprendidas
- 3.
- Evaluación del aprendizaje automático:
- a)
- Separación de conjuntos de entrenamiento, validación y prueba
- b)
- Métricas de rendimiento para clasificadores
- c)
- Estimación del rendimiento en prueba en datos retenidos
- d)
- Ajuste de los parámetros de un modelo de aprendizaje automático con un conjunto de validación
- e)
- Importancia de entender qué está haciendo un modelo, dónde están sus peligros/limitaciones y las implicaciones de sus decisiones
Aprendizaje esperado (Learning Outcomes)
- 1.
- Aplicar dos o más algoritmos de aprendizaje estadístico simple a una tarea de clasificación y medir la precisión de los clasificadores [Aplicar]
- 2.
- Implementar un algoritmo de aprendizaje estadístico y el proceso de optimización correspondiente para entrenar el clasificador y obtener una predicción en nuevos datos [Aplicar]
- 3.
- Explicar los procedimientos adecuados de evaluación de AA, incluyendo las diferencias entre rendimiento en entrenamiento y prueba, y qué puede salir mal con el proceso de evaluación llevando a informes inexactos del rendimiento de AA [Explicar]
- 4.
- Comparar dos algoritmos de aprendizaje automático en un conjunto de datos, implementando la metodología de preprocesamiento de datos y evaluación (por ejemplo, métricas y manejo de divisiones entrenamiento/prueba) desde cero [Aplicar]
5.65.4.9. Aprendizaje Automático III: Redes Neuronales y Ética (5 horas) [Habilidades AG-C06]
Referencias Bibliográficas: [Sutton and Barto, 2018]
Temas
- 1.
- Redes neuronales básicas:
- a)
- Fundamentos de comprensión de cómo funcionan las redes neuronales y su proceso de
entrenamiento, sin detalles de los cálculos
- b)
- Introducción básica a redes neuronales generativas (por ejemplo, modelos de lenguaje grandes)
- 2.
- ética para el Aprendizaje Automático:
- a)
- Enfocarse en datos reales, escenarios reales y estudios de caso
- b)
- Sesgo de conjunto de datos/algorítmico/de evaluación y consecuencias no deseadas
Aprendizaje esperado (Learning Outcomes)
- 1.
- Describir el proceso de entrenamiento de redes neuronales y las representaciones aprendidas resultantes [Explicar]
5.65.4.10. Aplicaciones e Impacto Social (Parte I) (6 horas) [Habilidades AG-C06]
Referencias Bibliográficas: [Russell and Norvig, 2020, Bostrom, 2014]
Temas
- 1.
- Al menos una aplicación de IA a un problema y campo específico, como medicina, salud,
sostenibilidad, redes sociales, economía, educación, robótica, etc. (elegir al menos uno para el Núcleo
CS):
- a)
- Formular y evaluar una aplicación específica como un problema de IA:
- 1)
- Cómo lidiar con problemas mal especificados o mal planteados
- b)
- Disponibilidad/escasez y limpieza de datos:
- 1)
- Limpieza y preprocesamiento básico de datos
- 2)
- Sesgo del conjunto de datos
- c)
- Sesgo algorítmico
- d)
- Sesgo de evaluación
- e)
- Evaluación de las implicaciones sociales de la aplicación
- 2.
- Modelos generativos profundos desplegados:
- a)
- Visión general de alto nivel de modelos generativos de imágenes profundas (por ejemplo, a 2023, DALL-E, Midjourney, Stable Diffusion, etc.), sus usos y sus limitaciones/peligros.
- b)
- Visión general de alto nivel de modelos de lenguaje grandes (por ejemplo, a 2023, ChatGPT, Bard, etc.), sus usos y sus limitaciones/peligros.
- 3.
- Visión general del impacto social de la IA:
- a)
- ética
- b)
- Equidad
-
c)
- Confianza/explicabilidad
- d)
- Privacidad y uso de datos de entrenamiento
- e)
- Autonomía humana y supervisión/regulaciones/requisitos legales
- f )
- Sostenibilidad
Aprendizaje esperado (Learning Outcomes)
- 1.
- Dado un dominio de aplicación y problema del mundo real, formular una solución de IA para ello, identificando datos/entrada apropiados, preprocesamiento, representaciones, técnicas de IA y métricas/metodología de evaluación [Aplicar]
5.65.4.11. Aplicaciones e Impacto Social (Parte II) (6 horas) [Habilidades AG-C06]
Referencias Bibliográficas: [Russell and Norvig, 2020, Bostrom, 2014]
Temas
- 1.
- Una o más aplicaciones adicionales de IA a un amplio conjunto de problemas y diversos campos, como
medicina, salud, sostenibilidad, redes sociales, economía, educación, robótica, etc. (elegir un área
diferente de la elegida para el Núcleo CS):
- a)
- Formular y evaluar una aplicación específica como un problema de IA:
- 1)
- Cómo lidiar con problemas mal especificados o mal planteados
- b)
- Disponibilidad/escasez y limpieza de datos:
- 1)
- Limpieza y preprocesamiento básico de datos
- 2)
- Sesgo del conjunto de datos
- c)
- Sesgo algorítmico
- d)
- Sesgo de evaluación
- e)
- Evaluación de las implicaciones sociales de la aplicación
- 2.
- Profundidad adicional sobre modelos generativos profundos desplegados:
- a)
- Introducción a cómo funcionan los modelos generativos de imágenes profundas (por ejemplo, a 2023, DALL-E, Midjourney, Stable Diffusion) incluyendo discusión de atención
- b)
- Introducción a cómo funcionan los modelos de lenguaje grandes (por ejemplo, a 2023, ChatGPT, Bard) incluyendo discusión de atención
- c)
- Idea de modelos fundamentales, cómo usarlos, y los beneficios/problemas con entrenarlos a partir de grandes datos
- 3.
- Análisis y discusión del impacto social de la IA:
- a)
- ética
-
b)
- Equidad
- c)
- Confianza/explicabilidad
- d)
- Privacidad y uso de datos de entrenamiento
- e)
- Autonomía humana y supervisión/regulaciones/requisitos legales
- f )
- Sostenibilidad
Aprendizaje esperado (Learning Outcomes)
- 1.
- Analizar el impacto social de una o más aplicaciones específicas de IA del mundo real, identificando problemas respecto a ética, equidad, sesgo, confianza y explicabilidad [Evaluar]
- 2.
- Describir algunos de los modos de falla de los modelos generativos profundos actuales para lenguaje o imágenes, y cómo esto podría afectar su uso en una aplicación [Describir]