-
ユークリッド距離: ユークリッド距離は、2つの点間の直線距離を表します。ユークリッド距離は、ベクトルの各要素の差を2乗し、それらの値を足し合わせた後、平方根を取ることで計算されます。
import numpy as np def euclidean_distance(vector1, vector2): squared_diff = np.power(vector1 - vector2, 2) sum_squared_diff = np.sum(squared_diff) distance = np.sqrt(sum_squared_diff) return distance vector1 = np.array([1, 2, 3]) vector2 = np.array([4, 5, 6]) distance = euclidean_distance(vector1, vector2) print(distance)
-
マンハッタン距離: マンハッタン距離は、2つの点間の直角距離を表します。マンハッタン距離は、ベクトルの各要素の差の絶対値を足し合わせることで計算されます。
import numpy as np def manhattan_distance(vector1, vector2): abs_diff = np.abs(vector1 - vector2) distance = np.sum(abs_diff) return distance vector1 = np.array([1, 2, 3]) vector2 = np.array([4, 5, 6]) distance = manhattan_distance(vector1, vector2) print(distance)
-
コサイン類似度: コサイン類似度は、2つのベクトルの方向の類似性を測る方法です。ベクトルの内積をベクトルの大きさの積で割ることで計算されます。
import numpy as np def cosine_similarity(vector1, vector2): dot_product = np.dot(vector1, vector2) norm1 = np.linalg.norm(vector1) norm2 = np.linalg.norm(vector2) similarity = dot_product / (norm1 * norm2) return similarity vector1 = np.array([1, 2, 3]) vector2 = np.array([4, 5, 6]) similarity = cosine_similarity(vector1, vector2) distance = 1 - similarity print(distance)