использовать replicate?
у меня есть функция, которая принимает
-> точки на плоскости
-> центры кластеров
выдает
-> индекс принадлежности к кластеру
(kmeans почти в чистом виде)
считает она расстояния от каждой точки до каждого кластера (здесь replicate, map zipWith, map map norm2)
и дальше находить минимум для каждой точки (map minimum)
после вытаскиваю индекс этого минимума для каждой точки
время работы алгоритма ужасное и я вот думаю, как можно уйти от replicate? мне кажется, что проблема по большей части в нем
похоже, что проблема в самом подходе O(n²), и надо менять весь алгоритм
вам надо получить все расстояния от каждого до каждого? тогда от O(n²) не уйти
вот да, я думал думал и понимаю, что как-то принципиально от этого не избавиться спасибо за подтверждение моих догадок но тут все таки есть способы, я сейчас начал кое что дописывать потом покажу результаты
надо только ближайший к точке центр кластера найти? так можно же kd-дерево использовать
Обсуждают сегодня