minhas informações de contato
Correspondência[email protected]
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
A inteligência artificial (IA) é um dos temas mais quentes do mundo atualmente e está mudando a forma como vivemos e trabalhamos. Como um ramo importante da IA, o aprendizado de máquina mostrou grande potencial e valor em vários campos. No aprendizado de máquina, o clustering é um algoritmo importante, e o clustering K-means é um dos métodos clássicos. Neste blog, apresentaremos em detalhes o processo de treinamento e o processo de previsão do modelo de clustering K-means e forneceremos exemplos para ilustrar como usar o clustering K-means para realizar análises de cluster em dados.
O agrupamento K-means é um algoritmo de aprendizagem não supervisionado que divide as amostras no conjunto de dados em K clusters para tornar a distância entre as amostras no mesmo cluster a menor possível e a distância entre os diferentes clusters a maior possível. No agrupamento K-means, cada cluster é representado por um centróide, e o agrupamento é realizado iterativamente, minimizando a distância entre as amostras no cluster e o centróide.
O processo de agrupamento K-means pode ser dividido aproximadamente nas seguintes etapas:
O processo de predição do modelo de agrupamento K-means consiste em atribuir novas amostras ao cluster com o centróide mais próximo.
Nesta parte, apresentaremos detalhadamente o processo de treinamento do modelo de agrupamento K-means. Para facilitar a explicação, usaremos a biblioteca scikit-learn do Python para demonstração.
Primeiro, precisamos importar as bibliotecas relevantes:
import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import make_blobs
from sklearn.cluster import KMeans
A seguir, geramos alguns dados simulados para demonstrar:
X, y = make_blobs(n_samples=300, centers=4, cluster_std=0.60, random_state=0)
Podemos então usar o modelo de clustering K-means para treinar nos dados:
kmeans = KMeans(n_clusters=4)
kmeans.fit(X)
Por fim, podemos visualizar os resultados do treinamento, bem como os centróides dos 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()
Através das etapas acima, concluímos o processo de treinamento do modelo de agrupamento K-means e também obtivemos uma imagem visual dos resultados do treinamento.
A seguir, vamos apresentar o processo de predição do modelo de agrupamento K-means. No modelo de agrupamento K-means, o processo de predição consiste em atribuir novas amostras ao agrupamento com o centróide mais próximo.
Primeiro, podemos usar o modelo de clustering K-means treinado para prever novas amostras:
new_samples = np.array([[0, 0], [4, 4]])
predicted_labels = kmeans.predict(new_samples)
print(predicted_labels)
No código acima, criamos duas novas amostras[0, 0]
e[4, 4]
, E usepredict
método para prevê-lo. Finalmente, obtemos os rótulos de cluster previstos para novas amostras.
Para compreender o processo de treinamento e predição do modelo de agrupamento K-means de forma mais intuitiva, iremos ilustrá-lo com um exemplo específico.
Suponha que temos um conjunto de dados com três recursosX
, queremos dividi-lo em 3 clusters. Primeiro, podemos treinar os dados usando um modelo de agrupamento K-means:
kmeans = KMeans(n_clusters=3)
kmeans.fit(X)
A seguir, aplicamos o modelo treinado a novas amostras:
new_samples = np.array([[1, 1, 1], [2, 2, 2]])
predicted_labels = kmeans.predict(new_samples)
print(predicted_labels)
Através dos exemplos acima, podemos ver claramente o processo de treinamento e predição do modelo de agrupamento K-means.
Através da introdução deste blog, temos uma compreensão detalhada do processo de treinamento e do processo de previsão do modelo de clustering K-means e demonstramos por meio de exemplos como usar a biblioteca scikit-learn do Python para realizar o clustering K-means. O agrupamento K-means é um algoritmo de agrupamento simples e eficiente que pode ser aplicado a vários campos, incluindo análise de dados, processamento de imagens, etc. Espero que este blog ajude você a aprender aprendizado de máquina e inteligência artificial!