моя контактная информация
Почтамезофия@protonmail.com
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Искусственный интеллект (ИИ) сегодня является одной из самых горячих тем в мире, и он меняет то, как мы живем и работаем. Машинное обучение как важная отрасль искусственного интеллекта продемонстрировало большой потенциал и ценность в различных областях. В машинном обучении кластеризация является важным алгоритмом, а кластеризация K-средними — одним из классических методов. В этом блоге мы подробно представим процесс обучения и процесс прогнозирования модели кластеризации K-средних и предоставим примеры, иллюстрирующие, как использовать кластеризацию K-средних для выполнения кластерного анализа данных.
Кластеризация K-средних — это алгоритм обучения без учителя, который делит выборки в наборе данных на K кластеры, чтобы сделать расстояние между выборками в одном кластере как можно меньшим, а расстояние между различными кластерами — как можно большим. При кластеризации K-средних каждый кластер представлен центроидом, а кластеризация выполняется итеративно путем минимизации расстояния между выборками в кластере и центроидом.
Процесс кластеризации K-средних можно условно разделить на следующие этапы:
Процесс прогнозирования модели кластеризации K-средних заключается в назначении новых выборок кластеру с ближайшим центроидом.
В этой части мы подробно представим процесс обучения модели кластеризации K-средних. Для простоты объяснения мы будем использовать для демонстрации библиотеку Python scikit-learn.
Во-первых, нам нужно импортировать соответствующие библиотеки:
import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import make_blobs
from sklearn.cluster import KMeans
Далее мы генерируем некоторые смоделированные данные, чтобы продемонстрировать:
X, y = make_blobs(n_samples=300, centers=4, cluster_std=0.60, random_state=0)
Затем мы можем использовать модель кластеризации K-средних для обучения данным:
kmeans = KMeans(n_clusters=4)
kmeans.fit(X)
Наконец, мы можем визуализировать результаты обучения, а также центроиды кластеров:
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()
Выполнив описанные выше шаги, мы завершили процесс обучения модели кластеризации K-средних, а также получили визуальное изображение результатов обучения.
Далее давайте представим процесс прогнозирования модели кластеризации K-средних. В модели кластеризации K-средних процесс прогнозирования заключается в назначении новых выборок кластеру с ближайшим центроидом.
Во-первых, мы можем использовать обученную модель кластеризации K-средних для прогнозирования новых выборок:
new_samples = np.array([[0, 0], [4, 4]])
predicted_labels = kmeans.predict(new_samples)
print(predicted_labels)
В приведенном выше коде мы создаем два новых образца.[0, 0]
и[4, 4]
и использоватьpredict
метод его прогнозирования. Наконец, мы получаем предсказанные метки кластеров для новых образцов.
Чтобы более интуитивно понять процесс обучения и прогнозирования модели кластеризации K-средних, мы проиллюстрируем его конкретным примером.
Предположим, у нас есть набор данных с тремя функциями.X
, мы хотим разделить его на 3 кластера. Во-первых, мы можем обучить данные, используя модель кластеризации K-средних:
kmeans = KMeans(n_clusters=3)
kmeans.fit(X)
Далее мы применяем обученную модель к новым образцам:
new_samples = np.array([[1, 1, 1], [2, 2, 2]])
predicted_labels = kmeans.predict(new_samples)
print(predicted_labels)
Благодаря приведенным выше примерам мы можем ясно увидеть процесс обучения и прогнозирования модели кластеризации K-средних.
Благодаря введению этого блога мы получили подробное представление о процессе обучения и процессе прогнозирования модели кластеризации K-средних и продемонстрировали на примерах, как использовать библиотеку Python scikit-learn для выполнения кластеризации K-средних. Кластеризация K-средних — это простой и эффективный алгоритм кластеризации, который можно применять в различных областях, включая анализ данных, обработку изображений и т. д. Надеюсь, этот блог поможет вам изучить машинное обучение и искусственный интеллект!