Compartir tecnología

Guía de aprendizaje de IA Aprendizaje automático: entrenamiento y predicción del modelo de agrupación en clústeres K-means

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Guía de aprendizaje de IA Aprendizaje automático: entrenamiento y predicción del modelo de agrupación en clústeres K-means

La inteligencia artificial (IA) es uno de los temas más candentes en el mundo hoy en día y está cambiando la forma en que vivimos y trabajamos. Como rama importante de la IA, el aprendizaje automático ha demostrado un gran potencial y valor en diversos campos. En el aprendizaje automático, la agrupación en clústeres es un algoritmo importante y la agrupación en clústeres de K-medias es uno de los métodos clásicos. En este blog, presentaremos en detalle el proceso de capacitación y el proceso de predicción del modelo de agrupamiento de K-medias y proporcionaremos ejemplos para ilustrar cómo utilizar el agrupamiento de K-medias para realizar análisis de conglomerados de datos.

Modelo de agrupamiento de K-medias

La agrupación de K-medias es un algoritmo de aprendizaje no supervisado que divide las muestras del conjunto de datos en K grupos para hacer que la distancia entre muestras en el mismo grupo sea lo más pequeña posible y la distancia entre diferentes grupos lo más grande posible. En la agrupación de K-medias, cada grupo está representado por un centroide y la agrupación se realiza de forma iterativa minimizando la distancia entre las muestras del grupo y el centroide.

El proceso de agrupación de K-medias se puede dividir aproximadamente en los siguientes pasos:

  1. Seleccione K puntos centrales iniciales
  2. Asigne cada muestra al conglomerado con el punto central más cercano
  3. Actualizar el centroide de cada grupo.
  4. Repita los pasos 2 y 3 hasta que la asignación de clústeres ya no cambie o se alcance el límite superior del número de iteraciones.

El proceso de predicción del modelo de agrupamiento de K-medias consiste en asignar nuevas muestras al grupo con el centroide más cercano.

Proceso de entrenamiento del modelo de agrupamiento de K-medias

En esta parte, presentaremos en detalle el proceso de entrenamiento del modelo de agrupamiento de K-medias. Para facilitar la explicación, utilizaremos la biblioteca scikit-learn de Python para la demostración.

Primero, necesitamos importar las bibliotecas relevantes:

import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import make_blobs
from sklearn.cluster import KMeans
  • 1
  • 2
  • 3
  • 4

A continuación, generamos algunos datos simulados para demostrar:

X, y = make_blobs(n_samples=300, centers=4, cluster_std=0.60, random_state=0)
  • 1

Luego podemos usar el modelo de agrupamiento de K-medias para entrenar con los datos:

kmeans = KMeans(n_clusters=4)
kmeans.fit(X)
  • 1
  • 2

Finalmente, podemos visualizar los resultados del entrenamiento, así como los centroides de los clusters:

plt.scatter(X[:, 0], X[:, 1], s=50, c="lightblue", marker="o", edgecolor="black")
plt.scatter(kmeans.cluster_centers_[:, 0], kmeans.cluster_centers_[:, 1], s=250, marker="*", c="red", edgecolor="black")
plt.show()
  • 1
  • 2
  • 3

A través de los pasos anteriores, completamos el proceso de capacitación del modelo de agrupamiento de K-medias y también obtuvimos una imagen visual de los resultados del entrenamiento.

Proceso de predicción del modelo de agrupamiento de K-medias

A continuación, introduzcamos el proceso de predicción del modelo de agrupamiento de K-medias. En el modelo de agrupamiento de K-medias, el proceso de predicción consiste en asignar nuevas muestras al grupo con el centroide más cercano.

Primero, podemos utilizar el modelo de agrupamiento de K-medias entrenado para predecir nuevas muestras:

new_samples = np.array([[0, 0], [4, 4]])
predicted_labels = kmeans.predict(new_samples)
print(predicted_labels)
  • 1
  • 2
  • 3

En el código anterior, creamos dos nuevas muestras.[0, 0]y[4, 4], y usepredict método para predecirlo. Finalmente, obtenemos las etiquetas de grupo predichas para nuevas muestras.

Ejemplo

Para comprender de manera más intuitiva el proceso de entrenamiento y predicción del modelo de agrupamiento de K-medias, lo ilustraremos con un ejemplo específico.

Supongamos que tenemos un conjunto de datos con tres características.X , queremos dividirlo en 3 grupos. Primero, podemos entrenar los datos usando un modelo de agrupamiento de K-medias:

kmeans = KMeans(n_clusters=3)
kmeans.fit(X)
  • 1
  • 2

A continuación, aplicamos el modelo entrenado a nuevas muestras:

new_samples = np.array([[1, 1, 1], [2, 2, 2]])
predicted_labels = kmeans.predict(new_samples)
print(predicted_labels)
  • 1
  • 2
  • 3

A través de los ejemplos anteriores, podemos ver claramente el proceso de entrenamiento y predicción del modelo de agrupación de K-medias.

Resumir

A través de la introducción de este blog, tenemos una comprensión detallada del proceso de capacitación y el proceso de predicción del modelo de agrupación en clústeres de K-medias y demostramos a través de ejemplos cómo usar la biblioteca scikit-learn de Python para realizar la agrupación en clústeres de K-medias. La agrupación en clústeres K-means es un algoritmo de agrupación simple y eficiente que se puede aplicar a varios campos, incluido el análisis de datos, el procesamiento de imágenes, etc. ¡Espero que este blog te ayude a aprender sobre aprendizaje automático e inteligencia artificial!