機械学習やデータマイニングでは、サンプル間の類似度を計算する必要があることが多く、通常の方法はサンプル間の距離を計算することです。この記事では、一般的に使用される距離測定方法をいくつか紹介します。
1. ユークリッド距離
として解釈できる最も一般的なユークリッド距離から始めます连接两个点的线段的长度
。ユークリッド距離の式は非常に単純で、ピタゴラスの定理を使用してこれらの点からの距離を計算します笛卡尔坐标
。
D ( x , y ) = ∑ i = 1 n ( xi − yi ) 2 D(x,y)=\sqrt {\displaystyle \sum^{n}_{i=1}(x_i-y_i)^2}D ( x ,や)=私は= 1∑n( ×私−y私)2な
短所: これは一般的に使用される距離メトリックですが、ユークリッド距離は互換性がありません不是尺度不变
。つまり、計算された距離は に基づいている可能性があります特征的单位发生倾斜
。通常、ユークリッド距離メトリックを使用する前に、データを調整する必要があります归一化处理
。
また、データの次元数が増えるほど、ユークリッド距離の影響は小さくなります。これは维数灾难(curse of dimensionality)
関連しています。
ユースケース: ユークリッド距離は、低次元のデータがあり、ベクトルのサイズが重要な場合に非常にうまく機能します。低次元データでユークリッド距離を使用する場合、K-NN や HDBSCAN などの方法はすぐに使用できます。
2. マンハッタン距離
マンハッタン距離はしばしば や出租车距离
と呼ばれ城市街区距离
、計算に使用されます实值向量之间的距离
。均一なグリッドのチェス盤上のオブジェクトを想像してみてください。オブジェクトが直角にしか移動できない場合、マンハッタン距離は 2 つのベクトル間の距離であり、距離の計算に斜めの動きは含まれません。
D ( x , y ) = ∑ i = 1 k ∣ xi − yi ∣ D(x,y)= \displaystyle \sum^{k}_{i=1}|x_i-y_i|D ( x ,や)=私は= 1∑k∣ ×私−y私∣短所: マンハッタン距離は高次元データで機能するように見えますが、特にで使用すると
、ユークリッド距離よりも高速ですまた、最短経路ではない場合もあるため、ユークリッド距離よりも高い距離値を与えることが可能です。直观性差
高维数据
ユースケース: マンハッタン距離は、データセットに離散属性またはバイナリ属性がある場合にうまく機能するようです。これは、これらの属性の値の間で実際に取ることができるパスが考慮されるためです。例としてユークリッド距離を取ると、2 つのベクトル間に直線ができますが、実際にはこれは不可能です。
三、チェビシェフ距離(Chebyshev Distance)
チェビシェフ距離は、任意の座標次元における 2 つのベクトル間の最大差として定義されます。つまり、軸に沿った最大距離です。チェビシェフ距離は、チェスのキングが 1 つのマスから別のマスに移動する最小手数がチェビシェフ距離に等しいため、しばしばチェス盤距離と呼ばれます。
D ( x , y ) = maxi ( ∣ xi − yi ∣ ) D(x,y)= max_i(|x_i-y_i|)D ( x ,や)=マックス_私( ∣ x私−y私∣ )
欠点: チェビシェフ距離が一般的に使用されるため特定的用例
、ユークリッド距離やコサイン類似度のような一般的な距離尺度として使用することは困難です。したがって、确定适合用例
次の場合にのみ使用してください。
ユースケース: チェビシェフ距離は、ある正方形から別の正方形に移動するために必要な最小移動数を抽出するために使用されます。また、これは無制限の 8 方向移動を許可するゲームでも有効な方法です。実際には、チェビシェフ距離は、クレーンが物体を移動するのにかかる時間に非常に似ているため、倉庫のロジスティクスでよく使用されます。
4.コサイン類似度
コサイン類似度は、高次元のユークリッド距離の問題を打ち消すためによく使用されます。コサイン類似度とは、2 つのベクトル間の角度のコサインを指します。ベクトルがすべて長さ 1 のベクトルになるように正規化されている場合、ベクトルの内積も同じです。
まったく同じ方向の 2 つのベクトルのコサイン類似度は 1 ですが、向かい合っている 2 つのベクトルのコサイン類似度は -1 です。これは方向の尺度であるため、それらのサイズは問題ではないことに注意してください。
D ( x , y ) = cos ( θ ) = x ⋅ y ∣ ∣ x ∣ ∣ y ∣ ∣ D(x,y)=cos(\theta)=\frac{x・y}{||x||y ||}D ( x ,や)=cos ( θ )=∣∣ × ∣∣y∣∣ _ _× ⋅y
短所: コサイン類似度の主な短所は没有考虑向量的大小
whileです只考虑它们的方向
。レコメンデーション システムを例にとると、コサイン類似度は、異なるユーザー間の評価尺度の違いを考慮していません。
ユース ケース: 高次元データ ベクトルのサイズを気にしない場合は、コサイン類似度を使用できます。テキスト分析では、データが単語数で表現されている場合に、この尺度がよく使用されます。たとえば、ある単語が別の文書よりも頻繁に出現する場合、その文書がその単語により関連しているとは限りません。ファイルの長さが不均一であるか、カウントの重要性が低い可能性があります。大きさを無視する余弦類似度を使用する方がよいでしょう。
ここでは、ブロガーが一時的に上記の 4 つの一般的に使用されるものを要約します. 詳細を知りたい場合は、元のテキストを参照できます:データ サイエンスにおける 9 つの距離測定