Los sistemas inteligentes estudian el desarrollo de agentes inteligentes o racionales. Un agente racional debe ser capaz de actuar para maximizar el mejor resultado esperado. El objetivo del curso es estudiar la teoría y los métodos que permiten construir agentes racionales bajo diferentes condiciones.
1 Introducción
1.1 Historia de la IA
1.2 Qué es IA
1.3 Agentes inteligentes
2 Solución de problemas
2.1 Agentes y Búsquedas
2.2 Búsqueda no informada
2.3 Búsqueda informada
3 Aprendizaje de máquina
3.1 Qué es aprendizaje de máquina
3.2 Aprendizaje supervisado
3.2.1 Clasificación lineal
3.2.2 Modelos probabilísticos (regresión logística, Naïve Bayes)
3.2.3 Clasificación no lineal (k-nn, árboles de decisión)
3.2.4 Support Vector Machines
3.2.5 Random Forest
3.2.6 Redes Neuronales
3.2.7 Deep learning
3.3 Aprendizaje no supervisado
3.3.1 Reducción de la dimensionalidad
3.3.2 Clustering
3.4 Aprendizaje por refuerzo
Semana | Tema | Material | Actividades |
---|---|---|---|
Feb 22 | 1. Introducción | Clase Feb 22 (video) [Russell10] Chap 1 (slides) [AI-edX] Introduction to AI (slides) (video) Inteligencia Artificial, Fabio González, (video) The Wonderful and Terrifying Implications of Computers That Can Learn, Jeremy Howard, TED | |
Mar 1 | 1.3 Agentes inteligentes | Clase Mar 1 (video) Clase Mar 3 (video) [Russell10] Chap 2 (slides) | |
Mar 8 | 2.1 Agentes y Búsquedas 2.4 Búsqueda no informada | [AI-edX] Agents and Search (slides) (video) [Russell10] Chap 3 (slides) and Chap 4 (slides) Search algorithms notebook from AIMA Clase asíncrona: Agentes, búsquedas, BFS, DFS (video) Sesión práctica (video) | Práctica 1 |
Mar 15 | 2.5 Búsqueda informada | [Russell10] Chap 3 (slides) and Chap 4 (slides) [AI-edX] A* Search and Heuristics (slides) (video) Search algorithms notebook from AIMA Clase asíncrona: A* y heurísticas (video 1)(video 2) Sesión práctica (video) | |
Mar 22 | 3.1 Qué es aprendizaje de máquina 3.2 Aprendizaje supervisado | [Russell10] Sect 18.1, 18.2, 18.6 (slides) An Introduction to Machine Learning (slides) Notebook: Clasificación binaria usando un modelo lineal Clase asíncrona: Introducción al ML (video 1)(video 2)(video 3) Sesión práctica (video) | |
Abr 5 | 3.2.1 Clasificación lineal 3.2.2 Modelos probabilísticos (regresión logística, Naïve Bayes) | [Russell10] Sect 18.6 (slides) 20.2 (slides) Naïve Bayes (slides 49-60) Notebook: Clasificación Lineal y Evaluación del Desempeño Clase asíncrona: Clasificador Naïve Bayes (video 1)(video 2) Sesión práctica (video) | |
Abr 12 | 3.2.3 Clasificación no lineal (k-nn, árboles de decisión) | [Russell10] Sect 18.3 (slides) Notebook: Clasificación no lineal, complejidad y sobreajuste Clase asíncrona: Árboles de Decisión, K-nn (video 1)(video 2) | |
Abr 19 | 3.2.4 Support-vector machines 3.2.5 Random Forest | [Russell10] Sect 18.9 y 18.10 (slides) Notebook: Máquinas de vectores de soporte y selección de modelos Notebook: Random Forests y exploración aleatorizada Clase asíncrona: Support-vector machines, random forest (video 1)(video 2) | |
Abr 26 | 3.2.6 Redes neuronales | [Russell10] Sect 18.6 (slides) [Alp10] Chap 11 (slides) Neural Network Playground Notebook: Redes Neuronales Notebook: Neural Networks in Keras | |
May 3-May 17 | 3.2.7 Deep learning | Introduction to Deep Learning and Applications (slides) Representation Learning and Deep Learning Tutorial Notebook: CNN for image classification in Keras | |
May 24-31 | 3.2.7 Deep learning | Deep learning frameworks (slides) Introduction to TensorFlow (Jupyter notebook) Neural Networks in Keras (Jupyter notebook) | Proyecto final |
Junio 7-14 | 3.3 Aprendizaje no supervisado 3.3.2 Clustering (agrupamiento) | Clase asíncrona: Agrupamiento (video) K-Means Notebook: Agrupamiento | |
Jun 21 | 3.3.1 Reducción de la dimensionalidad | Clase asíncrona: Reducción de la dimensionalidad con PCA (video) Intro to PCA (slides) A tutorial on principal component analysis (pdf) Reducción de la dimensionalidad con PCA (notebook) | Junio 23: Quiz clustering |
Jun 28 | Junio 30: Examen redes neuronales | ||
Julio 26 | Julio 26: Examen final Julio 31: Entrega proyecto final |
El objetivo es cursar y aprobar tres cursos de la línea de especialización en Deep Learning. Para cada curso se deben completar los cuestionarios y tareas de programación. A continuación se listan las diferentes entregas que se deben hacer en las fechas especificadas.
Como alternativa, se puede tomar el curso Introduction to deep learning.
Para cada entrega se debe sacar una captura de pantalla de la sección de Calificaciones donde aparezca la nota respectiva de los cuestionarios y tareas de programación de la entrega, donde además aparezca su nombre. Igualmente, deben incluir una copia de de los notebooks correspondientes a las tareas de programación. Todo esto debe ir en un archivo zip nombrado como entrega-n-unalusername.zip
, donde unalusername
es el nombre de usuario asignado por la universidad. No se deben incluir archivos de datos, imágenes, etc.
Los archivos deben enviarse a través del File Request correspondiente antes de la media noche de la fecha límite. Envíos fuera de la hora límite no serán tenidos en cuenta.