La clase KMeans incluye cuatro interesante atributos. Probémoslos con el modelo que se ha entrenado solo con dos características del dataset iris:
cluster_centers
Devuelve una lista con las coordenadas de los centroides:
model.cluster_centers_
Para mostrar estos centroides con seaborn, necesitamos separar las coordenadas x e y:
x, y = zip(*model.cluster_centers_)
x, y
sns.scatterplot("sepal_length", "sepal_width", data = iris, hue = "cluster", palette = "gist_stern");
sns.scatterplot(x, y);
En la imagen anterior se muestran los centroides en color naranja.
labels_
Este atributo devuelve un listado con las etiquetas asignadas a las muestras:
model.labels_
inertia_
El atributo inertia_ devuelve la suma de los cuadrados de las distancias de cada punto a su centroide, es decir, devuelve un valor que representa la cercanía de los puntos en cada cluster, siendo el valor óptimo cero:
model.inertia_
n_iter_
Número de iteraciones que han sido necesarias antes de converger en un resultado:
model.n_iter_