Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunun için geçerlidir:
Databricks Runtime 18.1 ve üzerini denetleyin
Belirtilen dereceyi kullanarak bir vektörünün Lp normunu hesaplar.
Sözdizimi
vector_norm(vector [, degree ])
Argümanlar
-
vector: Vektöri
ARRAY<FLOAT>temsil eden bir ifade. -
derece: İsteğe bağlı.
FLOATNorm türünü belirten bir değer; varsayılan olarak 2,0 (Öklid normu) olur. Desteklenen değerler:- 1.0 — L1 normu (Manhattan): mutlak değerlerin toplamı
- 2.0 — L2 normu (Öklid): karelerin toplamının kare kökü
-
float('inf')— L∞ (sonsuzluk normu): maksimum mutlak değer
İadeler
FLOAT Vektör normunu temsil eden bir değer. Sonuç negatif değil.
Boş vektörler için 0,0 döndürür. Giriş NULL ise veya içeriyorsa NULLdöndürürNULL.
Notlar
- Yalnızca
ARRAY<FLOAT>desteklenir; veya gibiARRAY<DOUBLE>ARRAY<DECIMAL>diğer türler hata oluşturur. Desteklenmeyendegreebir değer INVALID_VECTOR_NORM_DEGREE yükseltir. - L2 normu yoğun ekleme iş yüklerinde en yaygın olanıdır; L1 seyrek ve olasılıksal uygulamalarda kullanılır; L∞ en kötü durum analizinde kullanılır.
Hata koşulları
Örnekler
-- 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