cosine lighed
Cosine lighed er et mål for, hvor ens to ikke-nul-vektorer er i retning, uafhængigt af deres længde, beregnet som cosinus til vinklen mellem dem.
Kort fortalt
Et tal mellem -1 og 1 der fortæller, om to vektorer peger i samme retning (1), modsat retning (-1) eller er ortogonale (0).
- Kategori
- metrik
- Niveau
- begynder
- Udtale
- /koˈsiːnə ˈliːhəð/
Betydninger
1- 1
Et mål for lighed mellem to vektorer baseret på cosinus til vinklen mellem dem, hvor værdien er mellem -1 og 1.
- Cosine lighed mellem to TF-IDF vektorer kan bestemme teksternes semantiske lighed.
- I word2vec bruges cosine lighed ofte til at finde ord med lignende betydning.
Hvornår bruges det
Cosine lighed bruges især til at sammenligne dokumenter eller ord i vektorrumsmodeller, som ved TF-IDF eller embeddings. Den er populær i informationssøgning og NLP, fordi den er hurtig at beregne og ufølsom over for vektorlængde.
Formel
cosine_similarity(A,B) = (A·B) / (‖A‖ ‖B‖) = (Σ A_i B_i) / (√(Σ A_i²) √(Σ B_i²))Kodeeksempel
import numpy as np
def cosine_similarity(a, b):
return np.dot(a, b) / (np.linalg.norm(a) * np.linalg.norm(b))Simpel implementering af cosine lighed vha. NumPy.
Oprindelse
Fra matematikken (cosinusrelationen) og overført til machine learning via vektorrumsmodeller.
Afledte ord
1Kilder
1- Introduction to Information Retrieval (Manning, Raghavan, Schütze, 2008)