Я получил странный вывод kMeans, реализованный в matlab.Все мои записи в моей входной матрице F измерения dxn находятся между 0 и 1. Когда я запускаю алгоритм kmeans, используя следующую команду matlab, которая создает 50 кластеров.
[IDX, B] = kmeans(F,50,'MaxIter',1000,'EmptyAction','singleton')
Здесь IDXвозвращаемая метка, а B - центр кластераПоскольку все ваши точки данных находятся в [0,1] ^ d, вы ожидаете, что вычисленный центроид также находится в [0,1] ^ d, где d - это размерность точки.
Однако результирующийCentroid, который я получил от kmeans после нескольких различных инициализаций, содержит отрицательное значение.
Может кто-нибудь сообщить мне причину этого?