Бахман Бахмани и соавт. представил k-means ||, который является более быстрой версией k-means ++.
Этот алгоритм взят из страницы 4 их работы , Бахмани Б., Мозли Б., Ваттани А., Кумар Р. и Васильвицкий С. (2012). Масштабируемое k-означает ++. Труды фонда VLDB , 5 (7), 622-633.
К сожалению, я не понимаю эти причудливые греческие буквы, поэтому мне нужна помощь, чтобы понять, как это работает. Насколько я понимаю, этот алгоритм является улучшенной версией k-means ++, и он использует передискретизацию для сокращения числа итераций: k-means ++ должен выполнить итерацию раз, где k - количество требуемых кластеров.
Я получил очень хорошее объяснение на конкретном примере того, как работает k-means ++, поэтому я снова буду использовать тот же пример.
пример
У меня есть следующий набор данных:
(7,1), (3,4), (1,5), (5,8), (1,3), (7,8), (8,2), (5,9), (8 , 0)
(количество желаемых кластеров)
(коэффициент передискретизации)
Я начал вычислять это, но я не уверен, правильно ли я понял, и понятия не имею о шагах 2, 4 или 5.
Шаг 1: выборка точки случайным образом из X
Скажем, первый центроид (такой же, как в k-means ++)
Шаг 2:
без понятия
Шаг 3:
Мы рассчитываем квадрат расстояния до ближайшего центра к каждой точке. В этом случае у нас пока только один центр .
(Потому что в этом случае )
Выберите случайных числа в интервале [ 0 , 813 ) . Допустим, вы выбрали и 659,42 . Они попадают в диапазоны [ 379 , 495 ) и [ 633 , 813 ), которые соответствуют 4-му и 8-му пунктам соответственно.
Повторите это раз, но что такое ψ (рассчитывается на шаге 2) в этом случае?
- Шаг 4: Для , множество ш й будет число точек в X ближе к й , чем любой другой точке C .
- Шаг 5: Перегруппируйте взвешенные точки в в k кластеров.
Любая помощь в целом или в этом конкретном примере будет отличной.
источник