コサイン類似度
Cosine Similarity/こさいんるいじど
ひとことで言うと
2つのベクトルの向きの近さで、意味の似ている度合いを-1〜1の数字で表す指標です。
📖 もうちょい詳しく
何が新しいの?
文章や単語の「意味」を、AIはベクトルという数字の並びに変換して扱います。このベクトル同士がどれくらい似ているかを測る、定番のものさしがコサイン類似度です。AI検索やチャットボットが「似た意味の文」を探すとき、その裏でよく使われています。
どうやって動いてるの?
2つのベクトルを矢印だと思ってください。コサイン類似度は、その矢印が向いている「向き」がどれだけ近いかを計算します。向きがぴったり同じなら 1、まったく逆向きなら -1、直角なら 0 になります。矢印の長さ(数字の大きさ)は無視して、向きだけを見るのが特徴です。
何ができるの?
たとえば「自転車の修理方法」という質問に近い文章を、大量の資料の中から探し出せます。質問と各文章をベクトルにして、コサイン類似度が高い順に並べるだけです。AIに社内文書を読ませて答えさせる仕組み(RAG)でも、関連資料を選ぶ中心の計算として働きます。
🌱 身近なたとえ
方位磁針で例えると分かりやすいです。2人がそれぞれ磁針を持っていて、針が同じ方角を指していれば「考えが近い」、正反対なら「真逆」と判断します。このとき、針の長さや人の身長は関係ありません。向いている方角だけを比べる、それがコサイン類似度の考え方です。
✅ まず覚えるポイント
- 2つのベクトルの「向きの近さ」で意味の似具合を測る指標です
- 値は -1 から 1 までで、1に近いほど意味が似ています
- ベクトルの「長さ」は無視し、「向き」だけを見ます
- セマンティック検索や RAG の中心となる計算です
- 文章・単語・画像など、ベクトルにできるものなら何でも比べられます
🧭 よくある勘違い
値が大きいほど距離が近いということ?
距離ではなく「向きの近さ」です。コサイン類似度は矢印の角度に注目するので、長さ(大きさ)が違っても向きが同じなら高い値になります。「近い・遠い」という距離の感覚とは別ものだと考えると混乱しません。
1に近ければ必ず正解の文ということ?
値が高いのは「向きが似ている」だけで、答えとして正しいかは別の話です。元のベクトルがうまく意味をとらえていなければ、似て見えても的外れなこともあります。あくまで候補を絞る目安として使われることが多いです。
🧩 関連して覚えると楽な言葉
- エンベディング(embedding): 文章や単語を意味を持った数字の並び(ベクトル)に変える技術
- ベクトルデータベース(vector database): ベクトルをためて、似たものを高速に探せる保存場所
- RAG: 関連資料を検索してからAIに答えさせる仕組み。資料選びでこの指標を使う
- セマンティック検索(semantic search): 言葉の表記ではなく意味の近さで探す検索のやり方
🏁 ひとことでまとめ
2つのデータを矢印に見立てて、向きがどれだけそろっているかを数字にしたもの。それが意味の似ぐあいを測る目印になります。
TERM SEARCH
ほかの用語を調べる
検索ボックスを準備中…