Алгоритмы кластеризации в машинном обучении | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 20 марта, печатный экземпляр отправим 24 марта.

Опубликовать статью в журнале

Автор:

Рубрика: Информационные технологии

Опубликовано в Молодой учёный №52 (342) декабрь 2020 г.

Дата публикации: 24.12.2020

Статья просмотрена: 14 раз

Библиографическое описание:

Топалович, Никола. Алгоритмы кластеризации в машинном обучении / Никола Топалович. — Текст : непосредственный // Молодой ученый. — 2020. — № 52 (342). — С. 47-49. — URL: https://moluch.ru/archive/342/77003/ (дата обращения: 07.03.2021).



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

Ключевые слова: искусственный интеллект, AI, машинное обучение, ML, кластер, данные.

Ежедневно искусственный интеллект все сильней и сильней вторгается в нашу жизнь. В 90-х годах и начале XXI века искусственный интеллект достиг наибольшего успеха. Все больше и больше различных работ люди оставляют роботам, например, различные географические исследования, исследование других планет, обезвреживание бомб или обычное выполнение повседневной рутинной работы, например, уборку. Компьютеры значительно продвинулись вперед и на сегодняшний день они самостоятельно могут выполнять огромное количество функций: управление автомобилями и самолетами, различное прогнозирование, передача новостей или же просто развлекать нас. Сегодня многие заводские работы выполняются промышленными роботами. Это привело к удешевлению производства различных товаров, в том числе автомобилей и электроники.

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

Рассмотрим подробнее одно из направлений в искусственном интеллекте — машинное обучение. Основной принцип машинного обучения заключается в том, что машины получают данные и «обучаются» на них. В настоящее время это наиболее перспективный инструмент для бизнеса, основанный на искусственном интеллекте. Системы машинного обучения позволяют быстро применять знания, полученные при обучении на больших наборах данных, что позволяет им преуспевать в таких задачах, как распознавание лиц, распознавание речи, распознавание объектов, перевод, и многих других. В отличие от программ с закодированными вручную инструкциями для выполнения конкретных задач, машинное обучение позволяет системе научиться самостоятельно распознавать шаблоны и делать прогнозы.

Машинное обучение — одна из самых популярных технологий в 2020 г., поскольку объем данных увеличивается изо дня в день, потребность в машинном обучении также растет в геометрической прогрессии. Машинное обучение — это очень обширная тема, которая имеет разные алгоритмы и варианты использования в каждой области и отрасли. Один из них — это обучение без учителя, в котором мы можем увидеть использование кластеризации. [1]

Обучение без учителя — это метод, при котором машина учится самостоятельно на основе данных без вмешательства со стороны. Поскольку данные «не маркированы», у машины нет правильного ответа, чтобы учиться на ней, но машина сама находит некоторые закономерности на основе данных, чтобы найти ответы на бизнес-проблему. [2] Иными словами, это пригодно только для задач, в которых известны описания множества объектов (обучающей выборки), и требуется обнаружить внутренние взаимосвязи, зависимости, закономерности, существующие между объектами.

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

Зачем нужна кластеризация?

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

Примеры:

  1. Сегментирование клиентов на основе их сходства с предыдущими клиентами
  2. Обработка изображений в основном в биологических исследованиях для определения основных закономерностей
  3. Создание иерархии тем на основе набора текстовых данных в соответствии с сходством контента
  4. Фильтрация спама
  5. Выявление мошенничества и преступных действий

Давайте разберемся какие бывают типы кластеризации и узнаем их плюсы и минусы.

В машинном обучении существует множество типов алгоритмов кластеризации. Остановимся на следующих трех алгоритмах:

  1. Кластеризация k-средних

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

Плюсы: очень быстро, минимум вычислений, линейная сложность O(n).

Минусы: выбор значения k, различные центры кластеризации, непоследовательность.

  1. Кластеризация сдвига среднего значения

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

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

Плюсы: нет необходимости выбирать количество кластеров, хорошо сочетается с естественным управлением данными.

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

  1. Основанная на плотности пространственная кластеризация для приложений с шумами (DBSCAN)

Это алгоритм кластеризации, основанной на плотности — если дан набор точек в некотором пространстве, алгоритм группирует вместе точки, которые тесно расположены (точки со многими близкими соседями), помечая как выбросы точки, которые находятся одиноко в областях с малой плотностью (ближайшие соседи которых лежат далеко). Алгоритм работает путем вычисления расстояния между каждой точкой и всеми другими точками. Затем мы помещаем точки в одну из трех категорий: основная точка, граница и точки шума. Основная точка: точки, расстояние которых относительно точки ниже порога, определенного эпсилоном. Граница: точка, которая не находится в непосредственной близости к одной или нескольким основным точкам. Границы включены в кластер ближайшей базовой точки. Точка шума: точки, которые недостаточно близки к основным точкам, чтобы считаться пограничными точками. Шумовые точки игнорируются. То есть они не являются частью какого-либо кластера.

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

Минусы: не полностью однозначен — краевые точки, которые могут быть достигнуты из более чем одного кластера, могут принадлежать любому из этих кластеров, что зависит от порядка просмотра точек, не может хорошо кластеризовать наборы данных с большой разницей в плотности. [3]

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

Литература:

  1. Различия между искусственным интеллектом, машинным обучением и глубоким обучением. — Текст: электронный // Хабр: [сайт]. — URL: https://habr.com/ru/post/526984/ (дата обращения: 22.12.2020).
  2. Clustering in Machine Learning. — Текст: электронный // upGrad blog: [сайт]. — URL: https://www.upgrad.com/blog/clustering-in-machine-learning/ (дата обращения: 22.12.2020).
  3. DBSCAN. — Текст: электронный // Википедия: [сайт]. — URL: https://ru.wikipedia.org/wiki/DBSCAN (дата обращения: 22.12.2020).
Основные термины (генерируются автоматически): машинное обучение, данные, искусственный интеллект, кластер, алгоритм, алгоритм кластеризации, набор данных, DBSCAN, высокая плотность, вычисление расстояния.


Задать вопрос