카테고리:

벡터 유사성 함수

VECTOR_L2_DISTANCE

벡터 사이의 L2 거리를 계산합니다.

유클리드 거리라고도 하는 L2 거리는 벡터 공간에서 두 벡터 사이의 거리를 측정한 값입니다. 거리는 벡터 요소의 제곱 차이의 합의 제곱근을 구하여 계산합니다. 거리는 0 이상의 값이 될 수 있습니다. 거리가 0이면 벡터는 동일합니다. 거리가 클수록 벡터 사이의 간격도 넓어집니다.

참고 항목:

VECTOR_INNER_PRODUCT , VECTOR_COSINE_SIMILARITY , 벡터 임베딩

구문

VECTOR_L2_DISTANCE( <vector>, <vector> )
Copy

인자

vector

거리 계산을 시작할 VECTOR 값입니다.

vector

거리 계산을 종료할 VECTOR 값입니다.

반환

두 입력 벡터 사이의 거리를 FLOAT 값으로 반환합니다.

사용법 노트

  • 벡터 비교 함수의 계산 최적화로 인해 부동소수점 오차가 평소보다 약간 더 클 수 있습니다(예: 약 1e-4).

이 예제에서는 VECTOR_L2_DISTANCE 함수를 사용하여 테이블에서 열 ab 사이에 가장 가까운 벡터를 결정합니다.

CREATE TABLE vectors (a VECTOR(FLOAT, 3), b VECTOR(FLOAT, 3));
INSERT INTO vectors SELECT [1.1,2.2,3]::VECTOR(FLOAT,3), [1,1,1]::VECTOR(FLOAT,3);
INSERT INTO vectors SELECT [1,2.2,3]::VECTOR(FLOAT,3), [4,6,8]::VECTOR(FLOAT,3);

-- Compute the pairwise inner product between columns a and b
SELECT VECTOR_L2_DISTANCE(a, b) FROM vectors;
Copy
+------+
| 2.3  |
|------|
| 6.95 |
+------+