0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

コサイン類似度とは?計算式の意味を内積・ベクトルの角度から改めて理解する【LLM・RAG】

0
Last updated at Posted at 2026-10-11

コサイン類似度の式

$$
\cos\theta = \frac{\mathbf{A}\cdot\mathbf{B}}{|\mathbf{A}|,|\mathbf{B}|} = \frac{\sum_{i=1}^{n} A_i B_i}{\sqrt{\sum_{i=1}^{n} A_i^2};\sqrt{\sum_{i=1}^{n} B_i^2}}
$$

式の意味を理解する

分子の理解

分子はベクトルの内積であり、以下2通りの書き方があります。

①成分で計算する方法(式で使っている形)

$$\mathbf{A}\cdot\mathbf{B} = A_1B_1 + A_2B_2 + \cdots + A_nB_n$$

②長さと角度で計算する方法(幾何学的な形)

$$\mathbf{A}\cdot\mathbf{B} = |\mathbf{A}|,|\mathbf{B}|\cos\theta$$

そして②は、次のように括弧をつけて読むと意味がわかります。

$$\mathbf{A}\cdot\mathbf{B} = |\mathbf{A}| \cdot (|\mathbf{B}|\cos\theta)$$

$|\mathbf{B}|\cos\theta$ は、BをAの方向に落とした「影」の長さです。
つまり内積は 「Aの長さ × Bの影の長さ」 であり、2つのベクトルがどれだけ同じ方向に伸びているかを、長さ込みで測った量です。

image.png

角度ごとの $\cos\theta$ の値は次のとおりです。

  • 同じ方向を向いている → $\cos 0^\circ = 1$(影がBの長さそのまま)
  • 直角に交わる → $\cos 90^\circ = 0$(影が消える)
  • 真逆を向いている → $\cos 180^\circ = -1$(影がAと逆向き)

①と②が同じ値になる理由

①は座標の掛け算と足し算だけで計算でき、角度は不要です。
②は角度と長さを使います。この2つが一致することは、余弦定理から示せます(本記事では省略します)。

この一致のおかげで、座標さえわかれば、角度を測らなくても「影の量」を計算できます。

分母の理解

内積は長さに依存します。Bを10倍にすると、方向が同じでも内積は10倍になります。
そこで $|\mathbf{A}|,|\mathbf{B}|$ で割って、長さの影響を取り除きます(正規化)。

具体例で考えます。文章を単語の出現回数でベクトル化したとします。

  • 文書A:「車」3回、「エンジン」2回
  • 文書B:「車」30回、「エンジン」20回

Bは長い文書で、全体の回数がAの10倍です。ユークリッド距離で測ると「大きく離れている」ことになります。しかしコサイン類似度では、単語の比率が同じなので類似度は1になります。

「内容の構成比が同じか」 を見たいときに、文書の長さに左右されないのが最大の利点です。

※出現回数そのものに意味がある場合は、コサイン類似度は適さないことがあります。

図で見る理解

  1. Bの長さを変えてみる
    長さを変えても角度は変化しないため、コサイン類似度は変わらないです。

image.png

  1. 角度だけを動かしてみる
    これがコサイン類似度そのものの値であり、変化します。

image.png

cosθが意味を持つ理由

$$
\cos\theta = \frac{\text{底辺(角θに接する辺)}}{\text{斜辺}}
$$

図の黄色い線(BをAの方向に落とした影)を、斜辺(B自体の長さ)で割った値がcosθです。
つまりcosθは、「Bの長さのうち、Aの方向を向いている部分が何割か」 を表します。
Bの長さが変わっても、この割合は変わりません。これがコサイン類似度が長さに依存しない理由です。

image.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?