Evaluación de modelos de machine learning: conceptos y métricas clave

Diapositivas de Deusto.es sobre la evaluación de modelos. El Pdf, un material de Informática para Universidad, explora conceptos y métricas clave como la precisión, el recall y la curva ROC, proporcionando una metodología robusta para el análisis de modelos.

See more

42 Pages

Evaluación de modelos
Aitor Almeida
aitor.almeida@deusto.es
Overview
En esta unidad vamos a ver como evaluar correctamente nuestros
modelos
Vamos a estudiar las diferentes métricas que podemos usar para
hacer una evaluación con una buena metodología.
Vamos a considerar casos en los que el dataset tiene una distribución
balanceada de clases y casos en los que no.
2

Unlock the full PDF for free

Sign up to get full access to the document and start transforming it with AI.

Preview

Evaluación de modelos

Actual Having Disease Not Having Disease Having Disease Predicted 12 8 Not Having Disease 3 77

Aitor Almeida aitor.almeida@deusto.esOverview

  • En esta unidad vamos a ver como evaluar correctamente nuestros modelos
  • Vamos a estudiar las diferentes métricas que podemos usar para hacer una evaluación con una buena metodología.
  • Vamos a considerar casos en los que el dataset tiene una distribución balanceada de clases y casos en los que no.

2

Conceptos básicos

Antes de que empecemos a definir las métricas, vamos a definir algunos conceptos base:

  • Ejemplos positivos (ejemplos que pertenecen a la clase de interés) y ejemplos negativos (el resto).
  • True positives (TP): los ejemplos positivos que han sido etiquetados correctamente por el clasificador.
  • True negatives (TN): los ejemplos negativos que han sido etiquetados correctamente por el clasificador.
  • False positives (FP): Los ejemplos negativos que han sido incorrectamente etiquetados como positivos.
  • False negatives (FN): Los ejemplo positivos que han sido incorrectamente etiquetados como negativos.

3

Matriz de confusión

Esto se puede resumir en una matriz de confusión:

Predicted class yes no Actual class yes TP FN no FP TN Total P N' Confusion matrix, without normalization 12 setosa 13 0 0 10 8 True label versicolor - 0 10 6 - 6 - 4 virginica - 0 0 9 - 2 0 setosa versicolor Predicted label virginica 4 Total P N P+N

Análisis de la matriz de confusión

  • La matriz de confusión es una herramienta útil para analizar que tal esta reconociendo nuestro clasificador diferentes clases.
  • Los TP y TN nos dicen cuando esta acertando.
  • Los FP y FN cuando se equivoca.
  • Nuestro clasificador puede que tenga problemas con una clase en especifico, lo que empeora la medida global de accuracy.
  • La matriz de confusión nos ayuda a identificar en que partes de nuestro clasificador deberíamos trabajar para mejorar los resultados.

5

Matriz de confusión en problemas multiclase

  • Teniendo m clases (cuando m >= 2), una matriz de confusión es una table de al menos m x m.
  • Una entrada, CM, en las primeras m filas y m columnas indica en número de ejemplo de la clase i que fueron etiquetadas como pertenecientes a la clase j.
  • Para que un clasificador tenga una buena accuracy, idealmente la mayoría de ejemplos deberían estar en la diagonal de la matriz, con el resto de celdas siendo 0 o cercanas a 0.
  • Esto es, siendo FP y FN 0.

6

Columnas y filas de la matriz de confusión

  • La tabla puede tener más columnas y filas, para darnos los totales.
  • En uno de los ejemplos anteriores, se muestran P y N:
  • P' es el número de ejemplo que se han etiquetado como positivos (TP + FP)
  • N' es el número de ejemplos que se han etiquetado como negativos (TN + FN)
  • El total de ejemplos es TP + TN + FP + FN, o P + N, o P' + N'.

7

Accuracy

  • La accuracy (a veces también llamada recognition rate) de un clasificador es el porcentaje de ejemplo que se han clasificado correctamente.

