milvus-logo
LFAI
Casa
  • Concetti

Tipi di metriche

Le metriche di somiglianza sono utilizzate per misurare le somiglianze tra vettori. La scelta di una metrica di distanza appropriata aiuta a migliorare notevolmente le prestazioni di classificazione e clustering.

Attualmente, Milvus supporta questi tipi di metriche di somiglianza: Distanza euclidea (L2), Prodotto interno (IP), Somiglianza coseno (COSINE), JACCARD, HAMMING e BM25 (specificamente progettato per la ricerca full text su vettori sparsi).

La tabella seguente riassume la mappatura tra i diversi tipi di campo e i corrispondenti tipi di metrica.

Tipo di campo

Intervallo di dimensione

Tipi di metrica supportati

Tipo di metrica predefinito

FLOAT_VECTOR

2-32,768

COSINE, L2, IP

COSINE

FLOAT16_VECTOR

2-32,768

COSINE, L2, IP

COSINE

BFLOAT16_VECTOR

2-32,768

COSINE, L2, IP

COSINE

SPARSE_FLOAT_VECTOR

Non è necessario specificare la dimensione.

IP, BM25 (utilizzato solo per la ricerca full text)

IP

BINARY_VECTOR

8-32,768*8

HAMMING, JACCARD

HAMMING

  • Per i campi vettoriali del tipo SPARSE_FLOAT_VECTOR, utilizzare il tipo di metrica BM25 solo quando si esegue la ricerca a testo completo. Per ulteriori informazioni, consultare la sezione Ricerca a testo completo.

  • Per i campi vettoriali di tipo BINARY_VECTOR, il valore della dimensione (dim) deve essere un multiplo di 8.

La tabella seguente riassume le caratteristiche dei valori della distanza di similarità di tutti i tipi di metrica supportati e il loro intervallo di valori.

Tipo di metrica

Caratteristiche dei valori della distanza di similarità

Intervallo dei valori della distanza di similarità

L2

Un valore minore indica una maggiore somiglianza.

[0, ∞)

IP

Un valore maggiore indica una maggiore somiglianza.

[-1, 1]

COSINE

Un valore maggiore indica una maggiore somiglianza.

[-1, 1]

JACCARD

Un valore minore indica una maggiore somiglianza.

[0, 1]

HAMMING

Un valore minore indica una maggiore somiglianza.

[0, dim(vettore)]

BM25

Attribuisce un punteggio alla rilevanza in base alla frequenza dei termini, alla frequenza inversa dei documenti e alla normalizzazione dei documenti.

[0, ∞)

Distanza euclidea (L2)

In sostanza, la distanza euclidea misura la lunghezza di un segmento che collega due punti.

La formula della distanza euclidea è la seguente.

Euclidean distance formula Formula della distanza euclidea

dove a = (a0, a1,...,an-1) e b = (b0, b1,..., bn-1) sono due punti nello spazio euclideo n-dimensionale.

È la metrica di distanza più utilizzata ed è molto utile quando i dati sono continui.

Milvus calcola il valore prima di applicare la radice quadrata solo quando la distanza euclidea è scelta come metrica di distanza.

Prodotto interno (IP)

La distanza IP tra due incorporazioni è definita come segue.

Inner product formula Formula del prodotto interno

L'IP è più utile se si devono confrontare dati non normalizzati o se si tiene conto della grandezza e dell'angolo.

Se si utilizza l'IP per calcolare le somiglianze tra embeddings, è necessario normalizzare le embeddings. Dopo la normalizzazione, il prodotto interno equivale alla somiglianza del coseno.

Supponiamo che X' sia normalizzato dall'incorporamento X.

Normalized inner product formula Formula del prodotto interno normalizzato

La correlazione tra le due incorporazioni è la seguente.

Correlation between embeddings Correlazione tra le incorporazioni

Somiglianza coseno

La somiglianza coseno utilizza il coseno dell'angolo tra due insiemi di vettori per misurare la loro somiglianza. Si può pensare ai due insiemi di vettori come a segmenti di linea che partono dallo stesso punto, come [0,0,...], ma che puntano in direzioni diverse.

