- 카테고리:
VECTOR_NORMALIZE¶
L2 벡터 공간에서 :doc:`VECTOR</sql-reference/data-types-vector>`를 정규화하여 해당 요소에 [0,1] 범위의 값을 제공하고 크기 1을 제공합니다.
- 참고 항목:
구문¶
VECTOR_NORMALIZE( <vector> )
인자¶
vector정규화할 단일 VECTOR 값입니다.
반환¶
FLOAT 유형의 값으로 정규화된 VECTOR를 L2 공간에 반환합니다.
사용법 노트¶
입력이 NULL인 경우 NULL을 반환합니다.
벡터 함수는 부동 소수점 전체 자릿수를 줄일 수 있는 방식으로 최적화됩니다. 이 함수의 결과는 오차 범위가 최대 ``1e-4``입니다.
예¶
이 예제에서는 벡터 ``[1, 2, 3]``을 정규화하는 방법을 보여줍니다.
SELECT VECTOR_NORMALIZE([1, 2, 3]::VECTOR(INT, 3));
[0.267261, 0.534522, 0.801784]
이 예에서는 잘린 벡터를 다시 정규화하는 방법을 보여줍니다. 원래 벡터는 snowflake-arctic-embed-m-v1.5 모델을 사용하여 :doc:`EMBED_TEXT_768</user-guide/snowflake-cortex/vector-embeddings>`에서 생성된 후 256개의 요소로 잘립니다. 그런 다음 잘린 벡터가 정규화됩니다.
VECTOR_NORMALIZE(
VECTOR_TRUNCATE(
SNOWFLAKE.CORTEX.EMBED_TEXT_768(
'snowflake-arctic-embed-m-v1.5',
'Analytical databases are typically column-oriented rather than row-oriented'
),
256
)
);