Здравствуйте,

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

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

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

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

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

  • Евклидово расстояние
  • Расстояние до Манхэттена
  • Расстояние Чебышева
  • Расстояние Минковского
  • Расстояние Хэмминга
  • Косинусное сходство
  • Сходство по Жаккару

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

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

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

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

Помните, что если у ваших данных есть функции с разными масштабами, необходимо нормализовать или стандартизировать функции во всех столбцах перед вычислением евклидова расстояния. Если масштабирование объектов не выполняется, большие значения объектов будут преобладать в показателях расстояния.

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

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

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

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

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

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

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

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

Расстояние Минковского

Расстояние Минковского обобщает евклидово и манхэттенское расстояние. Его также называют вектором p-нормы, поскольку он добавляет параметр под названием «p», который позволяет вычислять различные меры расстояния.

Для различных значений p Минковский будет-

  • p = 1, мера расстояния - это мера Манхэттена.
  • p = 2, мера расстояния является евклидовой мерой.
  • p = ∞, мерой расстояния является мера Чебышева

Когда мы реализуем какой-либо алгоритм машинного обучения, который использует Минковского в качестве меры расстояния, мы можем настроить гиперпараметр «p».

Расстояние Хэмминга

Ааа! Расстояние Хэмминга используется, когда у нас есть категориальные атрибуты в наших данных. Расстояние Хэмминга измеряет сходство двух струн, которые должны быть одинаковой длины.

Расстояние Хэмминга в основном определяет, отличаются ли два атрибута или нет. Когда они равны, расстояние Хэмминга равно 0, иначе 1.

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

Следовательно, расстояние Хэмминга между этими двумя строками будет 7. Также следует помнить, что расстояние Хэмминга работает только тогда, когда у нас есть строка одинаковой длины.

Косинусное сходство

Косинусное сходство в основном измеряет сходство между двумя ненулевыми векторами. По сути, это угол косинуса между двумя наиболее похожими векторами.

Большинство похожих векторов будут иметь 0 градусов между ними, следовательно, значение cos 0 равно 1. Более того, векторы, противоположные друг другу, имеют значение -1, то есть cos (180 градусов).

Отсюда следует, что косинусное сходство находится в диапазоне от -1 до 1.

Косинусное расстояние используется, когда мы хотим вычислить расстояние между двумя разреженными векторами. Например, если для автомобилей собрано 1000 атрибутов, и 200 из них являются взаимоисключающими (это означает, что они есть у одной машины, а у других нет), тогда в расчет нужно будет включить только 800 измерений.

Косинусное сходство касается только угла между двумя векторами, а не расстояния между ними.

              cosine distance = 1-cosine similarity

Сходство по Жаккару

В Жаккаре сходство используется для понимания сходства между двумя наборами образцов. Сходство Жаккара подчеркивает, что сходство между двумя конечными наборами образцов, а не векторами, определяется как размер пересечения, деленный на размер объединения наборов образцов. Математически записывается как:

В отличие от косинусного расстояния, расстояние Жаккара рассчитывается как

           Jaccard distance = 1 — jaccard similarity

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

Вывод

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

  • Евклидово расстояние можно использовать, если объекты похожи или если мы хотим найти расстояние между двумя точками данных.
  • Когда у нас большие размеры, предпочтительнее Манхэттен.
  • В случае категориальных признаков используется расстояние Хэмминга.
  • Косинусное сходство используется, когда нас интересует направление векторов, а не величина.

Ссылки

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

Ура!