Evaluacion

Por Jose R. Zapata

La evaluacion del curso consta de 3 trabajos practicos y su porcentaje en la evaluacion del curso es

Trabajo Porcentaje Descripcion
1 50 % Analisis, procesamiento y modelamiento de datos en Jupyter Notebook
2 25 % Conversion del trabajo anterios a Scripts de Python con pruebas unitarias
3 25 % Proyecto de ciencia de datos estructurado en Kedro con tracking de experimentos y validaciones
Fecha Limite de entrega de trabajos 18/Octubre/2022

Trabajo 1 (50 %)

A cada grupo de estudiantes se le asignara un dataset y el objetivo es realizar el an谩lisis, preparaci贸n y visualizaci贸n de datos con Python y finalmente hacer un proceso de selecci贸n de modelos con Machine Learning.

El proyecto se debe subir a github y utilizar cookiecutter para inicializar la creaci贸n de las carpetas del proyecto.

http://drivendata.github.io/cookiecutter-data-science/

El ejemplo del proyecto de readmission est谩 en este repositorio de github:

https://github.com/JoseRZapata/Readmission-ML-Project/tree/master/notebooks

Evaluaci贸n

Matriz de evaluacion

Porcentaje Descripci贸n Nada Incompleto Completo
8.33 % Preparaci贸n de los datos
(datos nulos, outliers, duplicados,
correcci贸n de formatos de tipos de datos)
8.33 % Visualizaci贸n de datos
(Univarible y Bivariable)
Histogramas, boxplots, correlaciones, etc
8.33 % Descripci贸n y An谩lisis Estad铆stico de los datos
8.33 % Machine Learning
Entrenar y evaluar todos los modelos propuestos
8.33 % Hiper parametrizacion
Hiperparametrizar 2 modelos y escoger el mejor modelo
8.33 % Resultados y Conclusiones
analisis de los datos, conclusiones del modelos y los resultados obtenidos

Trabajo 2 (25 %)

El objetivo de este trabajo es llevar el proceso del proyecto de los Jupyter notebook a scripts de python.

Como ejemplo estan los scripts del proyecto de Readmission

https://github.com/JoseRZapata/Readmission-ML-Project/tree/master/src

Se deben crear los siguientes scripts:

  1. Extraccion de datos (Ej: makedataset.py) y preprocesamiento (Ej: preprocessing.py)
  2. Procesamiento de datos - limpieza y transformacion de datos (Ej: build_features)
  3. Entrenamiento de modelo (Ej: train_model.py)
  4. Evaluacion del modelo (Ej: evaluation.py)
  5. Pruebas unitarias Realizar por lo menos una prueba unitaria de las funciones que han creado (Ej: test_features.py )

Nota: Usar pipelines de pandas mediante el metodo .pipe

En este video hay un tutorial de como hacer pruebas unitarias: https://www.youtube.com/watch?v=5ufpsjfk99U

Evaluacion

Cada uno de los scripts se debe poder ejecutar desde la linea de comando y realizar la funci贸n.

Porcentaje Descripci贸n Funciona
(Si / No)
5 % Extraccion de datos
(lectura de datataset, preprocesamiento inicial
division train y test)
5 % Procesamiento de datos
Limpieza y transformacion de los datos
listos para usarse en ML
5 % Entrenamiento de modelo
Entrenamiento del modelo de ML
5 % Evaluacion del modelo
Evaluacion
de train y test
5 % Prueba Unitaria
Pytest
de alguna funcion

Trabajo 3 (25 %)

Utilizar los scripts de python y funciones desarrolladas para crear un proyecto estructurado de ciencia de datos implementando:

  • Tracking de experimentos
  • Validacion de datos
  • Validacion de datos train / test
  • Validacion de modelo
  • Pipelines de transformacion con sci-kit learn
  • Visualizacion de pipelines

Evaluacion

Se debe ejecutar los procesos de:

Porcentaje Descripci贸n Funciona
(Si / No)
8.33 % kedro run
8.33 % kedro viz
8.33 % mlflow ui

Repositorio de Ejemplo:

https://github.com/JoseRZapata/readmission-ml-project-kedro

Fecha Limite de entrega de trabajos 18/Octubre/2022