• home
  • about
  • 全ての投稿
  • ソフトウェア・ハードウェアの設定のまとめ
  • 分析関連のまとめ
  • ヘルスケア関連のまとめ
  • 生涯学習関連のまとめ

コサイン類似度

date: 2022-06-13 excerpt: コサイン類似度の計算の仕方

tag: 機械学習コサイン類似度cosine similarity


コサイン類似度の計算の仕方

概要

  • ベクトルの距離を計算する方法
  • numpyを使うと高速に大量のベクトルでも計算することができる
    • numpyで計算する場合はメモリの使用量に注意が必要

定義

\[K(X, Y) = \frac{<X, Y>}{||X||*||Y||}\]

numpyでの計算例

from numpy.linalg import norm

query = V[1] # Vという検索対象のベクトルがあるとき
score = (query@V.T) / (norm(query) * norm(V.T, axis=0))

scipyでの計算例

from sklearn.metrics.pairwise import cosine_similarity

score = cosine_similarity(V, np.array([V[1]]))

参考

  • sklearn.metrics.pairwise.cosine_similarity


機械学習コサイン類似度cosine similarity Share Tweet