Ir al contenido principal

Diagrama de temas

    • Evaluación de modelos de clasificación

      Evaluación de modelos de clasificación


      Archivo de datos

      /home/student/ITSAI/Classification/data/newdata.csv


      Antes de empezar

      Classification-Boston.ipynb está abierto en Jupyter Notebook.


      Nota: Si cerró Jupyter Notebook desde que completó la actividad anterior, deberá reiniciar Jupyter Notebook y volver a abrir el archivo. Para asegurarse de que todos los objetos y la salida de Python están en el estado correcto para comenzar esta actividad:


      1. Seleccione Kernel→Reiniciar & y Borrar salida.
      2. Seleccione Reiniciar y borrar todas las salidas.
      3. Desplácese hacia abajo y seleccione la celda con la etiqueta Comparar métricas de evaluación para cada modelo.
      4. Seleccione Celda→ Ejecutar todo lo anterior.

      Escenario

      Ahora que entrenó y ajustó sus modelos, desea evaluar su rendimiento utilizando algo más que precisión. Hay muchas métricas de clasificación útiles que podrían ser relevantes para sus datos.
      Una vez que haya evaluado los modelos, deberá elegir el que mejor funcione y lo usará para realizar predicciones sobre nuevos datos que el modelo aún no vio.


      -------------------------------------------------------------------------------------------------------------------------------------------------------------

      1. Compare las métricas de evaluación para cada modelo.
      2. Desplácese hacia abajo y vea la celda titulada Comparar las métricas de evaluación para cada modelo y examine la lista de código que aparece debajo de ella.

      Este código comparará las puntuaciones de precisión de los cuatro modelos que creó en el tema anterior.

      2. Ejecute la celda de código.

      3. Examine el resultado.

      La puntuación de precisión se muestra para cada modelo. La tabla se ordena por la puntuación de precisión más alta. El modelo de bosque aleatorio tiene la puntuación más alta, pero el árbol de decisión y los modelos de regresión logística están cerca.

      4. En la siguiente celda de código, examine el código.

      Este código comparará las puntuaciones de exactitud de los cuatro modelos.

      5. Ejecute la celda de código.

      6. Examine el resultado.

      La puntuación de exactitud se muestra para cada modelo. El modelo de bosque aleatorio tiene la puntuación más alta, pero el árbol de decisión y los modelos de regresión logística están cerca. El modelo k-NN tiene una puntuación comparativamente baja.

      7. En la siguiente celda de código, examine el código.

      Este código comparará las puntuaciones de recuperación de los cuatro modelos.

      8. Ejecute la celda de código.

      9. Examine el resultado.

      La puntuación de recuperación se muestra para cada modelo. Nuevamente, el modelo de bosque aleatorio tiene la puntuación más alta, pero el modelo de árbol de decisión y el modelo de regresión logística están empatados en segundo lugar. El modelo k-NN vuelve a tener la puntuación más baja.

      10. En la siguiente celda de código, examine el código.

      Este código comparará la puntuación F1 de los cuatro modelos.

      11. Ejecute la celda de código.

      12. Examine el resultado.

      La puntuación F1 se muestra para cada modelo. El modelo de bosque aleatorio tiene la puntuación más alta, pero el modelo de árbol de decisión y el modelo de regresión logística están empatados en segundo lugar. El modelo k-NN tiene la puntuación más baja.

      El modelo de bosque aleatorio obtuvo la puntuación más alta en cada una de estas métricas, lo que indica que probablemente sea el modelo óptimo para usar (al menos de estos cuatro modelos).


      --------------------------------------------------------------------------------------------------------------------------------------------------------
      2. Genere una matriz de confusión.
      1. Desplácese hacia abajo y vea la celda titulada Generar una matriz de confusión y examine la lista de código debajo de ella.

      Se centrará en su mejor modelo, el modelo de bosque aleatorio, para el resto de sus esfuerzos de evaluación. Este código mostrará una matriz de confusión de los valores de clasificación verdaderos.

      2. Ejecute la celda de código.

      3. Examine el resultado.

      Esta matriz de confusión muestra los valores brutos para cada evaluación verdadera. Sin embargo, será más fácil de leer cuando use una función de visualización para diagramar la matriz.

      4. En la siguiente celda de código, examine el código.

      La matriz de confusión se etiquetará y tendrá un mapa de color para indicar la magnitud en cada cuadrante. Además, los valores se normalizarán para que muestren un porcentaje de la fila total, en lugar de los valores sin formato.

      5. Ejecute la celda de código.

      6. Examine el resultado.

      Los resultados pueden interpretarse de la siguiente manera:

      En el cuadrante superior izquierdo, el modelo predijo correctamente que el 93 % de los valores False reales (por ejemplo, los pasajeros que perecieron) eran False. Estos son los verdaderos valores negativos.
      En el cuadrante superior derecho, el modelo predijo incorrectamente que el 7 % restante de los valores False reales eran True. Estos son los falsos positivos.
      En el cuadrante inferior izquierdo, el modelo predijo incorrectamente que el 30 % de los valores True reales (por ejemplo, los pasajeros que sobrevivieron) eran False. Estos son los falsos negativos.
      En el cuadrante inferior derecho, el modelo predijo correctamente que el 70 % restante de los valores True reales eran True. Estos son los verdaderos valores positivos.

      Esto concuerda con las puntuaciones que vio anteriormente. El mayor "error" está en el cuadrante inferior izquierdo, que muestra los falsos negativos. A medida que aumentan los falsos negativos, la puntuación de recuperación disminuye.


      -------------------------------------------------------------------------------------------------------------------------------------------------------------
      3. Realice predicciones sobre los nuevos datos con el modelo de bosque aleatorio.
      1. Desplácese hacia abajo y vea la celda titulada Realizar predicciones en los nuevos datos con el modelo de bosque aleatorio y examine la lista de código debajo de ella.

      Este código cargará el archivo newdata.csv en un archivo DataFrame.

      2. Ejecute la celda de código.

      3. Examine el resultado.

      418 registros se cargan desde newdata.csv. Recuerde que se trata de un conjunto de datos nuevos, independiente de los conjuntos de entrenamiento y validación. Este conjunto no incluye valores de etiqueta (ActualSurvival). Usted no conoce el destino de estos pasajeros. El modelo de aprendizaje automático está diseñado para hacer predicciones para este tipo de datos.
      4. En la siguiente celda de código, examine el código.

      Este código utilizará los datos nuevos y el modelo de bosque aleatorio para predecir la supervivencia de cada pasajero y la probabilidad de que pereció o sobrevivió.

      5. Ejecute la celda de código.

      6. Examine el resultado.

      El modelo de bosque aleatorio predijo valores para este nuevo conjunto de datos, cumpliendo su propósito final de predecir quién habría sobrevivido y quién habría perecido a bordo del Titanic.


      ------------------------------------------------------------------------------------------------------------------------------------------------------------------------

      4. Cierre este kernel de Jupyter Notebook y la máquina virtual.
      1. En Firefox, seleccione la pestaña Classification.ipynb.
      2. En el menú, seleccione Kernel→Cerrar.
      3. En el cuadro de diálogo ¿Cerrar kernel?, seleccione Cerrar.
      4. Cierre Firefox.
      5. Cierre la ventana Terminal que ejecuta el programa Jupyter Notebook.
      6. En el menú VirtualBox VM en la parte superior de la pantalla, seleccione Equipo→Apagar ACPI y, si es necesario, seleccione Apagar. Compruebe que la ventana de la VM se cierre.
      7. Cierre la ventana Oracle VM VirtualBox Manager.