Определение количества кластеров в наборе данных
Определение количества кластеров в наборе данных (количество, часто обозначаемое k, как в алгоритме k -средних) , является частой проблемой при кластеризации данных и отличается от процесса фактического решения проблемы кластеризации.
Для определенного класса алгоритмов кластеризации (в частности, k -means, k -medoids и алгоритма максимизации ожидания ) существует параметр, обычно называемый k , который определяет количество обнаруживаемых кластеров. Другие алгоритмы, такие как DBSCAN и алгоритм OPTICS, не требуют указания этого параметра; иерархическая кластеризация вообще позволяет избежать этой проблемы.
Правильный выбор k часто неоднозначен, его интерпретации зависят от формы и масштаба распределения точек в наборе данных и желаемого разрешения кластеризации пользователя. Кроме того, увеличение k без штрафа всегда уменьшит количество ошибок в результирующей кластеризации до крайнего случая нулевой ошибки, если каждая точка данных считается отдельным кластером (т. е. когда k равно количеству точек данных, n ). Тогда интуитивно понятно, что оптимальный выбор k обеспечит баланс между максимальным сжатием данных с использованием одного кластера и максимальной точностью за счет назначения каждой точки данных отдельному кластеру . Если подходящее значение k не очевидно из предварительного знания свойств набора данных, его необходимо каким-то образом выбрать. Существует несколько категорий методов принятия такого решения.
Метод локтя
[ редактировать ]Метод локтя рассматривает процент объясненной дисперсии как функцию количества кластеров: Следует выбрать такое количество кластеров, чтобы добавление еще одного кластера не давало лучшего моделирования данных. Точнее, если построить график процентной дисперсии, объясняемой кластерами, в зависимости от количества кластеров, первые кластеры добавят много информации (объяснят большую дисперсию), но в какой-то момент предельный выигрыш упадет, создавая угол в график. На этом этапе выбирается количество кластеров, отсюда и «критерий колена». В большинстве наборов данных это «локоть» неоднозначно. [1] что делает этот метод субъективным и ненадежным. Поскольку масштаб осей произволен, понятие угла нечетко определено, и даже на однородных случайных данных кривая образует «колено», что делает метод довольно ненадежным. [2] Процент объясненной дисперсии представляет собой отношение дисперсии между группами к общей дисперсии, также известное как F-тест . Небольшая вариация этого метода отображает кривизну внутригрупповой дисперсии. [3]
Этот метод можно отнести к предположениям Роберта Л. Торндайка в 1953 году. [4] Хотя идея метода локтя кажется простой и понятной, другие методы (как подробно описано ниже) дают лучшие результаты.
X-средняя кластеризация
[ редактировать ]В статистике и интеллектуальном анализе данных кластеризация X-средних — это разновидность кластеризации k-средних , которая уточняет назначения кластеров путем повторных попыток подразделения и сохранения наилучших результатов разделения до тех пор, пока не будет найден такой критерий, как информационный критерий Акаике (AIC) или байесовский информационный критерий. (BIC) достигнут. [5]
Информационно-критериальный подход
[ редактировать ]Другим набором методов определения количества кластеров являются информационные критерии, такие как информационный критерий Акаике (AIC), байесовский информационный критерий (BIC) или информационный критерий отклонения (DIC) — если можно составить функцию правдоподобия для модель кластеризации. Например: Модель k -средних является «почти» моделью гауссовой смеси , и можно построить вероятность для модели гауссовой смеси и, таким образом, также определить значения информационных критериев. [6]
Информационно-теоретический подход
[ редактировать ]Теория искажения скорости была применена к выбору k , называемому методом «скачка», который определяет количество кластеров, которое максимизирует эффективность при минимизации ошибки по стандартам теории информации . [7] Стратегия алгоритма состоит в том, чтобы сгенерировать кривую искажения для входных данных путем запуска стандартного алгоритма кластеризации, такого как k-средние для всех значений k от 1 до n , и вычисления искажения (описанного ниже) полученной кластеризации. Затем кривая искажения преобразуется в отрицательную степень, выбранную на основе размерности данных. Скачки в результирующих значениях тогда означают разумный выбор для k , при этом наибольший скачок представляет собой лучший выбор.
Искажение кластеризации некоторых входных данных формально определяется следующим образом: Пусть набор данных моделируется как -мерная случайная величина X , состоящая из смешанного распределения компонентов G с общей ковариацией Γ p . Если мы позволим представляет собой набор K кластерных центров, причем ближайшего к данной выборке центра X , то минимальное среднее искажение на одно измерение при подгонке K- центров к данным составляет:
Это также среднее расстояние Махаланобиса по измерению между X и ближайшим центром кластера. . Поскольку минимизация всех возможных наборов центров кластеров непомерно сложна, на практике искажение вычисляется путем создания набора центров кластеров с использованием стандартного алгоритма кластеризации и вычисления искажения на основе результата. Псевдокод для метода перехода с входным набором p -мерных точек данных X :
JumpMethod(X): Let Y = (p/2) Init a list D, of size n+1 Let D[0] = 0 For k = 1 ... n: Cluster X with k clusters (e.g., with k-means) Let d = Distortion of the resulting clustering D[k] = d^(-Y) Define J(i) = D[i] - D[i-1] Return the k between 1 and n that maximizes J(k)
Выбор мощности преобразования мотивируется асимптотическим рассуждением с использованием результатов теории искажения скорости. Пусть данные X имеют единственное, произвольно p -мерное гауссово распределение , и пусть фиксированное , для некоторого α, большего нуля. Тогда искажение кластеризации K кластеров в пределе стремления p к бесконечности равно . Видно, что асимптотически искажение кластеризации в степени пропорционально , что по определению приблизительно равно числу кластеров K . Другими словами, для одного распределения Гаусса увеличение K сверх истинного числа кластеров, которое должно быть одним, вызывает линейный рост искажений. Такое поведение важно в общем случае смеси нескольких компонентов распределения.
Пусть X — смесь G p -мерных гауссовских распределений с общей ковариацией. Тогда для любого фиксированного K меньше G искажение кластеризации при стремлении p к бесконечности бесконечно. Интуитивно это означает, что кластеризация с меньшим количеством кластеров, чем правильное, не может описать асимптотически многомерные данные, что приводит к неограниченному увеличению искажений. Если, как описано выше, K сделать возрастающей функцией p , а именно: , достигается тот же результат, что и выше, при этом величина искажения в пределе при стремлении p к бесконечности равна . существует такая же пропорциональная зависимость между преобразованным искажением и количеством кластеров K. Соответственно ,
Объединив приведенные выше результаты, можно увидеть, что для достаточно высоких значений p преобразованное искажение приблизительно равна нулю для K < G , затем внезапно скачет и начинает линейно возрастать при K ≥ G . Алгоритм перехода для выбора K использует это поведение для определения наиболее вероятного значения истинного количества кластеров.
Хотя математическая поддержка метода дается в виде асимптотических результатов, эмпирически проверено, что алгоритм хорошо работает в различных наборах данных с разумной размерностью. Помимо описанного выше метода локализованного скачка, существует второй алгоритм выбора K с использованием тех же преобразованных значений искажений, известный как метод ломаной линии. Метод ломаной линии идентифицирует точку скачка на графике преобразованного искажения, выполняя простую аппроксимацию линии ошибки наименьших квадратов двух отрезков линии, которые теоретически будут падать вдоль оси x для K < G и вдоль линейно возрастающей фазы. преобразованного графика искажений для K ≥ G . Метод ломаной линии более надежен, чем метод скачка, поскольку его решение является глобальным, а не локальным, но он также опирается на предположение о гауссовых компонентах смеси, тогда как метод скачка полностью непараметричен и, как было показано, жизнеспособен для общее распределение смеси.
Метод силуэта
[ редактировать ]Средний силуэт данных — еще один полезный критерий для оценки натурального числа кластеров. Силуэт экземпляра данных является мерой того, насколько близко он сопоставляется с данными внутри своего кластера и насколько слабо он сопоставляется с данными соседнего кластера, т. е. кластера, среднее расстояние которого от исходной точки наименьшее. [8] Силуэт, близкий к 1, означает, что данные находятся в соответствующем кластере, а силуэт, близкий к -1, означает, что данные находятся в неправильном кластере. Методы оптимизации, такие как генетические алгоритмы, полезны для определения количества кластеров, из которых образуется наибольший силуэт. [9] Также возможно масштабировать данные таким образом, чтобы силуэт с большей вероятностью был максимизирован при правильном количестве кластеров. [10]
Перекрестная проверка
[ редактировать ]Можно также использовать процесс перекрестной проверки для анализа количества кластеров. В этом процессе данные разделяются на v частей. Затем каждая из частей по очереди откладывается в качестве тестового набора, модели кластеризации, рассчитанной на других обучающих наборах v - 1, и значения целевой функции (например, суммы квадратов расстояний до центроидов для k -среднее), рассчитанное для тестового набора. Эти значения v рассчитываются и усредняются для каждого альтернативного количества кластеров, а число кластеров выбирается таким образом, чтобы дальнейшее увеличение числа кластеров приводило лишь к небольшому уменьшению целевой функции. [ нужна ссылка ]
Поиск количества кластеров в текстовых базах данных
[ редактировать ]При кластеризации текстовых баз данных с коэффициентом покрытия коллекции документов, определенной матрицей документа по терминам D (размером m×n, где m — количество документов, а n — количество терминов), количество кластеров может примерно составлять оценивается по формуле где t — количество ненулевых записей в D. Обратите внимание, что в D каждая строка и каждый столбец должны содержать хотя бы один ненулевой элемент. [11]
Анализ матрицы ядра
[ редактировать ]Матрица ядра определяет близость входной информации. Например, в гауссовской радиальной базисной функции она определяет скалярное произведение входных данных в многомерном пространстве, называемом пространством признаков . Считается, что данные становятся более линейно разделимыми в пространстве признаков, и, следовательно, линейные алгоритмы могут применяться к данным с более высоким успехом.
Таким образом, матрицу ядра можно проанализировать, чтобы найти оптимальное количество кластеров. [12] Метод основан на разложении матрицы ядра по собственным значениям. Затем он проанализирует собственные значения и собственные векторы, чтобы получить меру компактности входного распределения. Наконец, будет построен график, колено которого указывает оптимальное количество кластеров в наборе данных. В отличие от предыдущих методов, этот метод не требует априорной кластеризации. Он напрямую находит количество кластеров по данным.
Статистика разрыва
[ редактировать ]Роберт Тибширани , Гюнтер Вальтер и Тревор Хасти предложили оценивать количество кластеров в наборе данных с помощью статистики разрывов. [13] Статистика разрывов, основанная на теоретических основаниях, измеряет, насколько далека объединенная внутрикластерная сумма квадратов вокруг центров кластера от суммы квадратов, ожидаемой при нулевом эталонном распределении данных. Ожидаемое значение оценивается путем моделирования нулевых справочных данных характеристик исходных данных, но без каких-либо кластеров. Оптимальное количество кластеров затем оценивается как значение k, для которого наблюдаемая сумма квадратов падает в наибольшей степени ниже нулевого эталона.
В отличие от многих предыдущих методов, статистика разрывов может сказать нам, что не существует значения k , для которого была бы хорошая кластеризация, но надежность зависит от того, насколько правдоподобно предполагаемое нулевое распределение (например, равномерное распределение) для данных данных. Это, как правило, хорошо работает в синтетических условиях, но не может хорошо обрабатывать сложные наборы данных, например, с неинформативными атрибутами, поскольку предполагается, что все атрибуты одинаково важны. [14]
Статистика пробелов реализована как функция clusGap в кластера . пакете [15] в Р.
Ссылки
[ редактировать ]- ^ См., например, Дэвид Дж. Кетчен-младший; Кристофер Л. Шук (1996). «Применение кластерного анализа в исследованиях стратегического управления: анализ и критика» . Журнал стратегического менеджмента . 17 (6): 441–458. doi : 10.1002/(SICI)1097-0266(199606)17:6<441::AID-SMJ819>3.0.CO;2-G . [ мертвая ссылка ]
- ^ Шуберт, Эрих (22 июня 2023 г.). «Перестаньте использовать локтевой критерий для k-средних и узнайте, как вместо этого выбрать количество кластеров» . Информационный бюллетень об исследованиях ACM SIGKDD . 25 (1): 36–42. arXiv : 2212.12189 . дои : 10.1145/3606274.3606278 . ISSN 1931-0145 .
- ^ См., например, рисунок 6 в
- Сирил Гутте, Питер Тофт, Эгилл Роструп, Финн Аруп Нильсен, Ларс Кай Хансен (март 1999 г.). «О кластеризации временных рядов фМРТ». НейроИмидж . 9 (3): 298–310. дои : 10.1006/нимг.1998.0391 . ПМИД 10075900 . S2CID 14147564 .
{{cite journal}}
: CS1 maint: несколько имен: список авторов ( ссылка )
- Сирил Гутте, Питер Тофт, Эгилл Роструп, Финн Аруп Нильсен, Ларс Кай Хансен (март 1999 г.). «О кластеризации временных рядов фМРТ». НейроИмидж . 9 (3): 298–310. дои : 10.1006/нимг.1998.0391 . ПМИД 10075900 . S2CID 14147564 .
- ^ Роберт Л. Торндайк (декабрь 1953 г.). «Кто принадлежит семье?». Психометрика . 18 (4): 267–276. дои : 10.1007/BF02289263 . S2CID 120467216 .
- ^ Д. Пеллег; А. В. Мур. X-средние: расширение K-средних за счет эффективной оценки количества кластеров (PDF) . Материалы семнадцатой международной конференции по машинному обучению (ICML 2000) . Проверено 16 августа 2016 г.
- ^ Сирил Гутте, Ларс Кай Хансен , Мэтью Дж. Липтрот и Эгилл Роструп (2001). «Кластеризация пространства признаков для метаанализа фМРТ» . Картирование человеческого мозга . 13 (3): 165–183. дои : 10.1002/hbm.1031 . ПМК 6871985 . ПМИД 11376501 .
{{cite journal}}
: CS1 maint: несколько имен: список авторов ( ссылка ) см., в частности, рисунок 14 и приложение. - ^ Кэтрин А. Шугар ; Гарет М. Джеймс (2003). «Определение количества кластеров в наборе данных: теоретико-информационный подход». Журнал Американской статистической ассоциации . 98 (январь): 750–763. дои : 10.1198/016214503000000666 . S2CID 120113332 .
- ^ Питер Дж. Руссо (1987). «Силуэты: графическое пособие для интерпретации и проверки кластерного анализа» . Вычислительная и прикладная математика . 20 : 53–65. дои : 10.1016/0377-0427(87)90125-7 .
- ^ Р. Ллети; MC Ортис; Лос-Анджелес Сарабия; М. С. Санчес (2004). «Выбор переменных для кластерного анализа k -средних с использованием генетического алгоритма, оптимизирующего силуэты». Аналитика Химика Акта . 515 : 87–100. дои : 10.1016/j.aca.2003.12.020 .
- ^ Р. К. де Аморим и К. Хенниг (2015). «Восстановление количества кластеров в наборах данных с шумовыми признаками с использованием коэффициентов масштабирования признаков». Информационные науки . 324 : 126–145. arXiv : 1602.06989 . дои : 10.1016/j.ins.2015.06.039 . S2CID 315803 .
- ^ Джан, Ф.; Озкарахан, Э.А. (1990). «Концепции и эффективность методологии кластеризации на основе коэффициентов покрытия для текстовых баз данных». Транзакции ACM в системах баз данных . 15 (4): 483. дои : 10.1145/99935.99938 . hdl : 2374.MIA/246 . S2CID 14309214 . особенно см. раздел 2.7.
- ^ Хонарха, М; Каерс, Дж (2010). «Стохастическое моделирование закономерностей с использованием дистанционного моделирования закономерностей». Математические науки о Земле . 42 (5): 487–517. дои : 10.1007/s11004-010-9276-7 . S2CID 73657847 .
- ^ Роберт Тибширани; Гюнтер Вальтер; Тревор Хэсти (2001). «Оценка количества кластеров в наборе данных с помощью статистики разрывов» . Журнал Королевского статистического общества, серия B. 63 (2): 411–423. дои : 10.1111/1467-9868.00293 . S2CID 59738652 .
- ^ Бродинова, Шарка; Фильцмозер, Питер; Ортнер, Томас; Брайтенедер, Кристиан; Ром, Майя (19 марта 2019 г.). «Надежная и разреженная кластеризация k-средних для многомерных данных» . Достижения в области анализа и классификации данных . arXiv : 1709.10012 . дои : 10.1007/s11634-019-00356-9 . ISSN 1862-5347 .
- ^ «пакет кластера R» . 28 марта 2022 г.
Внешние ссылки
[ редактировать ]- Кластерограмма – график кластерной диагностики – для визуальной диагностики выбора количества ( k ) кластеров ( R- код)
- Восемь методов определения оптимального значения k для k анализа -средних . Ответ на stackoverflow, содержащий код R для нескольких методов вычисления оптимального значения k для k -средних. кластерного анализа