Size: a a a

спбгеотех

2020 April 03

IL

Ilya Levashev in спбгеотех
Помогите решить задачу кластеризации. Есть набор точек рандомно разбросанных по городу. Нужно их кластеризовать таким образом, чтобы ограничить величину кластера площадью или расстоянием до центра кластера.
DBSCAN и knn такого не дают
источник

RK

Ruben KroshkaRu in спбгеотех
Эээ в том же питоне целая толпа библиотек и в них методов кластеризации для векторов. На сколько я помню основное различие: известно заранее количество кластеров или нет. Вам конкретные методы?
источник

RK

Ruben KroshkaRu in спбгеотех
2.3. Clustering — scikit-learn 0.22.2 documentation
http://scikit-learn.org/stable/modules/clustering.html
источник

IL

Ilya Levashev in спбгеотех
Да, там или максимальное количество элементов кластера или максимальное расстояние между точками
источник

RK

Ruben KroshkaRu in спбгеотех
Ещё есть максимальное расстояние от центра масс.
источник

RK

Ruben KroshkaRu in спбгеотех
Вам, похоже, именно оно и нужно
источник

IL

Ilya Levashev in спбгеотех
да, звучит как оно
источник

IL

Ilya Levashev in спбгеотех
ВРоде что-то похожее даёт Agglomerative clustering
источник

RK

Ruben KroshkaRu in спбгеотех
источник

RK

Ruben KroshkaRu in спбгеотех
Вот эта штука должна подойти.
источник

IL

Ilya Levashev in спбгеотех
Хм...видел, я не знаю необходимое количество кластеров)
источник

IL

Ilya Levashev in спбгеотех
это собственно и вопрос)
источник

RK

Ruben KroshkaRu in спбгеотех
А размер?
источник

RK

Ruben KroshkaRu in спбгеотех
Что-то опорное нужно. Критерий слияния-останова
источник

RK

Ruben KroshkaRu in спбгеотех
Например можно сказать, что если расстояние между кластерами больше определенной величины, то остановиться.
источник

IL

Ilya Levashev in спбгеотех
размер кластера. максимальное расстояние до центра кластера - 500м
источник

RK

Ruben KroshkaRu in спбгеотех
Берешь к-средних и перебираешь количество кластеров от 0 до ... Пока точки не вошедшие в кластера не кончатся.
источник

AK

Anna Kalyuzhnaya in спбгеотех
Проблема выбора количества кластеров для k-means действительно обычно решается постепенным наращиванием количества кластеров. Дальше будет нужно выбрать наилучший вариант разбиения. В Вашем случае можно сначала выбрать все варианты, удовлетворяющие условию (r<500m), а потом применить один из подходов к выбору наиболее подходящего варианта. Тут есть хорошее изложение методов выбора количества кластеров с кодом: https://towardsdatascience.com/10-tips-for-choosing-the-optimal-number-of-clusters-277e93d72d92
источник

AK

Anna Kalyuzhnaya in спбгеотех
Также учтите, что k-means чувствителен к выбору начального приближения.
источник

RK

Ruben KroshkaRu in спбгеотех
А ещё очень он против хитрозагнутых фигур.
источник