2026925 - Tópicos avanzados de estadística I
(aprendizaje automático y ciencia de datos)
Programa de la asignatura
La asignatura trata acerca de algunas de las técnicas, métodos y modelos básicos de aprendizaje automático (machine learning) como parte de lo que se ha denominado: ciencia de datos.
Horario: Martes y Jueves de 16:00H - 18:00H
Lugar: 405-208 LABORATORIO DE ANÁLISIS DE DATOS - SALA DE INFORMÁTICA (CIUDAD UNIVERSITARIA - SEDE BOGOTÁ 405 - Posgrados Matemáticas y Física )
Período: 2024-2S SEGUNDO PERIODO ACADEMICO 2024 (05/08/2024 - 08/03/2025)
Grupo: Grupo 1 ( 1 )
Profesor: Camilo Jose Torres Jimenez
Prerrequisitos
SE ASUME QUE LOS ESTUDIANTES APROBARON UN CURSO DE:
REGRESIÓN O MODELOS LINEALES.
BASES DE DATOS O SISTEMAS DE INFORMACIÓN.
ESTADISTICA MULTIVARIADA. Se necesita como mínimo: análisis en ejes factoriales (ACP, ACS y ACM) y estrategia completa de agrupamiento (clustering) básico (ACP, ACS o ACM + jerárquico aglomerativo de Ward + k-means + caracterización de grupos por medio de análisis bivariado), lo cual se puede encontrar en libros como:
- Husson, F., Lê, S., & Pagès, J. (2017). Exploratory Multivariate Analysis by Example Using R (2nd ed.). Chapman & Hall/CRC.
- Pardo, C. E. (2020). Estadística descriptiva multivariada. Universidad Nacional de Colombia. https://repositorio.unal.edu.co/handle/unal/79914
PRINCIPIOS, FUNDAMENTOS O LÓGICA DE PROGRAMACIÓN BÁSICA (ojalá también de programación orientada a objetos), lo cual se puede encontrar en un libro como:
- Joyanes Aguilar, L. (2020). Fundamentos de programación: algoritmos, estructura de datos y objetos (5th ed.). McGraw Hill.
- y se puede complementar con el material que se encuentra en: https://cjtorresj.quarto.pub/ple/
Contenido
Introducción.
Introducción a la ciencia de datos y el aprendizaje automático. Características generales y específicas del aprendizaje supervisado y el aprendizaje no supervisado.
Preliminares computacionales y revisión rápida de prerrequisitos (SE ASUME QUE APROBARON UN CURSO DE PROGRAMACIÓN Y UNO DE BASES DE DATOS, ojalá también uno de programación orientada a objetos):
- Bases de datos, sistemas de información, SQL y arquitecturas para el almacenamiento, intercambio, procesamiento y análisis de datos.
- Paradigmas y lógica de programación imperativa estructurada procedimental, funcional, orientada a arreglos, y orientada a objetos. Sintaxis e implementación en Python.
- Revisión rápida de algunos paquetes iniciales de interés en Python (numpy, pandas, scipy, matplotlib, plotly).
Preliminares matemático-estadísticos generales.
- Modelado matemático y modelado estadístico, problemas de optimización, diferenciación automática, gradiente descendiente en lote y estocástico.
- Teoría de la información, entropía, función de pérdida y alternativas para el entrenamiento = aprendizaje = ajuste (= estimación de parámetros) del modelo.
Aprendizaje no supervisado.
Introducción al aprendizaje no supervisado y revisión rápida de prerrequisitos (SE ASUME QUE APROBARON UN CURSO DE ESTADISTICA DESCRIPTIVA MULTIVARIADA):
- Estadística descriptiva multivariada vista desde la mirada del aprendizaje no supervisado, y su relación con: el análisis exploratorio de datos, la mineria de datos y el reconocimiento de patrones.
- Concepto de dimensión. “Maldición de la dimensión”. El análisis en ejes factoriales (ACP, ACS y ACM) y la reducción lineal de la dimensión.
- Estrategía completa de agrupamiento (clustering) básico (ACP, ACS o ACM + jerárquico aglomerativo de Ward + k-means + caracterización de grupos por medio de análisis bivariado).
Reducción no lineal de la dimensión: Componentes principales no lineales, ICA, Isomap, UMAP, local embeddings.
Visualización en altas dimensiones: T-SNE y mapas auto organizados.
Otros métodos de agrupamiento: agrupamiento espectral y propagación de afinidad, desplazamiento medio, DBSCAN y HDBSCAN.
Evaluación y selección de métodos de agrupamiento. Métricas: puntajes basados en información mutua, índice aleatorio, homogeneidad, completitud, coeficiente de silueta, entre otros.
Aprendizaje supervisado.
Introducción al aprendizaje supervisado y revisión rápida de prerrequisitos (SE ASUME QUE APROBARON UN CURSO DE REGRESIÓN):
- Modelos lineales y modelos lineales generalizados vistos desde la mirada del aprendizaje supervisado, y su uso para la resolución de problemas de clasificación y de regresión.
Entrenamiento, validación, prueba, evaluación y selección de modelos. Separación de datos. Sobreajuste y otros problemas. Regularización. Funciones de pérdida para clasificación y regresión. Matriz de confusión y métricas.
Clasificadores bayesianos ingenuos (naive Bayes classifiers): Gaussiano, Bernoulli y Multinomial.
Vecinos más cercanos para clasificación y regresión. Algoritmos, variantes, usos y relaciones con el aprendizaje no supervisado.
Máquinas de soporte vectorial (SVMs) para clasificación (SVC). Funciones kernel, margen funcional y función de predicción. Máquinas de soporte vectorial para regresión (SVR).
Árboles de decisión para clasificación y regresión. Construcción, división y poda.
Bosques aleatorios y métodos ensamblados: Bagging and Boosting. AdaBoost. Refuerzo del gradiente. XGBoost.
Revisión acerca del preprocesamiento de los datos: reducción, estandarización o normalización (rescaling), transformación, recodificación, discretización, imputación.
Detección de anomalías (novelty and outlier detection). Modelo Gaussiano con estimación robusta de la covarianza (Elliptic Envelope Model). One-Class SVM. Bosques de aislamiento. Factor de anomalía local.
Aprendizaje automático y macrodatos / datos masivos (bigdata)
Características de los macrodatos.
El procesamiento en paralelo y distribuido.
De manera transversal está incluido en el contenido:
- El trabajo con datos estructurados.
- Algunas de las consideraciones mínimas básicas asociadas al procesamiento de macrodatos.
NO hace parte del contenido de esta asignatura:
- Todas las demás consideraciones y los elementos a tener en cuenta en el trabajo con macrodatos.
- Los modelos de redes neuronales y de aprendizaje profundo, junto con todas las consideraciones y los elementos que se deben tener en cuenta cuando se trabaja con datos no estructurados como imágenes, sonidos, videos, etc. (deben tener su propio curso).
- El procesamiento de lenguaje natural, incluyendo el procesamiento básico y avanzado de texto abierto (debe tener su propio curso).
- El aprendizaje por refuerzo (debe tener su propio curso).
Referencias
Principales:
- James, G., Witten, D., Hastie, T., Tibshirani, R., & Taylor, J. (2023). An introduction to statistical learning: With applications in python. Springer Nature.
- Witten, I. H., Frank, E., & Hall, M. A. (2016). Data mining: Practical machine learning tools and techniques (4th ed.). Morgan Kaufmann.
- Murphy, K. P. (2012). Machine learning: A probabilistic perspective. MIT Press.
- Hastie, T., Tibshirani, R., & Friedman, J. (2009). The Elements of Statistical Learning: Data Mining, Inference, and Prediction (2nd ed.). Springer.
Adicionales:
- Hunt, J. (2023). A Beginners Guide to Python 3 Programming (2nd ed.). Springer.
- VanderPlas, J. (2022). Python Data Science Handbook (2nd ed.). O’Reilly Media.
- Dobson, A. J., & Barnett, A. G. (2018). An introduction to generalized linear models (4th ed.). Chapman and Hall/CRC.
- McCullagh, P., & Nelder, J. A. (1989). Generalized linear models (2nd ed.). Chapman and Hall/CRC.