ベクトル間のユークリッド距離とは?
ユークリッド距離とは、n次元空間における2点(またはベクトル)間を結ぶ最短の「直線距離」のことです。いわば「鳥が飛ぶ最短ルート」のような距離で、ピタゴラスの定理を任意の次元へ拡張したものといえます。幾何学はもちろん、機械学習やクラスタリング、データサイエンスなど幅広い分野で最もよく使われる距離尺度のひとつです。
この計算ツールの使い方
ベクトルAとベクトルBの各成分を、カンマ区切りの数値で入力してください。たとえば 1, 2, 3 と 4, 6, 8 のように入力します。2つのベクトルは成分の数(次元数)をそろえるのが基本です。もし数が異なる場合は、短いほうに合わせて先頭から重なる成分のみを比較します。「計算する」をクリックすると、距離・比較した次元数・差の二乗和が表示されます。
計算式の解説
距離は次の式で求めます。$$d = \sqrt{\sum_{i=1}^{n}\left(\text{A}_i - \text{B}_i\right)^{2}}$$対応する成分どうしの差をとり、その値を二乗します(二乗することで、負の差とプラスの差が打ち消し合わないようにします)。すべての二乗値を合計し、最後にその合計の平方根をとります。平方根をとることで、もとの測定スケールに戻すことができます。
計算例
\(A = (1, 2, 3)\)、\(B = (4, 6, 8)\) としてみましょう。各成分の差は \(-3\)、\(-4\)、\(-5\) です。これらを二乗すると \(9\)、\(16\)、\(25\) となり、合計は \(50\) です。$$\sqrt{50} \approx 7.0711$$これが2つのベクトル間のユークリッド距離です。
よくある質問
ベクトルの長さ(次元数)が違う場合はどうなりますか? 距離が明確に定義できるのは、長さが等しいベクトルどうしの場合だけです。このツールでは、短いほうのベクトルの長さまでの先頭成分のみを比較します。
2次元や3次元の座標にも使えますか? 使えます。2次元の点なら数値を2つ、3次元の点なら3つ入力してください。同じ式がそのまま適用されます。
マンハッタン距離とは何が違うのですか? マンハッタン距離は、各成分の差の絶対値(\(|\text{A}_i - \text{B}_i|\))を合計するだけで、二乗も平方根もとりません。直線距離ではなく、軸に沿って進む距離(碁盤の目状の道を進むイメージ)を表します。