Ciencia de Datos en producción

Propósito del Curso

El curso tiene como objetivo las prácticas esenciales de desarrollo y despliegue de modelos de aprendizaje automático (ML). Se explora desde la creación y ajuste de modelos hasta su implementación en entornos de producción. A través de buenas practicas de desarrollo, pruebas y seguimiento, los estudiantes obtendrán las habilidades necesarias para garantizar la calidad, escalabilidad y trazabilidad de los modelos en aplicaciones reales.

Se presentaran Metodologías y Herramientas para desarrollar flujos de trabajo eficientes para proyectos de ciencia de datos reproducibles, mantenibles y escalables. Donde se presentaran buenas prácticas de desarrollo que permiten a los científicos de datos adaptarse a la creciente demanda de complejidad, al tiempo que garantiza que los sistemas desarrollados sean confiables.

El curso hace parte de las optativas del ciclo profesional del programa de Ingeniería de Ciencia de Datos de la Universidad Pontificia Bolivariana.

Conocimientos Previos

  • Python (Pandas, Scikit Learn, Numpy, Matplotlib)
  • Estadística descriptiva e Inferencial
  • Visualización de la información
  • Machine Learning (Aprendizaje supervisado y no supervisado)
  • Analítica de datos Estructurados (Tabulares)
  • Gestión de proyectos

Contenido

Herramientas para el curso

PythonRuffGithub Pro
UVGitLinux (Nativo o Virtual)
IDE - VscodeDockerGithub Actions
CopilotJupyterpre-commit
Scikit-learnPandaspytest
mlflowpanderafastapi

Cronograma

ClaseTema
MES1
1Introducción (Presentación y por que del curso)
2Introducción (Contenido, herramientas y evaluación)
3Proyectos basados en datos (Generalidades)
4Proyectos basados en datos (Proyectos ML)
5Proyectos basados en datos (PASOS DE PREPARACIÓN Y DESCRIPCIÓN DE DATOS)
6Pull request y buenas practicas
7Revision de PR (comentarios, approves, request for changes). Scikit-learn Transformers y models
8Pipelines, modelo base y selección de modelos.
MES2
9Model interpretation y demos (streamlit, taipy, gradio)
10Trabajo en Clase (Resolver Issues y PR)
11MLOPS (Generalidades y Nivel 0) y Agile Básico
12Desarrollo en ambientes virtuales ( Gestor de python, ambientes y dependencias)
13Python Scripts (funciones)
14Pruebas unitarias y de integración
15Code-quality (linter, formater, isort, mypy, pip-audit, pre-commit)
MES3
16CI /CD
17Data Validation y Model validation
18Repositorios (Mono repo, Multi repo), Branching gitflow, Commits
19Experiment Tracking
20Despliegue de modelos (Docker, FastAPI)
21Model Monitoring (Data drift, Model Drift, concept drift)
22MLOPS (Generalidades y Nivel 1)

Referencias

Libros y Papers

Cursos y Tutoriales

Web

Herramientas

Docente

Jose R. Zapata