Нечеткая кластеризация - Fuzzy clustering
Часть серии по |
Машинное обучение и интеллектуальный анализ данных |
---|
Нечеткая кластеризация (также называемая мягкой кластеризацией или мягкими k- средними ) - это форма кластеризации, в которой каждая точка данных может принадлежать более чем одному кластеру.
Кластеризация или кластерный анализ включает в себя присвоение точек данных кластерам таким образом, чтобы элементы в одном кластере были как можно более похожими, а элементы, принадлежащие к разным кластерам, были как можно более разными. Кластеры идентифицируются с помощью мер сходства. Эти меры сходства включают расстояние, взаимосвязь и интенсивность. На основе данных или приложения могут быть выбраны различные меры сходства.
Сравнение с жесткой кластеризацией
При нечеткой кластеризации (также известной как жесткая кластеризация) данные делятся на отдельные кластеры, где каждая точка данных может принадлежать только одному кластеру. В нечеткой кластеризации точки данных потенциально могут принадлежать нескольким кластерам. Например, яблоко может быть красным или зеленым (жесткая кластеризация), но яблоко также может быть красным И зеленым (нечеткая кластеризация). Здесь яблоко может быть в определенной степени красным, а в определенной степени зеленым. Вместо яблока, принадлежащего зеленому [green = 1], а не красному [red = 0], яблоко может принадлежать зеленому [green = 0,5] и красному [red = 0,5]. Эти значения нормализованы от 0 до 1; однако они не представляют вероятности, поэтому нет необходимости складывать эти два значения в 1.
Членство
Оценки членства присваиваются каждой из точек данных (тегов). Эти степени членства указывают на степень принадлежности точек данных каждому кластеру. Таким образом, точки на краю кластера с более низкими оценками членства могут находиться в кластере в меньшей степени, чем точки в центре кластера.
Нечеткая кластеризация C-средних
Одним из наиболее широко используемых алгоритмов нечеткой кластеризации является алгоритм нечеткой кластеризации C-средних (FCM).
История
Кластеризация нечетких c-средних (FCM) была разработана JC Dunn в 1973 году и усовершенствована JC Bezdek в 1981 году.
Общее описание
Алгоритм нечетких c- средних очень похож на алгоритм k- средних :
- Выберите количество кластеров .
- Назначьте коэффициенты случайным образом каждой точке данных для того, чтобы она была в кластерах.
- Повторяйте до тех пор, пока алгоритм не сойдется (то есть изменение коэффициентов между двумя итерациями не превышает заданный порог чувствительности):
- Вычислите центроид для каждого кластера (показано ниже).
- Для каждой точки данных вычислите ее коэффициенты нахождения в кластерах.
Центроид
Любая точка x имеет набор коэффициентов, определяющих степень нахождения в k- м кластере w k ( x ). С нечеткими c- средними центроид кластера является средним значением всех точек, взвешенных по степени их принадлежности к кластеру, или, математически,
где m - гиперпараметр, определяющий, насколько нечетким будет кластер. Чем он выше, тем более нечетким будет кластер в итоге.
Алгоритм
Алгоритм FCM пытается разбить конечный набор элементов на набор из c нечетких кластеров по некоторому заданному критерию.
Учитывая конечный набор данных, алгоритм возвращает список центров кластеров и матрицу разбиения.
, где каждый элемент`` сообщает степень, в которой элемент`` принадлежит кластеру .
FCM стремится минимизировать целевую функцию:
где:
Сравнение с кластеризацией K-средних
Кластеризация K-средних также пытается минимизировать целевую функцию, показанную выше. Этот метод отличается от целевой функции k- средних добавлением значений принадлежности и фаззификатора , с . Фаззификатор определяет уровень нечеткости кластера. Большое значение приводит к меньшим значениям принадлежности и, следовательно, к более нечетким кластерам. В пределе членство сходится к 0 или 1, что подразумевает четкое разбиение. При отсутствии экспериментов или знания предметной области обычно устанавливается равным 2. Алгоритм также минимизирует внутрикластерную дисперсию, но имеет те же проблемы, что и «k» -средства; минимум - это локальный минимум, и результаты зависят от первоначального выбора весов.
Связанные алгоритмы
Нечеткие C-средние (FCM) с автоматически определенным количеством кластеров могут повысить точность обнаружения. Использование смеси гауссианов вместе с алгоритмом максимизации ожидания - это более статистически формализованный метод, который включает в себя некоторые из этих идей: частичное членство в классах.
Пример
Чтобы лучше понять этот принцип, ниже по оси x приведен классический пример одномерных данных.
Этот набор данных традиционно можно сгруппировать в два кластера. При выборе порога по оси x данные разделяются на два кластера. Полученные кластеры помечены буквами «A» и «B», как показано на следующем изображении. Следовательно, каждая точка, принадлежащая набору данных, будет иметь коэффициент принадлежности 1 или 0. Этот коэффициент принадлежности каждой соответствующей точки данных представлен включением оси y.
В нечеткой кластеризации каждая точка данных может принадлежать нескольким кластерам. Путем ослабления определения коэффициентов принадлежности от 1 до 0 эти значения могут варьироваться от любого значения от 1 до 0. На следующем изображении показан набор данных из предыдущей кластеризации, но теперь применяется нечеткая кластеризация c-средних. Сначала может быть сгенерировано новое пороговое значение, определяющее два кластера. Затем новые коэффициенты принадлежности для каждой точки данных генерируются на основе центроидов кластеров, а также расстояния от центроидов каждого кластера.
Как можно видеть, средняя точка данных принадлежит кластеру A и кластеру B. Значение 0,3 является коэффициентом принадлежности этой точки данных для кластера A.
Приложения
Проблемы кластеризации находят применение в науке о поверхности, биологии, медицине, психологии, экономике и многих других дисциплинах.
Биоинформатика
В области биоинформатики кластеризация используется для ряда приложений. Одно из применений - это метод распознавания образов для анализа данных экспрессии генов на основе данных секвенирования РНК или других технологий. В этом случае гены со сходными паттернами экспрессии сгруппированы в один и тот же кластер, а разные кластеры демонстрируют различные, хорошо разделенные паттерны экспрессии. Использование кластеризации может дать представление о функции и регуляции генов. Поскольку нечеткая кластеризация позволяет генам принадлежать более чем к одному кластеру, она позволяет идентифицировать гены, которые условно совместно регулируются или совместно экспрессируются. Например, один ген может подвергаться действию более чем одного фактора транскрипции , и один ген может кодировать белок, выполняющий более одной функции. Таким образом, нечеткая кластеризация более уместна, чем жесткая.
Анализ изображений
Нечеткие c-средства были очень важным инструментом для обработки изображений при кластеризации объектов изображения. В 1970-х математики ввели пространственный член в алгоритм FCM, чтобы повысить точность кластеризации в условиях шума. Кроме того, алгоритмы FCM использовались для различения различных действий с использованием функций на основе изображений, таких как моменты Ху и Зернике. Альтернативно, модель нечеткой логики может быть описана на нечетких наборах , которые определены на трех компонентах цветового пространства HSL HSL и HSV ; Функции принадлежности призваны описывать цвета, следуя человеческой интуиции идентификации цвета.
Маркетинг
В маркетинге клиентов можно сгруппировать в нечеткие кластеры на основе их потребностей, выбора бренда, психографических профилей или других разделов, связанных с маркетингом.
Пример обработки изображения
Сегментация изображений с использованием алгоритмов кластеризации k-средних уже давно используется для распознавания образов, обнаружения объектов и получения медицинских изображений. Однако из-за реальных ограничений, таких как шум, затенение и различия в камерах, традиционная жесткая кластеризация часто не может надежно выполнять задачи обработки изображений, как указано выше. Нечеткая кластеризация была предложена как более подходящий алгоритм для выполнения этих задач. Это изображение в оттенках серого, которое подверглось нечеткой кластеризации в Matlab. Исходное изображение отображается рядом с кластерным изображением. Цвета используются для визуального представления трех отдельных кластеров, используемых для определения принадлежности каждого пикселя. Ниже приведена диаграмма, определяющая нечеткие коэффициенты принадлежности соответствующих им значений интенсивности.
В зависимости от приложения, для которого должны использоваться коэффициенты нечеткой кластеризации, к изображениям RGB могут применяться различные методы предварительной обработки . Преобразование RGB в HCL - обычная практика.
Смотрите также
- Кластеризация пламени
- Кластерный анализ
- Алгоритм ожидания-максимизации (аналогичный, но более статистически формализованный метод)