Profesor | Sergio Hernández López | lu mi vi | 9 a 10 | 201 (Nuevo Edificio) |
Ayudante | Rafael López Martínez | ma ju | 9 a 10 | 201 (Nuevo Edificio) |
Ayud. Lab. | Omar Alejandro Suarez Guerrero | ma | 16 a 18 | Taller de Lenguajes de Programación |
El aprendizaje de máquina y reconocimiento de patrones ha cobrado una relevancia importante en estos años a partir del desarrollo de la tecnología, esto se puede constatar a partir de la cantidad de información que se puede generar por segundo (El CERN estimga generar 25GB/s).
Tener un millón de registros temporales en una hoja de cálculo es practicamente inmanejable, en una base de datos se puede tener pero herramientas tradicionales no pueden obtener relaciones significativas a pesar de que estas existen. Lo mismo pasa con los datos de tipo texto, es imposible estar al tanto de todas las respuestas que una red social pueda tener sin embargo intuimos que hay algún patrón que identifica un tipo de respuesta de otro. Los algoritmos que se revisarán en esta clase están pensados para poder obtener información valiosa de esta gran cantidad de datos que hoy están a la mano.
Se revisaŕan los algoritmos que se presentan a continuación y se revisarán los fundamentos técnicos de los mismos así como aplicaciones relevantes.
1. Introducción: ¿Qué es el reconocimiento de patrones? Historia
2. Etapas del aprendizaje de máquina
3. Algoritmos no supervisados: KMeans, PCA, Métricas
4. Algoritmos supervisados: Regresión logística, Redes neuronales, Máquinas de Soporte Vectorial, Métricas
5. Algoritmos de ensamble y árboles de decisión: Random Forest y Gradient Boosting
Dentro de las tareas que se pueden realizar con estos algoritmos están la clasificación de textos, la regresión multivaluada, reconocimiento de imágenes, etcétera. La clase tendrá un formato de seminario en el que se dejarán proyectos y se leeran artículos de revistas especializadas (históricos o nuevos). El lenguaje de programación será Python 3.6.
Trabajos en clase y tareas: 40%
Laboratorio: 30%
Proyecto final 30%