コサイン類似度
Cosine Similarity
2つのデータや文章の向きの近さで似ている度合いを表す指標。
簡単に説明すると
コサイン類似度っていうのは、あらかじめベクトル(数値の並び)に変換されたデータ同士を、その向きがどれくらい同じ方向を向いているかで比べる計算方法のことなんだ。文章や商品のデータをベクトルに変換するのは埋め込みモデルなど別の技術の役目で、コサイン類似度はできあがったベクトルの向きを比べる部分だけを担っているんだよ。 データの大きさや長さに左右されず、向きの一致度だけを比べられる特徴があるよ。 AIの文章検索やレコメンド機能では、文章や商品をベクトル化したうえでこの計算方法を使い、向きが近いベクトルを探すことで似た文章や関連する商品を見つけ出しているんだよ。
名前のヒミツ
コサイン類似度は、数学の三角関数「コサイン」と似ている度合いを表す「類似度」を組み合わせた言葉だよ。コサインが角度に応じて1から-1までの値をとる性質を利用して、2つのデータの向きがどれくらい一致しているかを調べることから名付けられたんだ。英語ではCosine Similarityと呼ばれるよ。
くわしく見てみよう!
コサイン類似度とは、あらかじめ数値の並び(ベクトル)に変換されたデータについて、その矢印の向きの角度を使って似ている度合いを数値で表す指標のことなんだよ。データの大きさに影響されず、2つの矢印が向いている方向の近さだけを角度で評価するんだ。
角度がぴったり重なれば1、直角なら0、真反対なら-1という範囲で結果が出るよ。
イメージとしては、2つの文章に含まれる単語の出現パターンをベクトルにして比べる場面を考えると分かりやすいよ。この場合は語彙の重なりを見ているため、文章全体の長短に関わらず使われている単語の割合が似ていれば矢印の向きが揃って、1に近い値になるんだ。
ざっくり言うと、データの量の差を無視して、データの向きがどれくらい一致しているかだけを判定できるのが特徴なんだよ。
この指標は、自然言語処理やデータ分析など多様なシステムで活用されているよ。
例えば、意味が近いウェブページを探し出すような用途では、単語の数え上げではなくAIモデルが文章の意味を数値化した「埋め込みベクトル」を使い、その角度をコサイン類似度で測ることで関連する情報を探しているんだ。