TP + TN Accuracy = TP + TN + FP + FN

  • Acordaros de lo que ya hemos hablado de la accuracy > Class imbalance problem

8

Error rate

  • El error rate o misclassification rate de un clasificador es simplemente 1- accuracy. También se puede calculary de la siguiente manera:

Error rate = FP + FN P+N

  • Si usamos el training set en vez del test set para estimar el error rate, se le conoce como resubstitution error.
  • Este error siempre es optimista respecto al verdadero error rate (igual que la accuracy en training es optimista), porque no evaluamos la generalización.

9

Sensitivity y specificity

  • Son métricas muy útiles cuando tenemos clases desbalanceadas.
  • A la sensitivity se le llama también true positive rate (es decir, la proporción de ejemplos positivos clasificados correctamente).
  • A la specificity se le llama también true negative rate (es decir, la proporción de ejemplos negativos clasificados correctamente).

TP Sensitivy = P TN Specificity = N 10

G-Mean

  • La sensitivity y specificity se pueden combinar en una única métrica que balancea ambas, la geometric mean or G-Mran
  • Esta medida trata de maximizar el accuracy en cada una de las clases mientras las mantiene balanceadas.
  • Es usada en problemas con clases desbalanceadas.

GMean = V sensitivity + specificity 11

Precisión

  • La precisión puede ser tomada como una medida de la exactitud del modelo, es decir, el porcentaje de ejemplos etiquetados como positivos que lo son.

TP Precision = TP + FP 12

Recall

  • El recall es una medida de la completitud (el porcentaje de los ejemplos positivos que han sido clasificados como tal).

TP Recall = TP + FN 13

Precisión y Recall

  • Una precisión perfecta de 1.0 para una clase C significa que todos los ejemplos que el clasificador a anotado como pertenecientes a C perteneces a la clase C
  • No nos dice nada sobre cuantos ejemplos de la clase C a anotado incorrectamente.
  • Una recall perfecta de 1.0 para la clase C significa que todos los items de la clase C han sido etiquetados como tal.
  • No nos dice cuantos ejemplos de otras clases han sido clasificados como C.
  • Suele haber una relación inversa entre ambas medidas, reduciendo una cuando mejoramos la otra.

14

F measure

  • Una alternativa a usar la precisión y la recall es combinar ambas medidas en una. Esto es conocido como la F measure (también llamada F score o F-score). Otra opción el la Fe measure.

2 x precision x recall F measure = precision + recall (1 + ß2) x precision x recall FB = ₿2 x precision + recall 15

F measure: media armónica y ponderada

  • La F measure es la media armónica de la precisión y recall. Da el mismo peso a ambas.
  • La Fe es una media ponderada, le da ß más peso a la recall que a la precisión. Valores típicos son 2 y 0.5.
  • Hay que tener en cuenta cuando usamos la F measure que esta dándole la misma importancia a las dos medidas:
  • Por ejemplo, no es lo mismo clasificar a una persona sana como enferma, que clasificar a una persona enferma como sana.

16

Problemas con más de 2 clases

  • ¿ Qué es un ejemplo positivo in negativo en un problema multiclase? Acordaros de la definición del principio: Los ejemplos positivos son los de la clase de interés, y los negativos el resto
  • Eso solo sirve para problema binarios.

17

Problemas multiclase

  • En los problemas multiclase calculamos la métrica por cada clase y hacemos una media de los resultados.
  • Pero esto tiene truco, como calculamos la media es muy importante.
  • La precisión, recall y F1 pueden tener una media macro, micro o ponderada.
  • micro calcula la media considerando los totales de true positives, true negatives, false negatives y false positives.
  • macro calcula la métrica para cada clase y devuelve la media sin tener en cuenta la proporción de ejemplos de cada clase.
  • weighted tiene en cuenta la proporción de ejemplos de cada clase.

