Анализ производительности алгоритмов кластеризации
Мне дали 2 набора данных, и я хочу выполнить кластерный анализ для наборов, используя KNIME.
После завершения кластеризации я хочу провести сравнение производительности двух разных алгоритмов кластеризации.
Что касается анализа производительности алгоритмов кластеризации, будет ли это мерой времени (сложность времени алгоритма и время, затрачиваемое на кластеризацию данных и т. Д.) Или достоверностью выходных данных кластеров? (или оба)
Есть ли какой-то другой взгляд, чтобы определить производительность (или отсутствие) алгоритма кластеризации?
Спасибо заранее,
- T
3 ответа
Это зависит от того, какие данные у вас есть.
Распространенным способом измерения производительности является использование существующих ("внешних") меток (хотя это имеет больше смысла для классификации, чем для кластеризации). Существует около двух десятков мер, которые вы можете использовать для этого.
При использовании "внутренней" меры качества убедитесь, что она не зависит от алгоритмов. Например, k-means оптимизирует такую меру и всегда будет лучше при оценке по этой мере.
Простой подход к внешним методам, где есть основополагающая истина, заключается в использовании метрики расстояния между кластеризациями; наземная истина просто считается кластеризацией. Двумя хорошими мерами, которые можно использовать, являются "Вариация информации" Мейлы и, по моему скромному мнению, разделенное расстояние между собой, также обсужденное Мейлой. Я не рекомендую индекс Миркина или индекс Рэнда - я написал больше об этом здесь на stackexchange.
Эти метрики могут быть разделены на две составные части, каждая из которых представляет расстояние от одной из кластеризаций до наибольшей общей субкластеризации. Стоит рассмотреть обе части; если доля истинного основания (для общей подгруппы) очень мала, это означает, что проверенная кластеризация близка к сверхскоплению; если другая часть мала, это означает, что тестируемая кластеризация близка к общему субкластеру и, следовательно, близка к субкластеризации основной истины. В обоих случаях можно сказать, что кластеризация совместима с основной истиной. Для получения дополнительной информации см. Ссылку выше.
Существует две категории методов оценки кластеризации, и выбор зависит от того, доступна ли основополагающая истина. Первая категория - внешние методы, которые требуют существования основной истины, а другая категория - внутренние методы. В общем, внешние методы пытаются назначить оценку кластеризации, учитывая основную правду, тогда как внутренние методы оценивают кластеризацию, проверяя, насколько хорошо кластеры разделены и насколько они компактны.
Для внешних методов (помните, что вам нужно иметь доступное основание), один из вариантов - использовать метку точности BCubed и вызвать метрики. Показатели точности и отзыва BCubed отличаются от традиционной точности и напоминания в том смысле, что кластеризация является неконтролируемой техникой обучения, и поэтому мы заранее не знаем меток кластеров. По этой причине метрики BCubed оценивают точность и отзыв для каждого объекта в кластеризации по заданному набору данных в соответствии с основной истиной. Точность примера показывает, сколько других примеров в том же кластере относится к той же категории, что и пример. Отзыв примера отражает, сколько примеров одной категории назначено одному кластеру. Наконец, мы можем объединить эти две метрики в одну, используя метрику F2.
Источники:
- Концепции и методы интеллектуального анализа данных от Jiawei Han, Micheline, Kamber и Jian Pei
- http://www.cs.utsa.edu/~qitian/seminar/Spring11/03_11_11/IR2009.pdf
- Мой собственный опыт оценки производительности кластеризации
Существует несколько эталонов для оценки алгоритмов кластеризации с внешними показателями качества (точность) и внутренними показателями (некоторые внутренние статистические данные о сформированных кластерах):
- Clubmark демонстрируется в ICDM'18
- WebOCD, см. Описание в статье
- Circulo
- ParallelComMetric
- CluSim
- CoDAR (источники могут быть получены от авторов статьи)
Выбор соответствующего эталонного теста зависит от типа алгоритма кластеризации (жесткая или мягкая кластеризация), вида (попарные отношения, приписанные наборы данных или смешанные) и размера данных кластеризации, требуемых метрик оценки и допустимого объема надзора. В статье Clubmark подробно описываются критерии оценки.
Clubmark разработан для полностью автоматической параллельной оценки многих алгоритмов кластеризации (обработки входных данных, заданных попарными отношениями) по многим большим наборам данных (миллионы и миллиарды элементов кластеризации) и оценивается главным образом по потреблению ресурсов отслеживания метрик точности (время обработки и выполнения). пиковое потребление резидентной памяти и т. д.).
Но для пары алгоритмов на нескольких наборах данных подходит даже ручная оценка.