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

Нам нужно будет описать, что такое определение подобие, и предоставить компьютеру способ количественной оценки. Мы все еще работаем с наборами данных, которые будут представлены в виде строк столбцов. Как мы можем узнать, похожи ли две строки друг на друга? Если мы количественно оценим строку (поместим числовые термины категориальных переменных), у нас теперь будет то, что является многомерным вектором. Если два многомерных вектора математически близки, мы можем сгруппировать их в кластер подобия. Мы также дадим определение близко с точки зрения математики. Евклидово расстояние было стандартной мерой, которую преподают в школах, где расстоянием является пифагорейская гипотенуза в множественных измерениях. Это может быть трудно визуализировать, но может быть интересно попытаться это сделать. Есть и другие способы измерить, насколько далеко друг от друга находятся два вектора. Например, манхэттенское расстояние следует использовать там, где гипотенуза больше не актуальна. Имеет смысл, что чтобы добраться до пентхауса, вы не можете пройти к нему по гипотенузе, а должны пройти по улице, а затем подняться на лифте. Эта мера представляет собой сумму расстояний |x ₂-x₁| + |y₂-y₁|…+|n₂-n₁|. Существует также расстояние шахматной доски, когда вы берете разные измерения и используете наибольшее из них max(|x ₂-x₁|, |y₂-y₁|,|n₂-n₁|).

Эти 3 меры расстояния помогают нам сгруппировать похожие вершины. Расстояние Минковского — это способ измерить все 3.

(∑i=1n|Xi−Yi|p)1/p

Просто изменив значение p в уравнении, вы получите одно из ранее упомянутых расстояний.

Мы разделим кластеризацию на типы, основанные на Centroid и Connectivity. Когда ваш набор данных достаточно мал, вы можете использовать кластеризацию на основе подключения. Здесь вы сравниваете каждую пару векторов в наборе данных на расстояние. Это означает, что каждый столбец в векторе будет сравниваться в смысле евклидова расстояния в многомерном пространстве √(x1-y1)²+(x2-y2)²+(xn-yn)². Связность является итеративной и сравнивает каждую пару строк (пара векторов со всеми соответствующими характеристиками) для расстояния, чтобы найти сходство. Этот процесс займет много времени, что не будет полезно для больших наборов данных. Однако связность построит иерархию: она найдет ближайшие векторы и объединит их в новую группу, и эта новая группа также будет рассматриваться как новая вершина. После этого он найдет вторые ближайшие вершины с новой комбинированной точкой вершины. Он будет делать это на всем пути вниз. Посмотрите на этой странице иерархическую кластерную дендрограмму для иллюстрации.

Centroid более практичен и делит данные на кластеры заранее определенного числа. Одна центроидная методология известна как Кластеризация K-средних. Здесь мы диктуем количество кластеров, и после визуализации данных в EDA мы можем угадать число K, подходящее для данных. Однако мы должны протестировать различные значения, чтобы увидеть, какие преформы лучше всего. Позже мы обсудим, как определить меру производительности. Если вам нужны две группы центроидов, машинное обучение разделит данные на две части и измерит все вершины, чтобы найти расстояние до двух центроидов и каждой вершины. Наименьшее из двух расстояний определяет, в какую группу центроидов входит вершина. Эти центроиды будут созданы случайным образом, и будет рассчитано расстояние между каждой вершиной и центроидами. Более короткое расстояние будет определять, к какому кластеру принадлежит точка (вектор). Теперь у каждого кластера будет значение Сумма квадратов внутри кластера. Мы будем раздражаться из-за разных значений K и посмотрим, что является лучшим, где Алгоритм Ллойда создает k случайных центроидов и вычисляет расстояние между каждым вектором в данных и k центроидами, назначая каждому вектору центроид с наименьшим евклидовым расстоянием . Когда это будет завершено, останется k кластеров с k центроидами в середине. Затем Lloyds переназначит центроиды в середину кластера и повторно запустит вычисления, чтобы убедиться, что каждый вектор находится в правильном кластере, и будет делать это до тех пор, пока ни один вектор не будет переназначен новому кластеру. Значение K должно определяться человеком, который может решить, в какой момент оправдано добавление еще одного кластера (k). Это должно быть сделано визуально так же, как EDA. Вам нужно будет нанести различные значения K на сумму квадратов внутри кластера:

Внутри кластерной суммы квадратов

Одним из измерений является сумма квадратов внутри кластера (WCSS), которая измеряет квадрат среднего расстояния от всех точек в кластере до центра тяжести кластера. Чтобы рассчитать WCSS, вы сначала находите евклидово расстояние (см. рисунок ниже) между заданной точкой и центроидом, которому она назначена. Затем вы повторяете этот процесс для всех точек в кластере, а затем суммируете значения для кластера и делите на количество точек. Наконец, вы вычисляете среднее значение по всем кластерам. Это даст вам средний WCSS. ВЦСС

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

При кластеризации масштабы набора данных будут иметь большое значение. Мы смотрим на фунты или килограммы? Машинное обучение, рассматривающее 200 фунтов против 440 кг, будет иметь разные результаты, поскольку килограммы окажут в 2,2 раза более сильное влияние на набор данных по сравнению с фунтами. Стандартный способ — использовать масштабированную версию данных, чтобы и фунты, и килограммы представляли одинаковую разницу для машины. Z-оценка или мера расстояния от среднего нормализует данные и становится между 0 и 1, указывая, насколько они далеки от среднего (или более или менее, но с точки зрения отклонения от среднего).

Вы также можете использовать стандартный масштабатор для нормализации данных за пределами z-показателя.

Также можно измерить изменчивость внутри ряда или разницу между различными переменными в ряду. Расстояние Махаланобиса — это расстояние в многомерном пространстве, которое может объяснить, как связанные переменные находятся в строке (признаки вершин).

PCA или анализ основных компонентов - это еще один тип обучения без учителя. Здесь мы извлекаем наиболее значимые признаки и уменьшаем шум. Мне нравится думать о PCA как о математическом описании этих данных в чистом виде. Недостатком является то, что это просто цифры, которые будут менее понятны. PCA создает коэффициенты, которые являются линейными и увеличиваются за счет усиления или ослабления векторов (например, 3x или 0,3x). PCA будет принимать собственные значения и извлекать собственные векторы из данных. Они представляют врожденные оси данных, которые описывают данные. В некотором смысле это мера величины по оси X и по оси Y, данные ведут себя. Эти собственные векторы описывают данные и могут использоваться для замены некоторых признаков в более чистой форме. Эти собственные векторы являются основными компонентами данных. Мы можем просто использовать эти чистые числа для представления данных и даже прогнозировать их в режиме контролируемого машинного обучения. Однако это описывается здесь, поскольку мы, по сути, группируем данные в простейшие числовые термины.