18

Macro vs Micro Averaging

  • Macro-averaging calcula la métrica de cada clase y después hace una media aritmética entre todas las clases. Esto es, le da el mismo peso a todas las clases.
  • Micro-averaging, por otro lado, agrega todos los TP, FP y FN de todas las clases y calcula la métrica con ellos. Esto es, le da el mismo peso a cada ejemplo, sin importar a que clase pertenece.
  • Si no hay una clase que sea especialmente importante, usad siempre el macro.

19

Macro averaging: pros y contras

  • Macro-averaging le da la misma importancia a todas las clases.
  • Es útil cuando todas las clases tienen la misma relevancia.
  • Es útil también cuando tenemos un dataset desbalanceado.
  • Sin embargo, puede distorsionar nuestra percepción del rendimiento del modelo.
  • Por ejemplo, puede hacer que parezca que funciona peor por algunas clases con pocos ejemplos.
  • O al contrario, precisamente las clases con pocos ejemplos pueden ser las importantes y no verse reflejado.

20

Micro averaging: pros y contras

  • Micro-averaging puede ser más apropiado cuando nos interesan el número total de errores en la clasificación.
  • Les da el mismo peso a todos los ejemplos.
  • Sin embargo, puede exagerar el rendimiento en la clase mayoritaria, sobre todo si domina el dataset.
  • En este caso, el micro-averaging puede resultar en métricas infladas cuando el clasificador funciona sobre todo en la clase mayoritaria.

21

Variaciones de las métricas

  • Hay tareas en la que una respuesta se considera un TP si la respuesta correcta se hace en X intentos -> Accuracy at 2, accuracy at 5 ...

22

Fórmulas de evaluación

Measure Formula accuracy, recognition rate TP+ TN P+N error rate, misclassification rate FP+ FN P+N sensitivity, true positive rate, recall TP P specificity, true negative rate TN N precision TP TP+ FP F, F1, F-score, harmonic mean of precision and recall 2 x precision x recall precision + recall FB, where ß is a non-negative real number (1+B2) x precision x recall ₿2 x precision+ recall 23

Curva ROC

  • Los TP, TN, FP y FNs son también útiles para evaluar los costes y beneficios de un modelo de clasificación.
  • Los costes asociados a un FN suelen ser mas altos que los asociados a un FP
  • ¿ Me podéis dar un ejemplo?
  • En tales casos, podemos dar más peso a un tipo de error sobre otro asignando un coste diferente a cada uno. Estos costes pueden considerar el peligro para el paciente, los costes financieros de las terapias resultantes y otros costes hospitalarios.
  • De manera similar, los beneficios asociados con una decisión de verdadero positivo pueden ser diferentes de los de un verdadero negativo. Hasta ahora, para calcular la precisión del clasificador, hemos asumido costes iguales y básicamente hemos dividido la suma de verdaderos positivos y verdaderos negativos por el número total de tuplas de prueba.

24

Curva ROC: análisis de coste-beneficio

  • Alternativamente, podemos incorporar los costes y beneficios calculando en su lugar el coste (o beneficio) promedio por decisión.
  • Otras aplicaciones que involucran análisis de coste-beneficio incluyen decisiones sobre solicitudes de préstamos y envíos de marketing dirigido.
  • Por ejemplo, el coste de otorgar un préstamo a un moroso excede con creces el de la pérdida de negocio incurrida por negar un préstamo a un cliente no moroso.
  • De manera similar, en una aplicación que intenta identificar los hogares que probablemente respondan a envíos de cierto material promocional, el coste de enviar a numerosos hogares que no responden puede superar el coste de la pérdida de negocio por no enviar a los hogares que habrían respondido.
  • Otros costes a considerar en el análisis general incluyen los costes de recopilar los datos y desarrollar la herramienta de clasificación.

25

Can’t find what you’re looking for?

Explore more topics in the Algor library or create your own materials with AI.