jueves, 20 de julio de 2023

matriz confusion

 Supongamos que tenemos un modelo de clasificación que predice si un paciente tiene una enfermedad (clase positiva) o no tiene la enfermedad (clase negativa) en base a ciertas características médicas.

Tenemos los siguientes resultados del modelo en una muestra de 100 pacientes:

  • Verdaderos positivos (TP): El modelo predijo que 30 pacientes tenían la enfermedad y efectivamente tenían la enfermedad.
  • Verdaderos negativos (TN): El modelo predijo que 50 pacientes no tenían la enfermedad y efectivamente no la tenían.
  • Falsos positivos (FP): El modelo predijo que 10 pacientes tenían la enfermedad, pero en realidad no la tenían (falsos alarmas).
  • Falsos negativos (FN): El modelo predijo que 10 pacientes no tenían la enfermedad, pero en realidad sí la tenían (errores de omisión).

La matriz de confusión se vería así:

yaml
Clase predicha Enfermo No Enfermo Clase real Enfermo TP FN No Enfermo FP TN
  • Verdaderos Positivos (TP): El modelo acertó 30 pacientes que realmente tenían la enfermedad (acertó la clase positiva).
  • Verdaderos Negativos (TN): El modelo acertó 50 pacientes que realmente no tenían la enfermedad (acertó la clase negativa).
  • Falsos Positivos (FP): El modelo predijo erróneamente que 10 pacientes tenían la enfermedad cuando en realidad no la tenían.
  • Falsos Negativos (FN): El modelo predijo erróneamente que 10 pacientes no tenían la enfermedad cuando en realidad sí la tenían.
que comprende el preprocesamiento

El preprocesamiento de datos es una etapa crucial en el proceso de preparación de datos antes de entrenar un modelo de aprendizaje automático. Su objetivo es limpiar y transformar los datos brutos para que el modelo pueda interpretarlos y aprender patrones de manera efectiva. El preprocesamiento comprende una serie de pasos que incluyen:

  1. Limpieza de datos: Esto implica manejar valores faltantes, datos duplicados o ruidosos. Los valores faltantes pueden ser imputados (rellenados con valores) usando diferentes estrategias, como la media o la moda para datos numéricos y categóricos, respectivamente. Los datos duplicados deben ser eliminados y los datos ruidosos pueden ser filtrados o corregidos.

  2. Codificación de variables categóricas: Los algoritmos de aprendizaje automático generalmente trabajan con variables numéricas. Por lo tanto, las variables categóricas deben convertirse a valores numéricos mediante técnicas como codificación one-hot, etiquetado ordinal o codificación de frecuencia.

  3. Escalado de características: Algunos algoritmos de aprendizaje automático pueden verse afectados por la escala de las características. Por ejemplo, algoritmos basados en distancias pueden ser sensibles a las magnitudes de las características. Es común escalar las características para que tengan media cero y varianza unitaria, utilizando técnicas como la normalización o la estandarización.

  4. Reducción de dimensionalidad: Cuando se trabaja con conjuntos de datos con muchas características, puede ser útil reducir la dimensionalidad para evitar la maldición de la dimensionalidad y mejorar el rendimiento computacional. Técnicas como Análisis de Componentes Principales (PCA) se utilizan para lograr esto.

  5. Balanceo de clases: En problemas de clasificación, es posible que las clases objetivo no estén equilibradas, lo que puede sesgar el modelo hacia la clase dominante. El balanceo de clases se utiliza para igualar la distribución de las clases objetivo en el conjunto de entrenamiento.

  6. Eliminación de características irrelevantes: En algunos casos, puede haber características que no aporten información significativa para el problema en cuestión. La eliminación de características irrelevantes puede mejorar la eficiencia y precisión del modelo.

El preprocesamiento puede ser una tarea compleja y requiere un buen entendimiento del conjunto de datos y del algoritmo de aprendizaje automático que se utilizará. PyCaret, por ejemplo, automatiza gran parte del preprocesamiento y selección de características para facilitar el desarrollo de modelos de aprendizaje automático. Sin embargo, en problemas más complejos, puede ser necesario realizar ajustes y personalizaciones adicionales en el preprocesamiento para obtener los mejores resultados.

No hay comentarios:

Publicar un comentario