Введение в алгоритм кластеризации K-средних?

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

Понимание алгоритма кластеризации K-средних

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

Как работает алгоритм кластеризации K-средних?

Алгоритм кластеризации K-Means требует следующих входных данных:

  • K = количество подгрупп или кластеров
  • Образец или тренировочный набор = (x 1, x 2, x 3, ……… x n )

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

Теперь нам нужно найти количество кластеров. Это можно сделать двумя способами:

  • Метод локтя.
  • Цель Метод.

Давайте обсудим их вкратце:

Метод локтя

В этом методе кривая рисуется между «в пределах суммы квадратов» (WSS) и количеством кластеров. Нарисованная кривая напоминает человеческую руку. Он называется методом колен, потому что точка колена на кривой дает нам оптимальное количество кластеров. На графике или кривой после точки сгиба значение WSS изменяется очень медленно, поэтому необходимо учитывать точку сгиба, чтобы получить окончательное значение числа кластеров.

Цель-Based

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

Теперь давайте вернемся к указанному выше набору данных. Мы можем рассчитать количество кластеров, т.е. значение K, используя любой из вышеперечисленных методов.

Как использовать вышеперечисленные методы?

Теперь давайте посмотрим процесс выполнения:

Шаг 1: Инициализация

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

Шаг 2: Назначение кластера

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

Шаг 3: Перемещение Центроида

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

Шаг 4: Оптимизация

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

Шаг 5: Конвергенция

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

Применение алгоритма кластеризации K-средних

  • Сегментация рынка
  • Кластеризация документов
  • Сегментация изображения
  • Сжатие изображения
  • Векторное квантование
  • Кластерный анализ
  • Функция обучения или словарь
  • Выявление мест, подверженных преступности
  • Обнаружение страхового мошенничества
  • Анализ данных общественного транспорта
  • Кластеризация ИТ-активов
  • Сегментация клиентов
  • Выявление раковых данных
  • Используется в поисковых системах
  • Прогнозирование лекарственной активности

Преимущества алгоритма кластеризации K-средних

  • Это быстро
  • крепкий
  • Легко понять
  • Сравнительно эффективный
  • Если наборы данных отличаются, то дает лучшие результаты
  • Производить более плотные кластеры
  • Когда пересчитываются центроиды, кластер меняется.
  • гибкий
  • Легко интерпретировать
  • Лучшая вычислительная стоимость
  • Повышает точность
  • Лучше работает со сферическими кластерами

Недостатки алгоритма кластеризации K-средних

  • Требуется предварительная спецификация для количества кластерных центров
  • Если есть два сильно перекрывающихся данных, то их невозможно различить и нельзя сказать, что есть два кластера
  • При различном представлении данных достигнутые результаты также различаются
  • Евклидово расстояние может неравномерно взвешивать факторы
  • Это дает локальную оптимум функции квадрата ошибки
  • Иногда случайный выбор центроидов не может дать плодотворных результатов.
  • Может использоваться, только если определено значение
  • Не может обрабатывать выбросы и шумные данные
  • Не работают для нелинейного набора данных
  • Не хватает согласованности
  • Чувствителен к масштабу
  • Если встречаются очень большие наборы данных, компьютер может дать сбой.
  • Проблемы прогнозирования

Рекомендуемые статьи

Это было руководство к алгоритму кластеризации K-средних. Здесь мы обсудили работу, приложения, преимущества и недостатки алгоритма кластеризации K-Means. Вы также можете просмотреть наши другие предлагаемые статьи, чтобы узнать больше -

  1. Что такое нейронные сети?
  2. Что такое интеллектуальный анализ данных? | Роль интеллектуального анализа данных
  3. Интервью по интеллектуальному анализу данных
  4. Машинное обучение против нейронной сети
  5. Кластеризация в машинном обучении