Прочерчивание равноудаленной линии между нашими центроидами A и B еще раз поможет нам визуализировать процесс (рис. 6.25).
Как видно на диаграмме, три обведенные точки данных находятся на неправильной территории. Поэтому алгоритм заново присвоит эти точки ближайшим центроидам так, чтобы мы получили следующий результат.
Из рис. 6.26 видно, что центроиды вновь сместились – они не находятся в центре массы каждого кластера. Поэтому алгоритм повторит шаг 4, поместив центроиды в правильные места (рис. 6.27).
Сразу после перемещения центроидов будет повторен шаг 5 и точки данных снова станут относиться к правильным центроидам. Алгоритм будет повторять шаги 4 и 5 до тех пор, пока не сойдется. Это произойдет тогда, когда на шаге 5 ни одной точке нельзя будет присвоить новый центроид и, следовательно, не будет смысла повторять шаги, поскольку ничего не изменится.
На рис. 6.28 показан наш конечный результат.
Как видно, центроиды проделали долгий путь от своих исходных точек. В итоге мы также получили две группы точек данных, которые, возможно, не были очевидны в начале нашего исследования (сравните с рис. 6.21).
Метод локтя и метрика ВКСК
Теперь, когда мы знаем, как работает алгоритм кластеризации k-средних, остается вопрос: как найти оптимальное количество кластеров (k) для использования? Этого можно добиться с помощью метода локтя.
Метод локтя помогает определить оптимальное количество кластеров. В качестве гипотетического примера рассмотрим другой массив данных, к которому мы применили k-средние, с k = 3 (рис. 6.29).

Хотя диаграмма выглядит весьма элегантно, она совсем не обязательно покажет нам оптимальные для решения этой проблемы группы. Разница между клиентами в кластерах 2 и 3, например, может быть недостаточно существенной для того, чтобы гарантировать их разделение на две группы. И наоборот, может оказаться более желательным разделить данные в кластере 1 на две или более группы.
Чтобы получить оптимальное число, мы должны оценить, как действует различное число кластеров, с помощью внутрикластерной суммы квадратов (ВКСК). Для трех кластеров, как указано выше, мы будем использовать следующую формулу ВКСК:
Выглядит сложно? Не волнуйтесь, это на самом деле очень простое уравнение.
Три элемента
просто рассчитываются для каждого кластера, и потом эти значения складываются для расчета ВКСК. Во втором элементе приведенного выше уравнения, например, мы рассматриваем только кластер 2. Сначала мы находим расстояние между каждой точкой и центром кластера (отмеченным его центроидом), а затем квадраты этих расстояний и наконец суммируем полученные значения.