Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
fungsi
Berlaku untuk:
Databricks Runtime 18.1 ke atas
Menghitung norma Lp dari vektor menggunakan derajat yang ditentukan.
Sintaksis
vector_norm(vector [, degree ])
Argumen
-
vektor: Ekspresi
ARRAY<FLOAT>yang mewakili vektor. -
derajat: Opsional.
FLOATNilai yang menentukan jenis norma; default ke 2.0 (norma Euclidean). Nilai yang didukung:- 1.0 — Norma L1 (Manhattan): jumlah nilai absolut
- 2.0 — Norma L2 (Euclidean): akar kuadrat dari jumlah kuadrat
-
float('inf')— L∞ (norma tak terbatas): nilai absolut maksimum
Pengembalian Barang
Nilai FLOAT yang mewakili norma vektor. Hasilnya tidak negatif.
Mengembalikan 0,0 untuk vektor kosong. Mengembalikan NULL jika input adalah NULL atau berisi NULL.
Catatan
- Hanya
ARRAY<FLOAT>didukung; jenis lain sepertiARRAY<DOUBLE>atauARRAY<DECIMAL>menimbulkan kesalahan. Nilai yang tidak didukungdegreemenimbulkan INVALID_VECTOR_NORM_DEGREE. - Norma L2 adalah yang paling umum dalam beban kerja penyematan padat; L1 digunakan dalam aplikasi yang jarang dan probabilistik; L∞ digunakan dalam analisis terburuk.
Kondisi kesalahan
Examples
-- L2 norm (Euclidean) - classic 3-4-5 triangle
> SELECT vector_norm(array(3.0f, 4.0f), 2.0f);
5.0
-- L1 norm (Manhattan)
> SELECT vector_norm(array(3.0f, 4.0f), 1.0f);
7.0
-- L∞ norm (infinity)
> SELECT vector_norm(array(3.0f, 4.0f), float('inf'));
4.0
-- Empty vector returns 0.0
> SELECT vector_norm(array(), 2.0);
0.0