vektorbaseret søgning
Vektorbaseret søgning er en metode, hvor data repræsenteres som vektorer i et højdimensionelt rum, og lighed måles ved afstandsberegninger som cosinus-lighed eller euklidisk distance.
Kort fortalt
Vektorbaseret søgning finder de mest relevante resultater ved at sammenligne numeriske vektorer, der repræsenterer indholdet, i stedet for at matche nøjagtige ord.
- Kategori
- teknik
- Niveau
- øvet
- Udtale
- [ˈvɛgtoːb̥ɑseˀʌð ˈsøjˀneŋ]
Betydninger
1- 1
Søgemetode baseret på vektorrepræsentationer af data, hvor relevans bestemmes ved afstandsmål i et vektorrum.
- Vektorbaseret søgning muliggør semantisk søgning, hvor 'kat' og 'hund' betragtes som relaterede, selvom ordene er forskellige.
- Systemet anvender vektorbaseret søgning til at finde de mest lignende produkter baseret på brugerens præferencer.
Hvornår bruges det
Vektorbaseret søgning bruges i informationsgenfinding, anbefalingssystemer og semantisk søgning, især når traditionel nøgleordsmatchning er utilstrækkelig. Det kræver, at data først omdannes til embeddings via en model, og derefter anvendes en indekseringsstruktur som f.eks. FAISS eller Annoy til hurtig søgning.
Formel
cosine_similarity(A, B) = (A·B) / (||A|| * ||B||)Kodeeksempel
import numpy as np
from sklearn.metrics.pairwise import cosine_similarity
# Example vectors
a = np.array([0.2, 0.5, 0.1])
b = np.array([0.3, 0.6, 0.0])
# Compute similarity
sim = cosine_similarity([a], [b])
print(f"Cosine similarity: {sim[0][0]:.3f}")Kort eksempel på beregning af cosinus-lighed mellem to vektorer vha. scikit-learn.
Oprindelse
Sammensat af 'vektor' (fra latin vector 'bærer') og 'søgning' (oldnordisk sœkja 'opsøge').