メインコンテンツまでスキップ
メインコンテンツまでスキップ

Distance Functions

L1Norm

ベクトルの絶対値の合計を計算します。

構文

L1Norm(vector)

エイリアス: normL1.

引数

返される値

クエリ:

SELECT L1Norm((1, 2));

結果:

┌─L1Norm((1, 2))─┐
│              3 │
└────────────────┘

L2Norm

ベクトル値の二乗和の平方根を計算します。

構文

L2Norm(vector)

エイリアス: normL2.

引数

返される値

クエリ:

SELECT L2Norm((1, 2));

結果:

┌───L2Norm((1, 2))─┐
│ 2.23606797749979 │
└──────────────────┘

L2SquaredNorm

ベクトル値の二乗和の平方根([L2Norm](#l2norm)の二乗)を計算します。

構文

L2SquaredNorm(vector)

エイリアス: normL2Squared.

引数

返される値

  • L2ノルムの二乗。 Float.

クエリ:

SELECT L2SquaredNorm((1, 2));

結果:

┌─L2SquaredNorm((1, 2))─┐
│                     5 │
└───────────────────────┘

LinfNorm

ベクトルの絶対値の最大を計算します。

構文

LinfNorm(vector)

エイリアス: normLinf.

引数

返される値

  • Linfノルムまたは最大の絶対値。 Float.

クエリ:

SELECT LinfNorm((1, -2));

結果:

┌─LinfNorm((1, -2))─┐
│                 2 │
└───────────────────┘

LpNorm

ベクトルの絶対値の合計の p 乗根を計算します。

構文

LpNorm(vector, p)

エイリアス: normLp.

引数

  • vectorTuple または Array.
  • p — 指数。可能な値: 実数 [1; inf)UInt または Float.

返される値

クエリ:

SELECT LpNorm((1, -2), 2);

結果:

┌─LpNorm((1, -2), 2)─┐
│   2.23606797749979 │
└────────────────────┘

L1Distance

L1空間内の2つの点の距離(ベクトルの値は座標)を計算します(1ノルム (タクシー幾何学 距離))。

構文

L1Distance(vector1, vector2)

エイリアス: distanceL1.

引数

  • vector1 — 最初のベクトル。 Tuple または Array.
  • vector2 — 2番目のベクトル。 Tuple または Array.

返される値

  • 1ノルム距離。 Float.

クエリ:

SELECT L1Distance((1, 2), (2, 3));

結果:

┌─L1Distance((1, 2), (2, 3))─┐
│                          2 │
└────────────────────────────┘

L2Distance

ユークリッド空間内の2つの点の距離(ベクトルの値は座標)を計算します (ユークリッド距離)。

構文

L2Distance(vector1, vector2)

エイリアス: distanceL2.

引数

  • vector1 — 最初のベクトル。 Tuple または Array.
  • vector2 — 2番目のベクトル。 Tuple または Array.

返される値

  • 2ノルム距離。 Float.

クエリ:

SELECT L2Distance((1, 2), (2, 3));

結果:

┌─L2Distance((1, 2), (2, 3))─┐
│         1.4142135623730951 │
└────────────────────────────┘

L2SquaredDistance

2つのベクトルの対応する要素の差の二乗の合計を計算します。

構文

L2SquaredDistance(vector1, vector2)

エイリアス: distanceL2Squared.

引数

  • vector1 — 最初のベクトル。 Tuple または Array.
  • vector2 — 2番目のベクトル。 Tuple または Array.

返される値

  • 2つのベクトルの対応する要素の差の二乗の合計。 Float.

クエリ:

SELECT L2SquaredDistance([1, 2, 3], [0, 0, 0])

結果:

┌─L2SquaredDistance([1, 2, 3], [0, 0, 0])─┐
│                                      14 │
└─────────────────────────────────────────┘

LinfDistance

L_{inf}空間内の2つの点の距離(ベクトルの値は座標)を計算します (最大ノルム)。

構文

LinfDistance(vector1, vector2)

エイリアス: distanceLinf.

引数

  • vector1 — 最初のベクトル。 Tuple または Array.
  • vector1 — 2番目のベクトル。 Tuple または Array.

返される値

  • 無限ノルム距離。 Float.

クエリ:

SELECT LinfDistance((1, 2), (2, 3));

結果:

┌─LinfDistance((1, 2), (2, 3))─┐
│                            1 │
└──────────────────────────────┘

LpDistance

Lp空間内の2つの点の距離(ベクトルの値は座標)を計算します (p-norm距離)。

構文

LpDistance(vector1, vector2, p)

エイリアス: distanceLp.

引数

  • vector1 — 最初のベクトル。 Tuple または Array.
  • vector2 — 2番目のベクトル。 Tuple または Array.
  • p — 指数。可能な値: 実数 [1; inf)UInt または Float.

返される値

  • pノルム距離。 Float.

クエリ:

SELECT LpDistance((1, 2), (2, 3), 3);

結果:

┌─LpDistance((1, 2), (2, 3), 3)─┐
│            1.2599210498948732 │
└───────────────────────────────┘

L1Normalize

与えられたベクトルの単位ベクトルを計算します(タプルの値は座標) L1 空間内の タクシー幾何学

構文

L1Normalize(tuple)

エイリアス: normalizeL1.

引数

返される値

クエリ:

SELECT L1Normalize((1, 2));

結果:

┌─L1Normalize((1, 2))─────────────────────┐
│ (0.3333333333333333,0.6666666666666666) │
└─────────────────────────────────────────┘

L2Normalize

与えられたベクトルの単位ベクトルを計算します(タプルの値は座標)ユークリッド空間内で (ユークリッド距離 を使用)。

構文

L2Normalize(tuple)

エイリアス: normalizeL1.

引数

返される値

クエリ:

SELECT L2Normalize((3, 4));

結果:

┌─L2Normalize((3, 4))─┐
│ (0.6,0.8)           │
└─────────────────────┘

LinfNormalize

与えられたベクトルの単位ベクトルを計算します(タプルの値は座標) L_{inf} 空間内で (最大ノルム を使用)。

構文

LinfNormalize(tuple)

エイリアス: normalizeLinf .

引数

返される値

クエリ:

SELECT LinfNormalize((3, 4));

結果:

┌─LinfNormalize((3, 4))─┐
│ (0.75,1)              │
└───────────────────────┘

LpNormalize

与えられたベクトルの単位ベクトルを計算します(タプルの値は座標) Lp 空間内で (p-norm を使用)。

構文

LpNormalize(tuple, p)

エイリアス: normalizeLp .

引数

  • tupleTuple.
  • p — 指数。可能な値: [1;inf) の任意の数字。 UInt または Float.

返される値

クエリ:

SELECT LpNormalize((3, 4),5);

結果:

┌─LpNormalize((3, 4), 5)──────────────────┐
│ (0.7187302630182624,0.9583070173576831) │
└─────────────────────────────────────────┘

cosineDistance

2つのベクトル間のコサイン距離を計算します(タプルの値は座標)。返される値が小さいほど、ベクトルはより類似しています。

構文

cosineDistance(vector1, vector2)

引数

  • vector1 — 最初のタプル。 Tuple または Array.
  • vector2 — 2番目のタプル。 Tuple または Array.

返される値

  • 2つのベクトルの間の角度のコサインから1を引いた値。 Float.

クエリ:

SELECT cosineDistance((1, 2), (2, 3));

結果:

┌─cosineDistance((1, 2), (2, 3))─┐
│           0.007722123286332261 │
└────────────────────────────────┘