sklearn.metrics.cluster.pair_confusion_matrix

sklearn.metrics.cluster.pair_confusion_matrix()

Empareja la matriz de confusión que surge de dos agrupaciones.

La matriz de confusión de pares \(C\) calcula una matriz de similitud 2 por 2 entre dos agrupaciones considerando todos los pares de muestras y contando los pares que se asignan en los mismos o diferentes conglomerados en las agrupaciones predichas y verdaderas.

Considerando un par de muestras que están conglomeradas como un par positivo, entonces como en la clasificación binaria el conteo de verdaderos negativos es \(C_{00}\), falsos negativos \(C_{10}\), verdaderos positivos \(C_{11}\) y falsos positivos \(C_{01}\).

Lee más en el Manual de usuario.

Parámetros
labels_truearray-like de forma (n_samples,), dtype=integral

Las etiquetas clase de verdad fundamental a ser usadas como referencia.

labels_predarray-like de forma (n_samples,), dtype=integral

Etiquetas de clúster a evaluar.

Devuelve
Cndarray de forma (2, 2), dtype=np.int64

La matriz de contingencia.

Ver también

rand_score

Puntuación de Rand

adjusted_rand_score

Puntuación de Rand ajustada

adjusted_mutual_info_score

Información Mutua Ajustada (AMI en inglés)

Referencias

Ejemplos

Las etiquetas que corresponden perfectamente tienen todas las entradas no nulas o iguales a cero en la diagonal, independientemente de los valores reales de las etiquetas:

>>> from sklearn.metrics.cluster import pair_confusion_matrix
>>> pair_confusion_matrix([0, 0, 1, 1], [1, 1, 0, 0])
array([[8, 0],
       [0, 4]]...

Las etiquetas que asignan a todos los miembros de las clases a los mismos conglomerados son completos, pero pueden no ser siempre puros, por lo que están penalizados, y tienen algunas entradas no nulas fuera de la diagonal:

>>> pair_confusion_matrix([0, 0, 1, 2], [0, 0, 1, 1])
array([[8, 2],
       [0, 2]]...

Note que la matriz no es simétrica.