@@ -23,7 +23,7 @@ CREATE FUNCTION gds.vector.distance(list<double> list1, list<double> list2, stri
23
23
string metric:
24
24
The distance metric to use. Supported metrics are:
25
25
"cosine": Cosine distance
26
- "euclidean ": Euclidean distance
26
+ "l2 ": Euclidean distance
27
27
"ip": Inner product (dot product)
28
28
Returns:
29
29
float:
@@ -41,7 +41,7 @@ CREATE FUNCTION gds.vector.distance(list<double> list1, list<double> list2, stri
41
41
Metric Handling:
42
42
Cosine Distance:
43
43
Calculated as 1 - (inner product of vectors) / (product of magnitudes).
44
- Euclidean Distance:
44
+ L2 Distance:
45
45
Computes the square root of the sum of squared differences between corresponding elements.
46
46
Inner Product:
47
47
Directly computes the dot product of the two vectors.
@@ -69,15 +69,15 @@ CREATE FUNCTION gds.vector.distance(list<double> list1, list<double> list2, stri
69
69
CASE lower(metric)
70
70
WHEN "cosine" THEN
71
71
@@myResult = 1 - inner_product(@@myList1, @@myList2) / (sqrt(inner_product(@@myList1, @@myList1)) * sqrt(inner_product(@@myList2, @@myList2)));
72
- WHEN "euclidean " THEN
72
+ WHEN "l2 " THEN
73
73
FOREACH i IN [0, @@myList1.size() - 1 ] DO
74
74
@@sqrSum += (@@myList1.get(i) - @@myList2.get(i)) * (@@myList1.get(i) - @@myList2.get(i));
75
75
END;
76
76
@@myResult = sqrt(@@sqrSum);
77
77
WHEN "ip" THEN
78
78
@@myResult = inner_product(@@myList1, @@myList2);
79
79
ELSE
80
- RAISE invalid_metric_type ("Invalid metric algorithm provided, currently supported: cosine, euclidean and ip.");
80
+ RAISE invalid_metric_type ("Invalid metric algorithm provided, currently supported: cosine, l2 and ip.");
81
81
END
82
82
;
83
83
0 commit comments