— Oye bhai, kitna dur hein? «Areh bas 5 min aur»; Индия — единственная страна, где расстояние измеряется временем. В случае машинного обучения существуют различные типы, в которых измеряется расстояние, и в этой статье я выделю эти различные типы расстояний в машинном обучении.

Однажды я планировал пойти на бранч с моей лучшей подругой в ресторан, но она сказала, что это далеко от ее дома, потому что это было в 5 км. Для меня ресторан был далеко от дома, потому что до него было 11 км, а для нее 5 км было очень далеко. Итак, я начал думать о том, насколько сложной была концепция расстояния, если рассматривать ее субъективно. Даже когда-то близкое и далекое зависит от точки зрения.

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

В машинном обучении используются следующие типы расстояний:

  1. Евклидово расстояние
  2. Манхэттенское расстояние
  3. Расстояние Минковского
  4. Расстояние Хэмминга
  5. Косинусное сходство

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

Всякий раз, когда мы сталкиваемся со словом «расстояние», первое, что приходит нам на ум, — это кратчайшее расстояние, то есть прямая линия. Итак, евклидово расстояние между двумя точками — это длина прямой линии, соединяющей эти две точки. Например, если нам нужно найти евклидово расстояние между точкой A с координатой (x1, y1) и точкой B с координатой (x2, y2), то расстояние можно рассчитать, используя эту теорему из наших занятий по математике, Теорема Пифагора.

По теореме Пифагора,

Теперь мы знаем AC=(x2 — x1) и BC=(y2 — y1), поэтому получается,

где x и y — два вектора.

Евклидово расстояние также известно как L2-Норма. Это наиболее часто используемое расстояние для машинного обучения, особенно когда данные непрерывны. Но что, если мы не можем провести прямую линию, соединяющую две точки? В этих случаях нам нужно использовать разные функции расстояния.

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

Приведенная выше диаграмма представляет собой географическое представление местоположения. Если вы хотите добраться из пункта А в пункт Б, вы не можете идти напрямую по прямой линии, соединяющей А и В (зеленая линия), вам нужно следовать по дорогам к А из В (синяя линия), расстояние между А и B будет рассчитываться как общее расстояние, пройденное вами по дорогам.

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

Манхэттенское расстояние между A и B будет не чем иным, как (AC+BC),

AB=AC+BC

⇒AB=(x2 — x1)+(y2 — y1)

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

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

Чтобы понять расстояние Минковского, сначала вам нужно знать несколько вещей. Они есть:

  1. векторное пространство – это набор объектов, называемых векторами, которые можно складывать и умножать на числа (также называемые скалярами).
  2. норма – это функция, которая присваивает строго положительную длину каждому вектору в векторном пространстве (единственным исключением является нулевой вектор, длина которого равна нулю). Обычно он представляется как ∥x∥.
  3. Нормированное векторное пространство – это векторное пространство над действительными или комплексными числами, для которого определена норма.

Итак, теперь, когда вы знаете эти вещи, мы можем определить расстояние Минковского как метрику подобия между двумя точками в нормированном векторном пространстве (N-мерное реальное пространство). Оно также представляет собой обобщенную метрику, которая включает евклидовои манхэттенское расстояние.

Расстояние Минковского между двумя точками A(x1, y1) и B(x2, y2) можно записать как

Здесь, если λ = 1, мы имеем манхэттенское расстояние, а если λ = 2, мы находимся в присутствии евклидова расстояния.

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

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

Расстояние Хэмминга между двумя строками a и b обозначается как d(a,b). количество единиц в результирующей строке

Предположим, есть две строки 1101 1001 и 1001 1101.

11011001 ⊕ 10011101 = 01000100. Поскольку это число содержит две единицы, расстояние Хэмминга d(11011001, 10011101) = 2.

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

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

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

На приведенной выше диаграмме, чтобы выяснить, насколько похожи эти две точки, A(x1, y1) и B(x2, y2), нам нужно найти угол между двумя векторами A и B. Таким образом, формула для косинусное сходство равно

то есть скалярное произведение векторов A и B, где A и B — векторы, ∥ A∥ и ∥ B∥ — норма A и B, а cosθ — косинус угла между A и B.

Когда нас интересует ориентация, а не величина векторов, мы можем использовать косинусное сходство. Если ориентация двух векторов находится в одном направлении, то косинусное сходство равно 1, а если два вектора ориентированы точно в противоположных направлениях, то косинусное сходство равно -1. Более того, если два вектора перпендикулярны друг другу, то косинусное сходство равно 0.

Вывод

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