Cálculo de la puntuación de integridad usando sklearn en Python

Una agrupación completamente completa es aquella en la que cada agrupación tiene información que dirige un lugar hacia una agrupación de clase similar. La integridad representa la cercanía del algoritmo de agrupamiento a esta perfección (completeness_score). 

Esta métrica es autónoma de los valores absolutos de las etiquetas. Una permutación de los valores de la etiqueta del clúster no cambiará el valor de la puntuación de ninguna manera.

sklearn.metrics.completeness_score()

Sintaxis: sklearn.metrics.completeness_score(labels_true, labels_pred)

Parámetros:

  • labels_true: < int array, shape = [n_samples] > : Acepta las etiquetas de clase de verdad del suelo para ser utilizadas como referencia.
  • etiquetas_pred: < tipo array de forma (n_muestras,) > : acepta las etiquetas de clúster para evaluar.

Devoluciones: puntuación de integridad entre 0,0 y 1,0. 1.0 significa etiquetado perfectamente completo.

Cambiar label_true con label_pred devolverá el homogeneity_score.

Ejemplo 1:

Python3

# Importing the modules
import pandas as pd 
from sklearn import datasets
from sklearn.cluster import KMeans 
from sklearn.metrics import completeness_score
 
# Loading the data 
digits = datasets.load_digits()
 
# Separating the dependent and independent variables 
Y = digits.target
X = digits.data
 
# Building the clustering model 
kmeans = KMeans(n_clusters = 2) 
 
# Training the clustering model 
kmeans.fit(X) 
 
# Storing the predicted Clustering labels 
labels = kmeans.predict(X) 
 
# Evaluating the performance 
print(completeness_score(Y, labels))

Producción:

0.8471148027985769

Ejemplo 2: Perfectamente completo:

Python3

# Importing the module
from sklearn.metrics.cluster import completeness_score
 
# Evaluating the score
Cscore = completeness_score([0, 1, 0, 1],
                            [1, 0, 1, 0])
print(Cscore)

 
Producción: 

1.0 

Ejemplo 3: el etiquetado no perfecto que divide aún más las clases en más grupos puede ser perfectamente completo:

Python3

# Importing the module
from sklearn.metrics.cluster import completeness_score
 
# Evaluating the score
Cscore = completeness_score([0, 1, 2, 3],
                            [0, 0, 1, 1])
print(Cscore)

Producción:

0.9999999999999999

Ejemplo 4: Incluir muestras de diferentes clases no hace que el etiquetado sea completo:

Python3

# Importing the module
from sklearn.metrics.cluster import completeness_score
 
# Evaluating the score
Cscore = completeness_score([0, 0, 0, 0],
                            [0, 1, 2, 3])
print(Cscore)

Producción:

0.0

Publicación traducida automáticamente

Artículo escrito por adityakumar27200 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *