Кластеризация в машинном обучении: объяснение 3 типов кластеризации
Опубликовано: 2020-11-30Оглавление
Введение
Машинное обучение — одна из самых популярных технологий в 2020 году, поскольку объем данных растет день ото дня, потребность в машинном обучении также растет в геометрической прогрессии. Машинное обучение — это очень обширная тема, которая имеет разные алгоритмы и варианты использования в каждой области и отрасли. Одним из них является неконтролируемое обучение, в котором мы видим использование кластеризации.
Неконтролируемое обучение — это метод, при котором машина учится на неразмеченных данных. Поскольку мы не знаем меток, у машины нет правильного ответа, чтобы учиться на нем, но машина сама находит некоторые закономерности из предоставленных данных, чтобы найти ответы на бизнес-задачу.
Кластеризация — это метод машинного обучения без учителя, который включает в себя группировку заданных немаркированных данных. В каждом очищенном наборе данных с помощью алгоритма кластеризации мы можем сгруппировать заданные точки данных в каждую группу. Алгоритм кластеризации предполагает, что точки данных, находящиеся в одном кластере, должны иметь схожие свойства, в то время как точки данных в разных кластерах должны иметь сильно отличающиеся свойства.
В этой статье мы узнаем о необходимости кластеризации, различных типах кластеризации, а также их плюсах и минусах.
Читайте: Предпосылки машинного обучения
Для чего нужна кластеризация?
Кластеризация — это широко используемый алгоритм машинного обучения, который позволяет нам находить скрытые связи между точками данных в нашем наборе данных.

Примеры:
1) Клиенты сегментируются по сходству с предыдущими клиентами и могут быть использованы для рекомендаций.
2) На основе набора текстовых данных мы можем организовать данные в соответствии со сходством содержания, чтобы создать иерархию тем.
3) Обработка изображений в основном в биологических исследованиях для выявления основных закономерностей.
4) Фильтрация спама.
5) Выявление мошеннических и преступных действий.
6) Его также можно использовать для фэнтези-футбола и спорта.
Типы кластеризации
В машинном обучении существует множество типов алгоритмов кластеризации. В этой статье мы собираемся обсудить следующие три алгоритма:
1) Кластеризация K-средних.
2) Кластеризация среднего сдвига.
3) ДБСКАН.
1. Кластеризация K-средних
K-Means — самый популярный алгоритм кластеризации среди других алгоритмов кластеризации в машинном обучении. Мы видим, что этот алгоритм используется во многих ведущих отраслях или даже во многих вводных курсах. Это одна из самых простых моделей для начала как в реализации, так и в понимании.
Шаг 1 Сначала мы выбираем случайное число k для использования и случайным образом инициализируем их соответствующие центральные точки.
Шаг 2 Каждая точка данных затем классифицируется путем вычисления расстояния (евклидово или манхэттенское) между этой точкой и центром каждой группы, а затем кластеризации точки данных, чтобы она находилась в кластере, центр которого находится ближе всего к ней.
Шаг 3. Мы повторно вычисляем центр группы, взяв среднее значение всех векторов в группе.
Шаг 4. Мы повторяем все эти шаги несколько итераций или до тех пор, пока центры групп не изменятся сильно.
Плюсы
1) Очень быстро.
2) Очень мало вычислений
3) Линейная сложность O(n).
Минусы
1) Выбор значения k.
2) Разные центры кластеризации в разных прогонах.
3) Отсутствие последовательности.
2. Кластеризация среднего сдвига
Кластеризация среднего сдвига — это алгоритм на основе скользящего окна, который пытается идентифицировать плотные области точек данных. Будучи алгоритмом на основе центроида, это означает, что цель состоит в том, чтобы найти центральные точки каждого класса, который, в свою очередь, работает, обновляя кандидатов на центральные точки, чтобы они были средним значением точек в скользящем окне.
Эти выбранные окна-кандидаты затем фильтруются на этапе постобработки, чтобы исключить дубликаты, что поможет сформировать окончательный набор центров и соответствующих им классов.

Шаг 1 Начнем с круглого скользящего окна с центром в точке C (выбранной случайным образом) и радиусом r в качестве ядра. Средний сдвиг — это алгоритм типа восхождения, который включает итеративное смещение этого ядра в область с более высокой плотностью на каждом шаге, пока мы не достигнем сходимости.
Шаг 2. После каждой итерации скользящее окно смещается в сторону областей с более высокой плотностью путем смещения центральной точки к среднему значению точек внутри окна. Плотность внутри скользящего окна увеличивается с увеличением количества точек внутри него. Смещение среднего значения точек в окне будет постепенно смещаться в сторону областей с более высокой плотностью точек.
Шаг 3 На этом шаге мы продолжаем смещать скользящее окно на основе среднего значения до тех пор, пока не останется направления, в котором сдвиг может получить больше точек внутри выбранного ядра.
Шаг 4 Шаги 1-2 выполняются с большим количеством скользящих окон, пока все точки не попадут в окно. Когда несколько скользящих окон имеют тенденцию перекрываться, выбирается окно, содержащее наибольшее количество точек. Точки данных теперь сгруппированы в соответствии со скользящим окном, в котором они находятся.
Плюсы
1) Нет необходимости выбирать количество кластеров.
2) Хорошо вписывается в естественном смысле данных
Минусы
1) Единственным недостатком является то, что выбор размера окна (r) может быть нетривиальным.
3. Пространственная кластеризация приложений с шумом на основе плотности (DBSCAN)
DBSCAN похож на кластеризацию среднего сдвига, который также является алгоритмом на основе плотности с некоторыми изменениями.
Шаг 1. Он начинается с произвольной начальной точки, окрестность этой точки извлекается с использованием расстояния, называемого эпсилон.
Шаг 2. Кластеризация начнется, если будет достаточно точек и точка данных станет первой новой точкой в кластере. Если данных недостаточно, точка будет помечена как шум, а точка будет помечена как посещенная.
Шаг 3. Точки внутри эпсилон имеют тенденцию становиться частью кластера. Эта процедура повторяется для всех точек внутри кластера.
Шаг 4. Шаги 2 и 3 повторяются до тех пор, пока точки в кластере не будут посещены и помечены.
Шаг 5. По завершении текущего кластера новая непосещенная точка обрабатывается в новый кластер, что приводит к классификации ее как кластера или шума.
Плюсы
1) Нет необходимости задавать количество кластеров.
2) Определяет выбросы как шум.
3) Хорошо помогает находить кластеры произвольного размера и произвольной формы.
Минусы

1) Плохо работает с кластерами различной плотности.
2) Плохо работает с многомерными данными.
Читайте также: Идеи проекта машинного обучения
Заключение
В этой статье мы узнали о необходимости кластеризации на современном рынке, различных типах алгоритмов кластеризации, а также их плюсах и минусах. Кластеризация — действительно очень интересная тема в машинном обучении, и существует множество других типов алгоритмов кластеризации, которые стоит изучить.
Если вам интересно узнать больше о машинном обучении, ознакомьтесь с дипломом PG IIIT-B и upGrad в области машинного обучения и искусственного интеллекта, который предназначен для работающих профессионалов и предлагает более 450 часов тщательного обучения, более 30 тематических исследований и заданий, IIIT- Статус B Alumni, более 5 практических практических проектов и помощь в трудоустройстве в ведущих фирмах.
Что подразумевается под кластеризацией гауссовской смеси?
Смешанные модели Гаусса обычно используются в случае данных запроса для выполнения либо жесткой, либо мягкой кластеризации. Модели смеси Гаусса делают несколько допущений, чтобы хорошо выполнить кластеризацию. Основываясь на предположениях, модель группирует точки данных, принадлежащие одному распределению. Это вероятностные модели, и они используют подход мягкой кластеризации для эффективного выполнения процесса кластеризации.
Что такое коэффициент силуэта при кластеризации?
Чтобы измерить, насколько хорошо была выполнена кластеризация, мы используем коэффициент силуэта. В основном измеряется среднее расстояние между двумя скоплениями, а затем по формуле рассчитывается ширина силуэта. Таким образом, мы можем легко измерить оптимальное количество кластеров, присутствующих в заданных данных, и, таким образом, выяснить эффективность выполненной кластеризации.
Что подразумевается под нечеткой кластеризацией в машинном обучении?
Когда данные попадают в более чем один кластер или группу, используется метод нечеткой кластеризации, который работает на алгоритме нечеткого C-среднего или нечеткого алгоритма K-среднего. Это метод мягкой кластеризации. В соответствии с расстоянием между центром кластера и точкой изображения метод присваивает значения принадлежности каждой точке изображения, связанной с каждым центром кластера.