Это может быть желательным свойством, и оно варьируется от реализации к реализации.
Как это происходит : при случайной инициализации или при использовании итераций Ллойда онможет случиться так, что кластер потеряет все свои объекты.В MacQueen k-означает, что он всегда должен содержать хотя бы один объект.Предположим, что в 1d есть (среди прочего) объекты в 1 и 2, назначенные кластеру c1.Кластер с1 имеет среднее значение 1,5.Теперь, если есть два других кластера, среднее значение которых переместится на 0,6 и 2,4, эти два объекта будут переназначены, и кластер c1 внезапно станет пустым.
Почему это может быть желательно : при условии, что вы заранее не знаете лучшего значения для k
, вы можете просто решить выбрать слишком большое k и посмотреть, не выродятся ли некоторые из кластеров.
Скорее всего, это такоднако укажите, что ваш набор данных просто не работает с k-means.K-means на самом деле довольно придирчив, удивительно, как часто он все еще работает достаточно удовлетворительно.В целом, k-means не любит кластеры, которые различаются по размеру, но близки друг к другу.Потому что k-means всегда будет делиться посередине!Кроме того, в вашем конкретном случае, k
, вероятно, слишком сильно .
Вот одномерная иллюстрация ситуации, которая не нравится k-средних: (A и B - объектих кластеров; вторая строка указывает истинное среднее значение и среднее разделение между двумя средними значениями. Тогда k-means переназначит и разделит еще дальше влево.
AAAAAAAAAAAAA BBBBB
A | B