{ "cells": [ { "cell_type": "markdown", "metadata": { "id": "RQWtavQs4_O7" }, "source": [ "

Laboratorio N° 4\n", "

Profesor: Richard Weber\n", "

Auxiliares: Cristóbal Pérez y Joaquín Roa\n", "

Ayudantes: Diana Escobar, Katherine Rutte, Matías Cartes e Ignacio Henríquez\n", "

IN6531-1 - Introducción a la Minería de Datos\n", "

Primavera 2023\n", "\n", "---" ] }, { "cell_type": "markdown", "metadata": { "id": "S1L7VhMFsMcx" }, "source": [ "## Reglas y Objetivos" ] }, { "cell_type": "markdown", "metadata": { "id": "frf-PYzfy1-x" }, "source": [ "###Declaración de Compromiso Ético:\n", "\n", "Nosotras/os **Integrante 1, Integrante 2, Integrante 3, Integrante 4 e Integrante 5** declaramos que realizamos de manera grupal los pasos de la presente actividad. También declaramos no incurrir en copia, ni compartir nuestras respuestas con otras personas ni con otros grupos. Por lo que, ratificamos que las respuestas son de nuestra propia confección y reflejan nuestro propio conocimiento." ] }, { "cell_type": "markdown", "metadata": { "id": "9el9ERaKWW3i" }, "source": [ "### Reglas:\n", "\n", "- Fecha de entrega: 4 días desde la publicación, 3 días de atraso con 1 punto de descuento c/u. Pueden utilizar días bonus sin descuento.\n", "- **Grupos de máximo 5 personas**.\n", "- Para trabajar este laboratorio edite este documento `.ipynb` agregando sus respuestas donde corresponda.\n", "- Para cada pregunta, cuando corresponda, incluya el código fuente que utilizó para llegar a su respuesta.\n", "- El formato de entrega para esta actividad debe ser un archivo `.ipynb` el cual debe ser subido a U-Cursos. Basta con que uno de los integrantes haga la entrega. Si más integrantes hacen una entrega en U-Cursos, se revisará cualquiera de éstas.\n", "- Cualquier duda fuera del horario de clases al foro. Mensajes al equipo docente serán respondidos por este medio.\n", "- Prohibidas las copias. En caso de sospecha de copia se activarán los protocolos correspondientes.\n", "- Pueden usar cualquer material del curso que estimen conveniente.\n", "\n", "\n", "\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "4708b9b7" }, "source": [ "### Objetivos del Laboratorio:\n", "\n", "\n", "- Reconocer métricas de desempeño de clasificadores.\n", "- Reforzar buenas prácticas en problemas de clasificación.\n", "- Aplicar conocimientos de clasificación a un problema de ciencia de datos de la vida real." ] }, { "cell_type": "markdown", "metadata": { "id": "xqRnDvp1qj8o" }, "source": [ "## 1. Preguntas Teóricas (1.0 Puntos)\n", "\n", "Esta sección consta de preguntas respecto a la materia vista en clases de cátedra y auxiliares, como también de instar a investigar un poco más allá de lo que se vé en estas:" ] }, { "cell_type": "markdown", "metadata": { "id": "4A8i-9_etU96" }, "source": [ "**P1**.- (0.1 Puntos) ¿Qué se entiende por Falso Positivo y Falso Negativo, y cómo esto se relaciona con la matriz de confusión?" ] }, { "cell_type": "markdown", "metadata": { "id": "sWJFIQxP0eHn" }, "source": [ "**Respuesta:**" ] }, { "cell_type": "markdown", "metadata": { "id": "wiVo6oZWtU7J" }, "source": [ "**P2**.- (0.4 Puntos) ¿Qué es recall, precision, accuracy y f1-score? ¿Cómo se calculan? Dé un ejemplo aplicado de cuándo utilizar cada una de estas métricas." ] }, { "cell_type": "markdown", "metadata": { "id": "iiHQZj5C03Ss" }, "source": [ "**Respuesta:**" ] }, { "cell_type": "markdown", "metadata": { "id": "4WLh1kwXtVAr" }, "source": [ "**P3**.- (0.3 Puntos) ¿Qué es el True Positive Rate y el False Positive Rate? ¿Cómo se relacionan con la curva ROC y el área bajo al curva de esta? ¿Qué nos dice esta curva?" ] }, { "cell_type": "markdown", "metadata": { "id": "Iz2nQ5dY03m6" }, "source": [ "**Respuesta:**" ] }, { "cell_type": "markdown", "metadata": { "id": "KhK5JNeetU1a" }, "source": [ "**P4**.- (0.2 Puntos) ¿En qué se diferencia un problema de clasificación con uno de clustering o de regresión? ¿A qué tipo de aprendizaje corresponde cada una de estas tareas?" ] }, { "cell_type": "markdown", "metadata": { "id": "bZGWVNg600zt" }, "source": [ "**Respuesta:**" ] }, { "cell_type": "markdown", "metadata": { "id": "WcfN8xmyqj-p" }, "source": [ "## 2. Preguntas Prácticas (5.0 Puntos)\n", "\n", "En este laboratorio trabajaremos con un dataset que contiene información financiera de los clientes de tarjeta de crédito de una entidad bancaria. Esta base de datos tiene 22 features, entre ellas \"aumento\", variable que buscaremos predecir de la mejor forma.\n", "\n", "La variable objetivo nos indica si en el mes t, el cliente pidió un aumento de cupo para su tarjeta de crédito, en específico, se busca predecir qué clientes pedirán un aumento de cupo para el mes de agosto (202208).\n", "\n", "Para alcanzar este objetivo, usted estudiará la base de datos entregada e intentará encontrar un clasificador que, según una métrica de error, se desempeñe de mejor forma.\n", "\n", "Además, como ayuda para sus proyectos y para la vida, deberá elaborar recomendaciones y aplicaciones comerciales a través de este modelo.\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "r6ts80cUmPfe" }, "source": [ "### 2.1. EDA (1.0 Puntos)" ] }, { "cell_type": "markdown", "metadata": { "id": "KLGq-2f1mV3M" }, "source": [ "Para el Análisis Exploratorio de Datos se le pide lo siguiente:\n", "\n", "1. (0.2 Puntos) Crear una función \"eda(bd)\", que reciba un dataframe de pandas y muestre en pantalla:\n", " * Cantidad de variables e instancias\n", " * Features presentes en la base de datos.\n", " * Cantidad de nulos por feature e instancias duplicadas.\n", " * Cantidad de valores únicos por feature.\n", " * Muestre estadísticos del dataset.\n", " \n", " Responda: ¿Existen outliers en el dataset?\n", "2. (0.1 Puntos) Identificar variables numéricas y categóricas, además, las instancias únicas por variable categórica.\n", "3. (0.1 Puntos) Visualizar las correlaciones entre variables. Comente: ¿Qué se puede concluir respecto a esta visualización?\n", "4. (0.2 Puntos) Muestre un pairplot pintando por la variable objetivo. Comente: ¿Qué ventajas tiene este gráfico respecto al anterior?\n", "5. (0.1 Puntos) A partir de la visualización anterior comente: ¿Existen distribuciones notables (reconocibles) en los datos?\n", "6. (0.1 Puntos) Agregue cualquier otro gráfico que estime relevante para una mejor comprensión de los datos (puede agregar más de una visualización).\n", "7. (0.2 Puntos) Concluya respecto a qué variables del dataset no consideraría para el estudio, justifique su respuesta y elimínelas.\n", "\n", "Nota: tener en consideración que a este punto no se ha manipulado los datos, sólo se han eliminado variables." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 461 }, "id": "hjr3TiyXjtl7", "outputId": "39fefdb3-1e20-4de2-b08d-670be321396b" }, "outputs": [], "source": [ "df = pd.read_csv()" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "id": "5oiP30n4pmR7" }, "outputs": [], "source": [ "# 1\n", "def eda(bd):\n", " # guíese por la salida de ejemplo del siguiente bloque de código.\n", " # puede ser útil la función display()." ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 1000 }, "id": "sTGgDcQRqnzv", "outputId": "83af5b14-765f-4104-9f9b-ef45001a13c5" }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Este es el reporte de Análisis Exploratorio de Datos de su DataFrame:\n", "\n", "El dataset contiene 22 features y 1352531 instancias\n", "\n", "Las variables del dataset son:\n", "['Unnamed: 0', 'id', 'periodo', 'edad', 'sexo', 'renta', 'remuneracion_Q_op', 'segmento_riesgo', 'Q_prods', 'TC_q_op', 'TC_cupo', 'TC_saldo', 'CCTE_Q_op', 'CCTE_saldo', 'LCRED_Q_op', 'LCRED_cupo', 'LCRED_saldo', 'ABONO_monto', 'ABONO_op', 'TRANS_op', 'TRANS_monto', 'aumento']\n", "\n", "Los datos nulos por feature son:\n" ] }, { "data": { "text/plain": [ "Unnamed: 0 0\n", "id 0\n", "periodo 0\n", "edad 0\n", "sexo 0\n", "renta 0\n", "remuneracion_Q_op 0\n", "segmento_riesgo 859\n", "Q_prods 0\n", "TC_q_op 0\n", "TC_cupo 0\n", "TC_saldo 0\n", "CCTE_Q_op 0\n", "CCTE_saldo 0\n", "LCRED_Q_op 0\n", "LCRED_cupo 0\n", "LCRED_saldo 0\n", "ABONO_monto 88314\n", "ABONO_op 88314\n", "TRANS_op 88314\n", "TRANS_monto 88314\n", "aumento 0\n", "dtype: int64" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\n", "Las instancias duplicadas son:\n" ] }, { "data": { "text/plain": [ "0" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\n", "Los valores únicos por feature son:\n" ] }, { "data": { "text/plain": [ "Unnamed: 0 1352531\n", "id 231943\n", "periodo 6\n", "edad 67\n", "sexo 2\n", "renta 205880\n", "remuneracion_Q_op 36\n", "segmento_riesgo 14\n", "Q_prods 11\n", "TC_q_op 17\n", "TC_cupo 9118\n", "TC_saldo 689088\n", "CCTE_Q_op 6\n", "CCTE_saldo 776529\n", "LCRED_Q_op 4\n", "LCRED_cupo 3598\n", "LCRED_saldo 217512\n", "ABONO_monto 880354\n", "ABONO_op 473\n", "TRANS_op 278\n", "TRANS_monto 587439\n", "aumento 2\n", "dtype: int64" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\n" ] }, { "data": { "text/html": [ "\n", "
\n", "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
countmeanstdmin25%50%75%max
Unnamed: 01352531.0907614.00390442.21231349.00569481.50907614.001245746.501.583879e+06
id1352531.0114973.4466913.381.0056921.00114544.00172654.002.319550e+05
periodo1352531.0202205.531.71202203.00202204.00202206.00202207.002.022080e+05
edad1352531.042.5811.5815.0033.0040.0049.001.220000e+02
sexo1352531.00.590.490.000.001.001.001.000000e+00
renta1352531.04855.601196785.060.001150.621763.962845.505.681831e+08
remuneracion_Q_op1352531.00.240.590.000.000.000.006.600000e+01
Q_prods1352531.05.001.221.004.005.006.001.100000e+01
TC_q_op1352531.01.020.480.001.001.001.002.400000e+01
TC_cupo1352531.06446.306968.500.002272.734204.557954.552.159091e+05
TC_saldo1352531.01390.933221.04-306125.240.0069.731397.851.490992e+05
CCTE_Q_op1352531.01.030.220.001.001.001.005.000000e+00
CCTE_saldo1352531.03379.5513376.89-25182.020.54359.192385.544.926667e+06
LCRED_Q_op1352531.00.980.200.001.001.001.003.000000e+00
LCRED_cupo1352531.02503.122966.830.001136.361477.272840.911.136364e+05
LCRED_saldo1352531.0213.00951.00-12045.45-0.000.00-0.007.306346e+04
ABONO_monto1264217.07801.4131341.900.00444.432007.265781.176.591914e+06
ABONO_op1264217.010.2124.860.002.005.0011.008.072000e+03
TRANS_op1264217.06.8520.300.000.003.0010.005.314000e+03
TRANS_monto1264217.02088.907965.410.000.00512.501945.454.868315e+06
aumento1352531.00.020.140.000.000.000.001.000000e+00
\n", "
\n", "
\n", "\n", "
\n", " \n", "\n", " \n", "\n", " \n", "
\n", "\n", "\n", "
\n", " \n", "\n", "\n", "\n", " \n", "
\n", "
\n", "
\n" ], "text/plain": [ " count mean std min 25% \\\n", "Unnamed: 0 1352531.0 907614.00 390442.21 231349.00 569481.50 \n", "id 1352531.0 114973.44 66913.38 1.00 56921.00 \n", "periodo 1352531.0 202205.53 1.71 202203.00 202204.00 \n", "edad 1352531.0 42.58 11.58 15.00 33.00 \n", "sexo 1352531.0 0.59 0.49 0.00 0.00 \n", "renta 1352531.0 4855.60 1196785.06 0.00 1150.62 \n", "remuneracion_Q_op 1352531.0 0.24 0.59 0.00 0.00 \n", "Q_prods 1352531.0 5.00 1.22 1.00 4.00 \n", "TC_q_op 1352531.0 1.02 0.48 0.00 1.00 \n", "TC_cupo 1352531.0 6446.30 6968.50 0.00 2272.73 \n", "TC_saldo 1352531.0 1390.93 3221.04 -306125.24 0.00 \n", "CCTE_Q_op 1352531.0 1.03 0.22 0.00 1.00 \n", "CCTE_saldo 1352531.0 3379.55 13376.89 -25182.02 0.54 \n", "LCRED_Q_op 1352531.0 0.98 0.20 0.00 1.00 \n", "LCRED_cupo 1352531.0 2503.12 2966.83 0.00 1136.36 \n", "LCRED_saldo 1352531.0 213.00 951.00 -12045.45 -0.00 \n", "ABONO_monto 1264217.0 7801.41 31341.90 0.00 444.43 \n", "ABONO_op 1264217.0 10.21 24.86 0.00 2.00 \n", "TRANS_op 1264217.0 6.85 20.30 0.00 0.00 \n", "TRANS_monto 1264217.0 2088.90 7965.41 0.00 0.00 \n", "aumento 1352531.0 0.02 0.14 0.00 0.00 \n", "\n", " 50% 75% max \n", "Unnamed: 0 907614.00 1245746.50 1.583879e+06 \n", "id 114544.00 172654.00 2.319550e+05 \n", "periodo 202206.00 202207.00 2.022080e+05 \n", "edad 40.00 49.00 1.220000e+02 \n", "sexo 1.00 1.00 1.000000e+00 \n", "renta 1763.96 2845.50 5.681831e+08 \n", "remuneracion_Q_op 0.00 0.00 6.600000e+01 \n", "Q_prods 5.00 6.00 1.100000e+01 \n", "TC_q_op 1.00 1.00 2.400000e+01 \n", "TC_cupo 4204.55 7954.55 2.159091e+05 \n", "TC_saldo 69.73 1397.85 1.490992e+05 \n", "CCTE_Q_op 1.00 1.00 5.000000e+00 \n", "CCTE_saldo 359.19 2385.54 4.926667e+06 \n", "LCRED_Q_op 1.00 1.00 3.000000e+00 \n", "LCRED_cupo 1477.27 2840.91 1.136364e+05 \n", "LCRED_saldo 0.00 -0.00 7.306346e+04 \n", "ABONO_monto 2007.26 5781.17 6.591914e+06 \n", "ABONO_op 5.00 11.00 8.072000e+03 \n", "TRANS_op 3.00 10.00 5.314000e+03 \n", "TRANS_monto 512.50 1945.45 4.868315e+06 \n", "aumento 0.00 0.00 1.000000e+00 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "eda(df)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "W0Tzldi4pnSv" }, "outputs": [], "source": [ "# 2" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "hQh_3Za5pn20" }, "outputs": [], "source": [ "# 3" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "5OX5D1DTpojH" }, "outputs": [], "source": [ "# 4" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "QY0eNSB3ppKq" }, "outputs": [], "source": [ "# 5" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "Allx7wNnpp1B" }, "outputs": [], "source": [ "# 6" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "GNHI0t-0pqoW" }, "outputs": [], "source": [ "# 7" ] }, { "cell_type": "markdown", "metadata": { "id": "C_yx9hQFqqK1" }, "source": [ "### 2.2. Preprocesamiento y Feature Engineering (1.0 Puntos)" ] }, { "cell_type": "markdown", "metadata": { "id": "WNug9WbxkNR_" }, "source": [ "Antes de iniciar el preprocesamiento de los datos, su primera tarea consiste en separar la data de testeo, en este caso consiste en el mes de agosto del año 2022, filtre estos datos y no los manipule hasta que se le indique (0.2 Puntos).\n", "\n", "1. Divida en X e y su base de datos.\n", "2. (0.1 Puntos) Trate los datos faltantes en su dataset (train) como estime conveniente, pero entregue una justificación del por qué tomó esta decisión.\n", "3. (0.1 Puntos) Trate los outliers del dataset como estime conveniente, al igual que en la pregunta anterior, justifique su decisión.\n", "4. (0.3 Puntos) Cree al menos 2 variables nuevas, justifique el por qué estas pueden ser relevantes para resolver el problema o dé una intuición del por qué.\n", "5. (0.3 Puntos) Teniendo en consideración que ya conoce la distribución de los datos, escale las variables numéricas, con un escalador a su elección y codifique las variables categóricas para que queden como binarias, se puede apoyar en la auxiliar 4.\n", "\n", "Nota: para las preguntas 2 y 3 recuerde mantener las buenas prácticas, es decir, que se pueda aplicar estos procesamientos con la opción de no volver a recalcular (en caso de) cada vez que se ejecute.\n", "\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "gSvhaQ3ku3W6" }, "outputs": [], "source": [ "# 0" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "zs8EWogmkMLS" }, "outputs": [], "source": [ "# 1" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "6gjdkvzMpSdR" }, "outputs": [], "source": [ "# 2" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "ndV2CsUIpTlv" }, "outputs": [], "source": [ "# 3" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "svqEqEjupUq1" }, "outputs": [], "source": [ "# 4" ] }, { "cell_type": "markdown", "metadata": { "id": "GKaFGKtcuYSE" }, "source": [ "### 2.3. Entrenamiento y Validación de Modelos (1.5 Puntos)" ] }, { "cell_type": "markdown", "metadata": { "id": "K7E7YbJXjxNv" }, "source": [ "En esta sección del laboratorio se le pide:\n", "1. (0.2 Puntos) Con sus datos preprocesados entrene con 4 validaciones cruzadas:\n", " * Decision Tree.\n", " * Random Forest.\n", " * SVC (C-Support Vector Classification).\n", " * Regresión Logística.\n", " \n", " Imprima las métricas de desempeño promedio, y seleccione el mejor modelo según precision.\n", "2. (0.3 Puntos) Comente: ¿Por qué esta métrica es relevante para el problema? Dé una justificación de ello.\n", "3. (0.5 Puntos) Con el mejor modelo se le pide:\n", " * Buscar al menos 3 hiperparámetros que se puedan tunear para mejorar el rendimiento.\n", " * Optimice con GridSearchCV con 4 validaciones cruzadas y utilizando precision como métrica.\n", " * Muestre la mejor combinación de hiperparámetros y el desempeño del modelo.\n", "\n", "4. (0.5 Puntos) Por último, reentrene su modelo con la mejor combinación de hiperparámetros en un dataset balanceado, usted elija el método adecuado para balancear, y muestre el desempeño con un reporte de clasificación. Compare con los resultades de antes y comente por qué se obtienen estos.\n", "\n", "Nota: recuerde siempre fijar una semilla." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "wT-DqB2Pmvtb" }, "outputs": [], "source": [ "# 1" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "n4m8E2-gpOp1" }, "outputs": [], "source": [ "# 2" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "eEW0EL9cpPPz" }, "outputs": [], "source": [ "# 3" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "jMX5iDDwpQQh" }, "outputs": [], "source": [ "# 4" ] }, { "cell_type": "markdown", "metadata": { "id": "TyjJkDDDmzQi" }, "source": [ "### 2.4. Testeo e Inteligencia de Negocios (1.5 Puntos)" ] }, { "cell_type": "markdown", "metadata": { "id": "NZ9Z5TzNm7fC" }, "source": [ "En esta última sección del laboratorio se abordará el testeo del modelo desarrollado y se evaluarán aplicaciones de este en un contexto real:\n", "1. (0.3 Puntos) Para empezar, separe en $X_{test}$ e $y_{test}$ el dataset de testeo y repita el preprocesamiento y feature engineering que hizo en su dataset en la sección 2.2 sobre estos datos de testing. Recuerde que no debe reentrengar escaladores ni codificadores.\n", "2. (0.2 Puntos) Ahora con su mejor modelo, realice las predicciones y obtenga las métricas de error con un reporte de clasificación y muestre la matriz de confusión. ¿Cómo le fue a su clasificador?\n", "3. (1.0 Puntos) Dados los resultados obtenidos:\n", " * Elabore al menos 2 propuestas comerciales que se puedan llevar a cabo con su modelo.\n", " * Justifique el valor de ello, o bien, si cree que no merece la pena hacer estas recomendaciones a partir del desempeño de su modelo, defienda su postura.\n", "\n", " Expláyese en esta última pregunta del laboratorio.\n", "\n", "\n", " **Éxito 🙂**" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "2QKdz9eYpHWn" }, "outputs": [], "source": [ "# 1" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "5l-nbHR6pLCs" }, "outputs": [], "source": [ "# 2" ] } ], "metadata": { "colab": { "collapsed_sections": [ "S1L7VhMFsMcx", "xqRnDvp1qj8o", "C_yx9hQFqqK1", "GKaFGKtcuYSE", "TyjJkDDDmzQi" ], "provenance": [] }, "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.10" } }, "nbformat": 4, "nbformat_minor": 0 }