python -m venv ./.venv
./.venv/Scripts/activate
Esta práctica consiste en aplicar los conceptos vistos en el tema relativos al entrenamiento y validación de distintos modelos en un problema de clasificación en un contexto financiero. La idea es que el alumno sea capaz de implantar varios modelos de Aprendizaje Automático para una tarea de clasificación binaria, ajustar algunos de sus parámetros en base a un objetivo de negocio e interpretar los criterios de clasificación de aquellos modelos que lo permitan.
objetivo de la práctica es la creación de distintos modelos capaces de determinar si solicitante de un crédito de una entidad bancaria debe recibir o no dicho crédito basándose en el comportamiento pasado de otros solicitantes. Se emplearán 20
variables predictivas (balance de su cuenta corriente, duración del crédito, importe
solicitado, etc.) y una variable de respuesta cuyo valor es 1 cuando el cliente devolvió
el crédito y 0 cuando no lo hizo. La base de datos consta de 700 clientes que sí
devolvieron el crédito y 300 que no lo hicieron.
La práctica plantea el uso y análisis de varios modelos de Aprendizaje Automático con el objetivo de comparar su rendimiento en tareas de clasificación binaria utilizando diferentes métricas, para posteriormente optimizarlos e interpretar sus parámetros desde una perspectiva de negocio. Se espera que el alumno entienda mejor el proceso de ajuste de parámetros y validación de los modelos de Aprendizaje Automático y las posibilidades que ofrece cada modelo para interpretar los resultados de su entrenamiento.
alumno debe emplear la base de datos proporcionada que consta de 1000 bservaciones. El conjunto de datos se dividirá en un conjunto de entrenamiento con los primeros 800 registros y un conjunto de test con los siguientes 200 registros. Cuando se necesario realizar ajustes de parámetros y validación, el conjunto de entrenamiento se dividirá a su vez en un conjunto de entrenamiento con los primeros 600 registros y un conjunto de validación con los 200 siguientes.
A. Realice un preprocesado de datos consistente en normalizar las variables numéricas y codificar numéricamente las variables categóricas mediante One-Hot Encoding. Investigue y explique en qué consiste este preprocesado y por qué debe realizarse.
B. Implemente un clasificador basado en regresión lineal con un threshold de decisión de 0.5. Calcule la matriz de confusión del modelo sobre el conjunto de entrenamiento y calcule a partir de esta las métricas accuracy, precisión, recall y F1 del modelo. Realice lo mismo con los datos de test y compárelos. Analice y explique el sesgo y la varianza del modelo.
C. Implemente clasificadores mediante regresión logística (threshold 0.5), árboles de decisión (sin límite de profundidad) y KNN (k = 10). Genere una tabla con los resultados de la métrica accuracy para todos los modelos entrenados sobre los conjuntos de entrenamiento y test. Compárelos y discuta el sesgo y la varianza de cada modelo.
D. Suponga ahora que el coste de conceder un crédito (y que el cliente no lo devuelva) es el cuatro veces que el coste de no concederlo en el caso de que un cliente sí lo hubiera devuelto.
a. Threshold regresión: 0.25, 0.4, 0.5, 0.6, 0.75
b. Profundidad árbol: 3, 4, 5, 6, 7
c. Valor K de KNN: 5, 10, 15, 20, 25
Usando ahora la división del conjunto de datos en tres subconjuntos (entrenamiento, validación y test), realice el ajuste de los parámetros de cada modelo (threshold en regresiones, profundidad en árbol y valor k en KNN) para minimizar la función de coste, probando 5 valores distintos para cada parámetro.
Muestre las métricas sobre el conjunto de validación para cada parámetro testado e indique cual es el mejor en cada caso.
E. Compare el resultado en las métricas accuracy, precision, recall y F1-score de los modelos antes y después del ajuste de sus parámetros. Analice qué modelos han sido más sensibles al ajuste, qué cambios se han producido en sus métricas y cual es el mejor modelo ajustado para minimizar la función de coste.
F. Investigue las posibilidades que ofrecen los modelos basados en regresión lineal, regresión logística y árboles de decisión para interpretar los resultados de su entrenamiento desde una perspectiva de negocio a través de los coeficientes de la regresión y las reglas de decisión. Aplíquelo a los modelos ajustados y explique los resultados obtenidos. Explique en qué consiste el problema que surge con la interpretación de los parámetros de la regresión lineal (colinealidad) y aplique alguna de las posibles soluciones para ofrecer una interpretación válida.
Cada grupo deberá elaborar un cuaderno Jupyter donde se desarrollen los ejercicios planteados y se muestren y analicen los resultados. Además, en base a estos resultados cada grupo deberá producir una presentación pecha kucha (20 transparencias de 20 segundos de duración). Sobre esta presentación se grabará una locución explicando los resultados obtenidos y su significado en el contexto del problema. La presentación se convertirá a formato vídeo (.mp4) que deberá tener una duración de 6 minutos y 40 segundos. Cada grupo deberá entregar el cuaderno de Jupyter, con el resultado de la ejecución completa del código, así como el video de su presentación.
La práctica se entregará a través de la tarea correspondiente en Blackboard hasta las 23.59 horas del martes 25 de noviembre. En la clase de laboratorios del día 27 de noviembre todos los alumnos de laboratorio realizarán un examen individual en el que se plantearán distintas preguntas relativas al desarrollo de esta práctica.
Criterios de Valoración Seguimiento de las normas Originalidad Corrección de los resultados Profundidad de los análisis realizados Comprensión de conceptos, técnicas y resultados La calificación de cada alumno se calculará de la siguiente forma:
Nota PL1 = 10 * Min(Nota grupo, Nota examen individual)
Tomándose la nota de grupo y la individual como valores normalizados (rango [0, 1]).