Что такое кластеризация в неконтролируемом машинном обучении? Как это работает?

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

  • Машинное обучение с учителем
  • Неконтролируемое машинное обучение

Чтобы разобраться в управляемом машинном обучении, посетите:



Кластеризация: мир неконтролируемого машинного обучения

Сегодня мы углубимся в мир обучения без учителя. Чтобы помочь вам понять концепцию, позвольте мне привести пример порталов электронной коммерции, таких как Flipkart, Amazon и т. Д.

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

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

Итак, некоторые из популярных примеров:

  • Сегментация рынка
  • Сегментация продуктов
  • Сегментация пользователей
  • Организация системных файлов в группы папок
  • Организация писем по разным категориям папок и т. Д.

Почему это называется бесконтрольным?

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

Например :

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

  • Неплательщик
  • Неплатежеспособный

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

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

Итак, с этим базовым пониманием обучения без учителя пора перейти к основам кластеризации, которая является разновидностью обучения без учителя. Здесь мы рассмотрим:

  • Что такое кластеризация в машинном обучении без учителя?
  • Какие бывают типы кластеризации?
  • Что такое кластеризация K-средних?

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

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

Что такое кластер?

Это набор похожих объектов данных

Итак, здесь важно понимать два выделенных мира в приведенном выше определении.

  • Сходство
  • Расстояние

Концепция подобия в кластеризации:

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

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

  • Расстояние до Манхэттена
  • Евклидовы расстояния
  • Расстояния Чебышева
  • Расстояние Минковского

Евклидово расстояние :

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

Согласно вики,

В области математики Евклидово расстояние или Евклидова метрика - это «обычное» расстояние по прямой между двумя точками в евклидовом пространстве.

Евклидово расстояние между точками X и Y - это длина соединяющего отрезка прямой. В декартовых координатах евклидово расстояние (d):

от X до Y или от Y до X задается формулой Пифагора:

Евклидово расстояние: 2-х мерное, 3-хмерное и N-мерное измерение:

Евклидово расстояние, как обсуждалось, использовало популярную теорему Пифагора для вычисления меры расстояния между заданным набором векторов / точек в n-мерном пространстве.

Ниже приведена формула для того же в 2-, 3- и n-мерном пространстве:

Манхэттен Расстояние:

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

сумма абсолютных разностей их декартовых координат.

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

Расстояние до Манхэттена, которое также называют расстоянием для такси, можно определить по приведенной ниже формуле

Чебесев Расстояние:

Также обычно называется дистанцией на шахматной доске:

Это не что иное, как максимальное (манхэттенского расстояния)

Согласно вики,

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

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

Итак, для двух векторов или точек x и y со стандартными координатами xi и yi соответственно, как показано на рисунке ниже. Также для двухмерной плоскости мы можем увидеть формулу ниже.

Итак, теперь, когда мы поняли основы подобия на основе меры расстояния, пришло время узнать, какие типы кластеризации и как они используют вышеупомянутую метрику расстояния для кластеризации заданных векторов данных или объекта.

Типы кластеризации при обучении без учителя:

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

  • Кластеризация на основе подключения: также известна как иерархическая кластеризация.
  • Кластеризация на основе центроидов. К-средние - самый популярный вид.

Кластеризация на основе подключения:

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

Что объекты больше связаны с близлежащими объектами, чем с объектами, находящимися дальше

Когда размер набора данных не очень велик, этот вид кластеризации очень эффективен, но если набор данных слишком большой, это может быть очень ресурсоемким. Например, если у нас есть набор данных с 1000 строками, тогда для анализа на сходство потребуется 1/2 миллиона пар данных, это может оказаться чрезвычайно дорогостоящим для обработки. Представьте, если количество строк станет 10 000.

Итак, подведем итоги:

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

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



Кластеризация на основе центроидов:

В отличие от иерархической кластеризации / кластеризации на основе подключений Кластеризация на основе центроидов организует данные в неиерархические кластеры.

Интуиция за кластеризацией на основе центроидов:

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

Этот алгоритм очень дешев по сравнению с иерархической кластеризацией, что можно понять на примере. Итак, если у вас было 1000 строк и 5 кластеров, определены с самого начала. Алгоритм должен обрабатывать только 5 * 1000 = 5000 точек данных, что составило бы 1/2 миллиона точек данных в случае алгоритма кластеризации на основе подключения.

Как мы пришли к отказу от кластера?

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

Кластеризация K-средних:

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

  • Что такое кластеризация K-средних?
  • Как это работает ?
  • Реализация алгоритма кластеризации k-средних с использованием практической лаборатории Python