Разберитесь, как вычисляется расстояние ближайшего соседа математически!

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

Эта статья является продолжением ранее написанной Части 1 по K-NN. Если вы не читали его, прочтите его и вернитесь.



Объяснение K-ближайшего соседа - Часть 1
Наука, лежащая в основе алгоритма KNN! medium.com



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

Это метод измерения расстояния, позволяющий найти расстояние между двумя точками в пространстве путем прямого соединения их встык. Давайте посмотрим, что у нас есть двухмерная плоскость, как показано на рисунке ниже, с точками p (p1, p2) и q (q1, q2) на плоскости. Теперь нам нужно найти расстояние между этими точками, поэтому мы используем теорему Пифагора для вычисления расстояния между двумя точками, которое является не чем иным, как евклидовым расстоянием.

У нас есть вектор с двумя измерениями для точек p (p1, p2) и q (q1, q2), поэтому расстояние рассчитывается по формуле,

Теперь аналогичным образом применим к трехмерным векторам с координатами p (p1, p2, p3) и q (q1, q2, q3).

Итак, если у нас есть n-мерный вектор в пространстве (который мы не можем визуализировать напрямую), то, следуя той же схеме, мы получим расстояние, вычисленное между двумя точками, как,

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

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

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

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

Манхэттенское расстояние можно рассчитать, используя концепцию L1 Norm, где p (p1, p2,…, pn) и q (q1, q2,…, qn) являются n-мерные векторы.

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

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

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

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

«Расстояние Хэмминга работает только тогда, когда у нас есть обе струны одинаковой длины».

Например, расстояние между «karolin» и «kathrin» равно 3, потому что символы в позициях 3, 4 и 5 первой строки различаются для второй строки. что увеличивает значение расстояния на 1.

Косинусное расстояние или косинусное подобие

Косинусное подобие - это угловое расстояние, измеренное между двумя векторами X1 и X2, что означает cos угла между X1 и X2. Чем меньше угол, тем выше его cos (угол) и, следовательно, выше его косинусное сходство.

«Косинусное подобие говорит о направленном сходстве между двумя векторами»

Например, два вектора с углом 0 ° имеют cos (0 °) = 1, что является наибольшим сходством, тогда как вектор с углом 90 ° дает cos (90 °) = 0, что дает сходство между векторами '0'. Кроме того, когда угол между двумя векторами составляет 180 °, сходство становится даже «-1».

Учитывая два вектора X1 и X2, их Cos-Sim можно вычислить как

Еще статьи о Data Science от Парас Варшней:







Возможности« нормального распределения
Понимание науки, лежащей в основе колоколообразной кривой! medium.com»



Следуйте за мной на Medium, чтобы увидеть больше статей, связанных с наукой о данных и машинным обучением. Хочешь купить мне кофе? Свяжитесь со мной в LinkedIn.

Спасибо!