Что такое Кластеризация

«Что такое Кластеризация» — вопрос из категории Машинное обучение, который задают на 33% собеседований Аналитик Данных. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Кластеризация — это метод машинного обучения без учителя, который группирует схожие объекты в кластеры на основе их характеристик. Основная цель — выявить естественные структуры в данных, даже если заранее неизвестно, сколько групп существует.

Пример с кодом (K-Means в Python):

from sklearn.cluster import KMeans
import numpy as np

# Пример данных: координаты точек
data = np.array([[1, 2], [5, 8], [1.5, 1.8], [8, 8], [1, 0.6], [9, 11]])

# Кластеризация (2 кластера)
kmeans = KMeans(n_clusters=2).fit(data)
print(kmeans.labels_)  # Метки кластеров: [0, 1, 0, 1, 0, 1]

Нюансы:

  • Выбор метрики расстояния (Евклидово, Манхэттен и др.).
  • Определение оптимального числа кластеров (метод локтя, силуэт).
  • Чувствительность к выбросам (например, DBSCAN устойчивее K-Means).
  • Интерпретируемость: не всегда кластеры имеют явный смысл.