Per calcolare la somiglianza del coseno tra due insiemi di vettori A = (a0, a1,...,an-1) e B = (b0, b1,..., bn-1), utilizzare la seguente formula.

Cosine similarity formula Formula di somiglianza del coseno

La somiglianza del coseno è sempre nell'intervallo [-1, 1]. Ad esempio, due vettori proporzionali hanno una somiglianza di coseno pari a 1, due vettori ortogonali hanno una somiglianza pari a 0 e due vettori opposti hanno una somiglianza pari a -1. Più grande è il coseno, più piccolo è l'angolo tra i due vettori, il che indica che questi due vettori sono più simili tra loro.

Sottraendo la somiglianza del coseno da 1, si ottiene la distanza del coseno tra due vettori.

Distanza JACCARD

Il coefficiente di somiglianza JACCARD misura la somiglianza tra due insiemi di campioni ed è definito come la cardinalità dell'intersezione degli insiemi definiti divisa per la cardinalità dell'unione degli stessi. Può essere applicato solo a insiemi di campioni finiti.

JACCARD similarity coefficient formula Formula del coefficiente di somiglianza JACCARD

La distanza JACCARD misura la dissimilarità tra gli insiemi di dati e si ottiene sottraendo il coefficiente di similarità JACCARD da 1. Per le variabili binarie, la distanza JACCARD è equivalente al coefficiente di Tanimoto.

JACCARD distance formula Formula della distanza JACCARD

Distanza HAMMING

La distanza HAMMING misura stringhe di dati binari. La distanza tra due stringhe di uguale lunghezza è il numero di posizioni di bit in cui i bit sono diversi.

Ad esempio, supponiamo che esistano due stringhe, 1101 1001 e 1001 1101.

11011001 ⊕ 10011101 = 01000100. Poiché contiene due 1, la distanza di HAMMING, d (11011001, 10011101) = 2.

Similitudine BM25

Il BM25 è un metodo di misurazione della rilevanza del testo ampiamente utilizzato, progettato specificamente per la ricerca di testi completi. Combina i seguenti tre fattori chiave.

  • Frequenza dei termini (TF): Misura la frequenza con cui un termine appare in un documento. Sebbene frequenze più elevate indichino spesso una maggiore importanza, BM25 utilizza il parametro di saturazione k1 per evitare che termini troppo frequenti dominino il punteggio di rilevanza.

  • Frequenza inversa del documento (IDF): Riflette l'importanza di un termine nell'intero corpus. I termini che compaiono in un minor numero di documenti ricevono un valore IDF più alto, indicando un maggiore contributo alla rilevanza.

  • Normalizzazione della lunghezza del documento: I documenti più lunghi tendono a ottenere un punteggio più alto perché contengono più termini. BM25 attenua questa distorsione normalizzando la lunghezza dei documenti, con il parametro b che controlla la forza di questa normalizzazione.

Il punteggio di BM25 è calcolato come segue.

BM25 similarity formula Formula di somiglianza BM25

Descrizione dei parametri.

  • Q: Il testo della query fornito dall'utente.

  • D: Il documento da valutare.

  • TF(qi,D): Frequenza dei termini, che rappresenta la frequenza con cui il termine qi compare nel documento D.

  • IDF(qi): Frequenza inversa del documento, calcolata come.

    IDF formula Formula IDF

    dove N è il numero totale di documenti del corpus e n(qi) è il numero di documenti contenenti il termine qi.

  • ∣D∣: Lunghezza del documento D (numero totale di termini).

  • avgdl: Lunghezza media di tutti i documenti del corpus.

  • k1: Controlla l'influenza della frequenza dei termini sul punteggio. Valori più alti aumentano l'importanza della frequenza dei termini. L'intervallo tipico è [1,2, 2,0], mentre Milvus consente un intervallo di [0, 3].

  • b: Controlla il grado di normalizzazione della lunghezza, che va da 0 a 1. Quando il valore è 0, non viene applicata alcuna normalizzazione; quando il valore è 1, viene applicata una normalizzazione completa.

Tradotto daDeepLogo

Try Managed Milvus for Free

Zilliz Cloud is hassle-free, powered by Milvus and 10x faster.

Get Started
Feedback

Questa pagina è stata utile?