cosine similarity
Cosinus-lighed er en metrik, der måler ligheden mellem to ikke-nul vektorer ved at beregne cosinus af vinklen mellem dem.
Kort fortalt
Kort fortalt: Cosinus-lighed fortæller, hvor ens to vektorer er, baseret på retningen – værdien går fra -1 (modsat) til 1 (identisk).
- Kategori
- metrik
- Niveau
- øvet
- Udtale
- /ˈkoʊsaɪn ˌsɪməˈlærɪti/
Betydninger
1- 1
Cosinus-lighed er en metrik, der kvantificerer ligheden mellem to vektorer som cosinus af vinklen mellem dem, hvilket kun afhænger af retning, ikke længde.
- For at beregne cosinus-ligheden mellem to ord-embeddings bruger man formlen A·B / (||A|| ||B||). — Introduction to Information Retrieval, 2008
Hvornår bruges det
Cosinus-lighed bruges ofte i naturlig sprogbehandling og informationsgenfinding til at sammenligne dokumenter eller ord-embeddings. Den er også central i anbefalingssystemer og clustering-algoritmer.
Formel
cosine_similarity(A, B) = (A · B) / (||A|| * ||B||)Kodeeksempel
import numpy as np
def cosine_similarity(a, b):
dot = np.dot(a, b)
norm_a = np.linalg.norm(a)
norm_b = np.linalg.norm(b)
return dot / (norm_a * norm_b)Eksempel på en Python-implementering af cosinus-lighed ved hjælp af NumPy.
Oprindelse
Termen stammer fra trigonometri, hvor cosinus af en vinkel er forholdet mellem den tilstødende katete og hypotenusen i en retvinklet trekant.
Afledte ord
1Kilder
1- Salton, G., Wong, A., & Yang, C. S. (1975). A vector space model for automatic indexing. Communications of the ACM, 18(11), 613–620.