- Вершина графа - объект
- Ребро графа - расстояние между точками
- Зафиксируем радиус
$\text{R}$ - Удалим рёбра
$(u, v) : \rho(u, v) > R$ - Кластеры соответствуют связанным компонентам.
- Получить нужное число кластеров можно с помощью бинарного поиска по
$R.$
- Зафиксируем число кластеров
$К$ . - Найдём минимальное остовное дерево.
- Удалим
$К - 1$ ребро с наибольшими длинами.
-
Получение иерархии кластеров
Если запоминать историю разделения компонент связности, то можно получить иерархию кластеров.
Дендограмма - дерево иерархии кластеров
Есть два подхода:
- Разделяющий ("дробление" кластеров)
- Агломеративный (объединение кластеров)
Как я его понял:
- Находим две вершины, которые находятся ближе всего друг к другу
- Объединяем их в один кластер
- Дальше проджолжаем обединять наши вершины и кластеры в новые кластеры
Получаем вот такую картину:
Что нам делать дальше? Надо обрезать на уровне самой маленькой вертикальной палочки (отметил стелочкой)
У нас получается 3 кластера:
- 3, 6, 5, 2
- 4
- 1
P.s. ну или можете подрезать на таком уровне, на каком вам нужно (для получения определенного количества кластеров)
Кластеризация называется монотонной, если межкластерное расстояние не уменьшается после объединения.
Если совсеми просто, то на денодограмме у нас не будет будет ситуаций, когда ребро (вертикальная палка) растет вниз.
Кластеризация является монотонной, если:
$\alpha_{U}, \alpha_{V} >= 0$ $\alpha_{U} + \alpha_{V} + \beta >= 1$ $min(\alpha_{U}, \alpha_{V})+ \gamma >= 0$