Читать книгу Искусственный интеллект. Машинное обучение онлайн
```python
from sklearn.cluster import KMeans
# Инициализация модели k-средних
kmeans = KMeans(n_clusters=3, random_state=42)
# Обучение модели на данных
kmeans.fit(iris.data)
# Получение меток кластеров для каждого объекта
labels = kmeans.labels_
```
Здесь мы инициализируем модель k-средних с 3 кластерами и обучаем её на данных Iris. Затем мы получаем метки кластеров для каждого объекта.
Наконец, мы можем визуализировать результаты кластеризации, чтобы лучше понять структуру данных.
```python
import matplotlib.pyplot as plt
# Визуализация кластеров
plt.scatter(iris.data[:, 0], iris.data[:, 1], c=labels, cmap='viridis')
plt.xlabel('Sepal length')
plt.ylabel('Sepal width')
plt.title('Clusters')
plt.show()
```
Этот код создает график, на котором каждый объект данных представлен точкой, а цвет точек указывает на принадлежность к кластеру. Таким образом, мы можем визуально оценить результаты кластеризации.
Таким образом, мы можем выполнить кластеризацию набора данных Iris с помощью метода k-средних и визуализировать результаты, чтобы лучше понять структуру данных.
Пример 2
Давайте рассмотрим другую задачу кластеризации с использованием набора данных "Mall Customer Segmentation", который содержит информацию о клиентах торгового центра. Наша цель будет состоять в кластеризации клиентов на основе их характеристик для выделения различных сегментов клиентов.
Описание задачи:
Набор данных "Mall Customer Segmentation" содержит информацию о клиентах торгового центра, такую как пол, возраст, доход и оценка расходов. Наша задача – разбить клиентов на кластеры на основе этих характеристик.
Описание хода решения:
1. Загрузка данных: Мы загрузим набор данных и посмотрим на его структуру и характеристики.
2. Предварительная обработка данных: Если необходимо, мы выполним предварительную обработку данных, такую как масштабирование функций или заполнение пропущенных значений.
3. Кластеризация: Мы применим выбранный метод кластеризации (например, k-средних или иерархическую кластеризацию) к данным о клиентах.