コサイン類似度はl2正規化ユークリッド距離と同一ですか?


27

同一の意味。ベクトルuとベクトルVのセット間の類似度ランキングで同一の結果を生成します。

パラメータとして距離測度(ユークリッド距離、コサイン類似度)および正規化手法(なし、l1、l2)を持つベクトル空間モデルがあります。私の理解では、設定[cosine、none]の結果は[euclidean、l2]と同じか、少なくとも実際には似ているはずですが、そうではありません。

実際には、システムにまだバグがある可能性が十分にあります。または、ベクターに関して重大な問題がありますか?

編集:ベクトルはコーパス内のドキュメントの単語数に基づいていることを忘れていました。クエリドキュメント(ワードカウントベクトルで変換する)が与えられた場合、コーパスから最も類似したドキュメントを見つけたいと思います。

それらのユークリッド距離を計算することは簡単な測定ですが、私が取り組んでいる種類のタスクでは、長さのみが異なるベクトルは依然として等しいと見なされるため、コサイン類似度が類似度インジケータとしてしばしば好まれます。距離/コサインの類似性が最小のドキュメントが最も類似していると見なされます。


それはすべて、これらの距離で「ベクトル空間モデル」が何をするかに依存します。モデルが何をするのか、もっと具体的に教えていただけますか?
— whuber

申し訳ありませんが、自分の頭から抜け出すのが難しい場合があります。仕様を追加しました。
— アルネ

あなたはまだどのモデルも説明しません。実際、「作業の種類(作業)」に関してあなたが残した唯一の手がかりはnlpタグですが、それはあまりにも広すぎてあまり役に立ちません。質問を理解して適切な回答を提供できるように、あなたが提供できることを望んでいます。これは、距離測定の使用方法と「結果」がどのように決まるかを正確に把握するのに十分な情報です。
— whuber

stats.stackexchange.com/a/36158/3277。角度別名sscpタイプの類似性は、対応するユークリッド距離に変換できます。
— ttnphns

回答:


31

ため -normalizedベクトル、 我々はその二乗ユークリッド距離はコサイン距離に比例します、 つまり、データを正規化し、アルゴリズムが距離のスケーリングに対して不変であったとしても、2乗のために違いが予想されます。のx、yの| | x | | 2 = | | y | | 2 = 1 、| | x − y | | 2 2ℓ2x,y

||x||2=||y||2=1,
||x−y||22=(x−y)⊤(x−y)=x⊤x−2x⊤y+y⊤y=2−2x⊤y=2−2cos⁡∠(x,y)

これはランキングに影響しますか?つまり、複数のベクトル「v_i in V」をベクトル「u」までの余弦距離で並べ替えると、特定の順序が得られます。これらの同じベクトルをl_2正規化ユークリッド距離でランク付けすると、同じ順序が生成されますか?
— アルネ

2
iirc、二乗は単項変換(正の数の場合)であるため、長さでソートされたシーケンスの順序を変更できません。
— アルネ

5
あなたがすることは、までの距離でベクトルをランク付けするだけであれば、余弦距離を使用するとユークリッド距離と同じ結果が得られます(正規化ベクトルの場合)。u
— ルーカス

ありがとう、あなたはたまたまこの接続の引用可能なソースを持っていますか?
— アルネ

1
さて、「リニアアレブラI」で十分だと思います;)洞察力をありがとう!
— アルネ

5

標準コサイン類似度は、列ベクトルおよび想定して、ユークリッド空間で次のように定義されます。 ベクトルが単位ノルム(l2)に正規化されている場合、これは標準内積になります。テキストマイニングでは、この種の正規化は前代未聞ではありませんが、標準とは考えません。uv

cos⁡(u,v)=⟨u,v⟩‖u‖⋅‖v‖=uTv‖u‖⋅‖v‖∈[−1,1].
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.