Descripción del Curso
Profesor
Fabio A. González
Carrera de Ingeniería de Sistemas y Computación
Universidad Nacional de Colombia
Objetivo del curso
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.
Temas
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
Evaluación
- Quices 25%
- Examen 30%
- Prácticas 10%
- Entregas EDL Coursera 20%
- Proyecto 15%
Recursos del Curso
Bibliografía
- [Russell10] Russell, S and Norvig, P. 2010 Artificial Intelligence: a Modern Approach, 3rd Ed, Prentice-Hall
- [Alp10] Alpaydin, E. 2010 Introduction to Machine Learning, 2Ed. The MIT Press.
- [IAI-Udac] Intro to Artificial Intelligence, Udacity
- [AI-edX] CS188x_1 Artificial Intelligence, UC Berkley, edX, Spring 2016
- [Sutton98] Sutton, R. and Barto, A. Reinforcement Learning: An Introduction, The MIT Press, 1998
- [aima-python] Python code for the book Artificial Intelligence: A Modern Approach, GitHub repository
Calendario del curso
| Semana | Tema | Material | Actividades |
|---|---|---|---|
| Ago 26 | 1. Introducción | [Russell10] Chap 1 (slides) [AI-edX] Introduction to AI (slides) (video) Inteligencia Artificial, Fabio González The Wonderful and Terrifying Implications of Computers That Can Learn, Jeremy Howard, TED | |
| Sep 2 | 1.3 Agentes inteligentes 2.1 Agentes y Búsquedas | [Russell10] Chap 2 (slides) [AI-edX] Agents and Search (slides) (video) | |
| Sep 9-16 | 2.4 Búsqueda no informada 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 | Práctica 1 |
| Sep 23 | 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 | |
| Sep 30 | 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) [AI-edX] Naïve Bayes (slides) Notebook: Clasificación Lineal y Evaluación del Desempeño | Práctica 2 |
| Oct 7 | 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 | |
| Oct 14 | 3.2.4 Support vector machines | [Russell10] Sect 18.9 (slides) Notebook: Máquinas de vectores de soporte y selección de modelos | |
| Oct 21 | 3.2.5 Random Forest | [Russell10] Sect 18.10 (slides) Notebook: Random Forests y exploración aleatorizada | |
| Oct 28-Nov 4 | 3.2.6 Redes neuronales | Video clase redes neuronales (2018-2) [Russell10] Sect 18.6 (slides) [Alp10] Chap 11 (slides) Notebook: Redes Neuronales Notebook: Neural Networks in Keras | Entrega 1 Entrega 2 |
| Nov 11-18 | 3.2.7 Deep learning | Video clase DL 1 (2018-2) Video clase DL 2 (2018-2) Video clase DL 3 (2018-2) Introduction to Deep Learning and Applications (slides) Representation Learning and Deep Learning Tutorial Notebook: CNN for image classification in Keras | Entrega 3 Entrega 4 |
| Nov 25 | 3.3 Aprendizaje no supervisado 3.3.2 Clustering (agrupamiento) | Video clase agrupamiento (2018-2) [Alp10] Chap 7 (slides) K-Means Notebook: Agrupamiento | Entrega 5 |
| Dic 2 | 3.3.1 Reducción de la dimensionalidad | Video clase reducción de la dimensionalidad (2018-2) Intro to PCA (slides) A tutorial on principal component analysis (pdf) Reducción de la dimensionalidad con PCA (notebook) | |
| Dic 18 | Final Project |
Entregables Especialización DL Coursera
El objetivo es cursar y aprobar los tres primeros cursos de la especialización. 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.
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. 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.
Curso 1: Neural Networks and Deep Learning
- Entrega 1 (4/11/2019):
- Cuestionarios: 1, 2
- Tareas de Programación: 1, 2
- Link: https://www.dropbox.com/request/N3KxO1sVMf7C7ERhLfRN
- Entrega 2 (11/11/2019):
- Cuestionarios: 3
- Tareas de Programación: 3, 4
- Link: https://www.dropbox.com/request/E9ZMQb003EkE2kP4j3st
Curso 2: Improving Deep Neural Networks
- Entrega 3 (17/11/2019):
- Cuestionarios: 1
- Tareas de Programación: 1, 2, 3
- Link: https://www.dropbox.com/request/2a4UkXnLEfud5voW1ZRn
- Entrega 4 (24/11/2019):
- Cuestionarios: 2, 3
- Tareas de Programación: 4, 5
- Link: https://www.dropbox.com/request/Nx8JGusR5tIMrUikL2LU
Curso 3: Structuring Machine Learning Projects
- Entrega 5 (1/12/2019):
- Cuestionarios: 1, 2
- Link: https://www.dropbox.com/request/yOWXMQE7c1nSHioYA1qc