Функции расстояния
L1Distance
Впервые появилась в версии v21.11.
Вычисляет расстояние между двумя точками (элементы векторов выступают в роли координат) в пространстве L1 (норма 1, расстояние в таксомоторной геометрии).
Синтаксис
Псевдонимы: distanceL1
Аргументы
Возвращаемое значение
Возвращает расстояние в норме L1. UInt32 или Float64
Примеры
Базовое использование
L1Norm
Появилась в версии: v21.11
Вычисляет сумму модулей элементов вектора.
Синтаксис
Псевдонимы: normL1
Аргументы
Возвращаемое значение
Возвращает L1-норму или расстояние в таксомоторной геометрии. UInt* или Float* или Decimal
Примеры
Базовое использование
L1Normalize
Введена в версии: v21.11
Вычисляет единичный вектор заданного вектора (элементы tuple являются координатами) в пространстве L1 (таксомоторная метрика).
Синтаксис
Псевдонимы: normalizeL1
Аргументы
tuple— кортеж числовых значений.Tuple(T)
Возвращаемое значение
Возвращает единичный вектор. Tuple(Float64)
Примеры
Базовое использование
L2Distance
Добавлена в версии v21.11.
Вычисляет расстояние между двумя точками (элементы векторов — их координаты) в евклидовом пространстве (евклидово расстояние).
Синтаксис
Псевдонимы: distanceL2
Аргументы
Возвращаемое значение
Возвращает расстояние в 2-й норме. Float64
Примеры
Базовое использование
L2DistanceTransposed
Добавлена в версии v25.10
Вычисляет приблизительное расстояние между двумя точками (значения векторов рассматриваются как координаты) в евклидовом пространстве (евклидово расстояние).
Синтаксис
Псевдонимы: distanceL2Transposed
Аргументы
vectors— Векторы.QBit(T, UInt64)reference— Опорный вектор.Array(T)p— Количество бит из каждого элемента вектора, используемых при вычислении расстояния (от 1 до разрядности элемента). Уровень квантования определяет компромисс между точностью и скоростью. Использование меньшего числа бит приводит к более быстрому вводy-выводу и вычислениям с пониженной точностью, тогда как использование большего числа бит повышает точность ценой производительности.UInt
Возвращаемое значение
Возвращает приближённое расстояние в 2-норме. Float64
Примеры
Базовое использование
L2Norm
Впервые появилось в версии v21.11
Вычисляет квадратный корень из суммы квадратов элементов вектора.
Синтаксис
Псевдонимы: normL2
Аргументы
Возвращаемое значение
Возвращает норму L2 или евклидово расстояние. UInt* или Float*
Примеры
Базовое использование
L2Normalize
Впервые представлена в: v21.11
Вычисляет единичный (нормированный) вектор, соответствующий заданному вектору (элементы кортежа являются координатами) в евклидовом пространстве (с использованием евклидова расстояния).
Синтаксис
Псевдонимы: normalizeL2
Аргументы
tuple— кортеж числовых значений.Tuple(T)
Возвращаемое значение
Возвращает единичный вектор. Tuple(Float64)
Примеры
Базовое использование
L2SquaredDistance
Введена в версии: v22.7
Вычисляет сумму квадратов разностей соответствующих элементов двух векторов.
Синтаксис
Псевдонимы: distanceL2Squared
Аргументы
Возвращаемое значение
Возвращает сумму квадратов разностей между соответствующими элементами двух векторов. Float64
Примеры
Базовое использование
L2SquaredNorm
Введена в версии: v22.7
Вычисляет квадрат L2-нормы, то есть сумму квадратов элементов вектора (квадрат L2Norm).
Синтаксис
Псевдонимы: normL2Squared
Аргументы
Возвращаемое значение
Возвращает квадрат L2-нормы. UInt* или Float* или Decimal
Примеры
Базовое использование
LinfDistance
Добавлена в версии: v21.11
Вычисляет расстояние между двумя точками (координатами служат элементы векторов) в пространстве L_{inf} (максимальная норма).
Синтаксис
Псевдонимы: distanceLinf
Аргументы
Возвращаемое значение
Возвращает расстояние в норме L∞. Float64
Примеры
Базовое использование
LinfNorm
Появилось в версии: v21.11
Вычисляет максимальное по модулю значение среди элементов вектора.
Синтаксис
Псевдонимы: normLinf
Аргументы
Возвращаемое значение
Возвращает норму Linf или максимальное по модулю значение. Float64
Примеры
Базовое использование
LinfNormalize
Добавлено в версии v21.11
Вычисляет единичный вектор для заданного вектора (элементы кортежа являются координатами) в пространстве L_{inf} (с использованием максимальной нормы).
Синтаксис
Псевдонимы: normalizeLinf
Аргументы
tuple— кортеж числовых значений.Tuple(T)
Возвращаемое значение
Возвращает единичный вектор. Tuple(Float64)
Примеры
Базовое использование
LpDistance
Введена в версии v21.11
Вычисляет расстояние между двумя точками (элементы векторов являются их координатами) в пространстве Lp (расстояние в p-норме).
Синтаксис
Псевдонимы: distanceLp
Аргументы
vector1— первый вектор.Tuple(T)илиArray(T)vector2— второй вектор.Tuple(T)илиArray(T)p— показатель степени. Возможные значения: действительное число из интервала[1; inf).UInt*илиFloat*
Возвращаемое значение
Возвращает расстояние в p-норме. Float64
Примеры
Базовое использование
LpNorm
Впервые представлен в: v21.11
Вычисляет p-норму вектора, то есть p-й корень из суммы p-х степеней модулей его элементов.
Особые случаи:
- При p=1 эквивалентно L1Norm (манхэттенское расстояние).
- При p=2 эквивалентно L2Norm (евклидово расстояние).
- При p=∞ эквивалентно LinfNorm (максимальная норма).
Синтаксис
Псевдонимы: normLp
Аргументы
vector— Вектор или кортеж числовых значений.Tuple(T)или массивArray(T)p— Показатель степени. Возможные значения — действительные числа в диапазоне[1; inf).UInt*илиFloat*
Возвращаемое значение
Примеры
Базовое использование
LpNormalize
Введено в версии: v21.11
Вычисляет единичный вектор заданного вектора (элементы кортежа являются координатами) в пространстве Lp (с использованием p-нормы).
Синтаксис
Псевдонимы: normalizeLp
Аргументы
tuple— кортеж числовых значений.Tuple(T)p— степень. Возможные значения — любое число в диапазоне[1; inf).UInt*илиFloat*
Возвращаемое значение
Возвращает единичный вектор. Tuple(Float64)
Примеры
Пример использования
cosineDistance
Появилась в версии: v1.1
Вычисляет косинусное расстояние между двумя векторами (элементы кортежей являются их координатами). Чем меньше возвращаемое значение, тем более похожи друг на друга векторы.
Синтаксис
Аргументы
Возвращаемое значение
Возвращает значение, равное единице минус косинус угла между двумя векторами. Float64
Примеры
Базовое использование
cosineDistanceTransposed
Введена в версии: v26.1
Вычисляет приближённое косинусное расстояние между двумя точками (значения векторов рассматриваются как координаты). Чем меньше возвращаемое значение, тем более похожи векторы.
Синтаксис
Псевдонимы: distanceCosineTransposed
Аргументы
vectors— Векторы.QBit(T, UInt64)reference— Опорный вектор.Array(T)p— Количество бит из каждого элемента вектора, используемых при вычислении расстояния (от 1 до разрядности элемента). Уровень квантования задаёт компромисс между точностью и скоростью. Использование меньшего числа бит приводит к более быстрому вводу-выводу и вычислениям с пониженной точностью, а использование большего числа бит повышает точность за счёт производительности.UInt
Возвращаемое значение
Возвращает величину, равную единице минус приближённый косинус угла между двумя векторами. Float64
Примеры
Базовое использование