Понять, где подходят алгоритмы кластеризации машинного обучения

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

Мы не должны игнорировать мягкую кластеризацию из нашего набора алгоритмов машинного обучения.

Что такое кластеризация?

Иногда наши данные не помечены, и мы хотим знать, насколько похожи элементы данных в нашей выборке друг на друга. Например, нас может заинтересовать определение того, является ли контрагент безопасным или небезопасным контрагентом. Кроме того, иногда нам интересно узнать, насколько элемент данных в нашей выборке похож на все другие элементы данных.

Эти алгоритмы могут помочь нам отличить плохие элементы данных от хороших элементов данных.

Что такое жесткая кластеризация?

Жесткая кластеризация - это группировка элементов данных таким образом, чтобы каждый элемент был назначен только одному кластеру. Например, мы хотим, чтобы алгоритм прочитал все твиты и определил, является ли твит положительным или отрицательным.

Что такое алгоритмы жесткой кластеризации?

K-Means - это известный алгоритм жесткой кластеризации, при котором элементы данных группируются в K кластеров, так что каждый элемент записывается только в один кластер.

Прочтите мою статью, в которой подробно объясняется неконтролируемое обучение и кластеризация K-средних:



Что такое мягкая кластеризация?

Иногда нам не нужен двоичный ответ. Мягкая кластеризация - это группировка элементов данных таким образом, чтобы элемент мог существовать в нескольких кластерах.

Что такое алгоритмы мягкой кластеризации?

Нечеткие C-средства - это известный алгоритм мягкой кластеризации. Он основан на нечеткой логике и часто называется алгоритмом FCM.

Принцип работы FCM заключается в том, что элементам присваиваются вероятности, которые по существу выражают силу принадлежности элемента к кластеру.

Вектор членства создается во время процесса FCM, который выражает вероятность членства в диапазоне от 0 до 1, что указывает, насколько элемент похож на среднее значение кластера:

В векторе выше мы видим, что элемент данных принадлежит двум кластерам с именами m2 и m3. Этот вектор членства создается для каждого элемента данных.

Сумма членства равна 1 для предмета.

Эта концепция очень похожа на то, как работает K-means. Каждый элемент случайным образом назначается кластерам, и шаги повторяются до тех пор, пока ни одно из членств не обновляется для итерации.

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

Целевая функция FCM очень похожа на функцию квадратов ошибок. Расстояние между средним значением кластера и элементами данных сведено к минимуму.

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

Сказав это, эти алгоритмы могут разрешить случаи использования, когда элемент может находиться в нескольких состояниях или когда мы хотим выяснить, насколько элемент похож на несколько заданных групп.

Например, если вы пытаетесь спрогнозировать изменения рейтингов для контрагентов, с которыми вы торгуете, вы можете использовать технику мягкой кластеризации. Алгоритм может создавать кластеры для каждого рейтинга и указывать вероятность принадлежности контрагента к кластеру.

Резюме

Часто мы игнорируем алгоритмы мягкой кластеризации. В этой статье освещены различия между жесткой и мягкой кластеризацией и описано, как работает FCM.