Нечеткая кластеризация - 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 приведен классический пример одномерных данных.

Нечеткий пример 1.jpg

Этот набор данных традиционно можно сгруппировать в два кластера. При выборе порога по оси x данные разделяются на два кластера. Полученные кластеры помечены буквами «A» и «B», как показано на следующем изображении. Следовательно, каждая точка, принадлежащая набору данных, будет иметь коэффициент принадлежности 1 или 0. Этот коэффициент принадлежности каждой соответствующей точки данных представлен включением оси y.

Пример 2.jpg

В нечеткой кластеризации каждая точка данных может принадлежать нескольким кластерам. Путем ослабления определения коэффициентов принадлежности от 1 до 0 эти значения могут варьироваться от любого значения от 1 до 0. На следующем изображении показан набор данных из предыдущей кластеризации, но теперь применяется нечеткая кластеризация c-средних. Сначала может быть сгенерировано новое пороговое значение, определяющее два кластера. Затем новые коэффициенты принадлежности для каждой точки данных генерируются на основе центроидов кластеров, а также расстояния от центроидов каждого кластера.

Пример 3.jpg

Как можно видеть, средняя точка данных принадлежит кластеру A и кластеру B. Значение 0,3 является коэффициентом принадлежности этой точки данных для кластера A.

Приложения

Проблемы кластеризации находят применение в науке о поверхности, биологии, медицине, психологии, экономике и многих других дисциплинах.

Биоинформатика

В области биоинформатики кластеризация используется для ряда приложений. Одно из применений - это метод распознавания образов для анализа данных экспрессии генов на основе данных секвенирования РНК или других технологий. В этом случае гены со сходными паттернами экспрессии сгруппированы в один и тот же кластер, а разные кластеры демонстрируют различные, хорошо разделенные паттерны экспрессии. Использование кластеризации может дать представление о функции и регуляции генов. Поскольку нечеткая кластеризация позволяет генам принадлежать более чем к одному кластеру, она позволяет идентифицировать гены, которые условно совместно регулируются или совместно экспрессируются. Например, один ген может подвергаться действию более чем одного фактора транскрипции , и один ген может кодировать белок, выполняющий более одной функции. Таким образом, нечеткая кластеризация более уместна, чем жесткая.

Анализ изображений

Нечеткие c-средства были очень важным инструментом для обработки изображений при кластеризации объектов изображения. В 1970-х математики ввели пространственный член в алгоритм FCM, чтобы повысить точность кластеризации в условиях шума. Кроме того, алгоритмы FCM использовались для различения различных действий с использованием функций на основе изображений, таких как моменты Ху и Зернике. Альтернативно, модель нечеткой логики может быть описана на нечетких наборах , которые определены на трех компонентах цветового пространства HSL HSL и HSV ; Функции принадлежности призваны описывать цвета, следуя человеческой интуиции идентификации цвета.

Маркетинг

В маркетинге клиентов можно сгруппировать в нечеткие кластеры на основе их потребностей, выбора бренда, психографических профилей или других разделов, связанных с маркетингом.

Пример обработки изображения

Изображение сегментировано с помощью нечеткой кластеризации с исходной (вверху слева), сгруппированной (вверху справа) и картой членства (внизу)

Сегментация изображений с использованием алгоритмов кластеризации k-средних уже давно используется для распознавания образов, обнаружения объектов и получения медицинских изображений. Однако из-за реальных ограничений, таких как шум, затенение и различия в камерах, традиционная жесткая кластеризация часто не может надежно выполнять задачи обработки изображений, как указано выше. Нечеткая кластеризация была предложена как более подходящий алгоритм для выполнения этих задач. Это изображение в оттенках серого, которое подверглось нечеткой кластеризации в Matlab. Исходное изображение отображается рядом с кластерным изображением. Цвета используются для визуального представления трех отдельных кластеров, используемых для определения принадлежности каждого пикселя. Ниже приведена диаграмма, определяющая нечеткие коэффициенты принадлежности соответствующих им значений интенсивности.

В зависимости от приложения, для которого должны использоваться коэффициенты нечеткой кластеризации, к изображениям RGB могут применяться различные методы предварительной обработки . Преобразование RGB в HCL - обычная практика.

Смотрите также

Рекомендации