Sdílet prostřednictvím


vector_l2_distance Funkce

Platí pro:check označený ano Databricks Runtime 18.1 a novější

Vypočítá vzdálenost Euclideanu (L2) mezi dvěma vektory.

Syntaxe

vector_l2_distance(vector1, vector2)

Argumenty

  • vector1: Výraz ARRAY<FLOAT> představující první vektor.
  • vector2: Výraz ARRAY<FLOAT> představující druhý vektor.

Návraty

Hodnota FLOAT představující euklidovou vzdálenost mezi těmito dvěma vektory. Výsledek je nezáporný, kde 0,0 označuje identické vektory.

Vrátí hodnotu 0,0 pro prázdné vektory. Vrátí NULL , pokud je NULL vstup nebo obsahuje NULL.

Poznámky

  • Podporuje se pouze ARRAY<FLOAT> jiné typy, například ARRAY<DOUBLE> nebo ARRAY<DECIMAL> vyvolání chyby.
  • Oba vektory musí mít stejnou dimenzi; jinak funkce vyvolá VECTOR_DIMENSION_MISMATCH.
  • Nižší hodnoty označují větší podobnost (bližší vektory); označuje se také jako euklidová vzdálenost.

Stavy chyb

Příklady

-- Basic L2 distance
> SELECT vector_l2_distance(array(1.0f, 2.0f, 3.0f), array(4.0f, 5.0f, 6.0f));
  5.196152422706632

-- Distance between identical vectors
> SELECT vector_l2_distance(array(1.0f, 2.0f), array(1.0f, 2.0f));
  0.0

-- Classic 3-4-5 triangle
> SELECT vector_l2_distance(array(0.0f, 0.0f), array(3.0f, 4.0f));
  5.0