NormalizeEmbedding
Normalizza un vettore di embedding. Se specificato, il parametro della dimensione riduce il numero di dimensioni del vettore da utilizzare prima della normalizzazione.
Formato
NormalizeEmbedding ( dati { ; dimensione } )
Parametri
dati
- qualsiasi espressione di testo, campo Testo o campo Contenitore che contenga un vettore di embedding.
dimensione
- il numero di dimensioni del vettore da utilizzare per la normalizzazione. Se omesso, o se il valore è maggiore della dimensione effettiva del vettore o inferiore o uguale a 0, nel calcolo viene utilizzata la dimensione dell'intero vettore.
I parametri racchiusi tra parentesi graffe { } sono opzionali.
Tipo di dati riportato
Testo, Contenitore
Creata nella versione
22.0
Descrizione
Questa funzione restituisce una versione normalizzata del vettore di embedding di input. Normalizzare un vettore significa ridimensionare i suoi valori in modo che la sua lunghezza (grandezza) diventi 1. Spesso questo passaggio è necessario prima di eseguire calcoli come la similarità del coseno, perché assicura che la misura della similarità si basi solo sulla direzione dei vettori, non sulla loro grandezza.
Se il parametro dati
è costituito da testo, deve essere sotto forma di un array JSON contenente numeri a virgola mobile, ad esempio [-0.1, 0.5, ...]
In genere, tuttavia, l'uso di vettori di embedding come dati contenitore binari migliora le prestazioni.
Il parametro dimensione
consente di normalizzare il vettore basandosi solo su un numero specificato delle sue dimensioni iniziali. Se il parametro dimensione
viene specificato, la funzione calcola la grandezza usando solo i primi elementi di "dimensione" e quindi ridimensiona l'intero vettore originale in base a quella grandezza. Il vettore restituito ha lo stesso numero di dimensioni del vettore di input, a meno che il parametro dimensione
non venga utilizzato per troncare il vettore prima della normalizzazione.
Note
-
La maggior parte dei modelli di embedding genera vettori di embedding già normalizzati (lunghezza dell'unità). In tali casi, richiamare
NormalizeEmbedding
per questi vettori non è necessario e restituisce semplicemente il vettore originale. In genere è necessario utilizzare questa funzione solo se si sta lavorando con vettori di embedding generati da un modello che non genera vettori normalizzati, o se è specificamente necessario eseguire la normalizzazione in base a un sottogruppo di dimensioni del vettore. -
L'utilizzo del parametro opzionale
dimensione
può essere utile se si desidera lavorare con una rappresentazione più piccola e di dimensioni fisse di un vettore più grande, mantenendo la comparabilità in base alle dimensioni iniziali.
Esempio 1
NormalizeEmbedding ( "[3, 4]" )
restituisce [0.5999999999999999778, 0.80000000000000004441], che, a scopo esemplificativo, è approssimativamente [0.6, 0.8]
. Il vettore originale [3, 4]
ha una lunghezza di Radq(3^2 + 4^2) = 5. Il vettore normalizzato [0.6, 0.8]
ha una lunghezza di Radq(0.6^2 + 0.8^2) = 1.
Esempio 2
NormalizeEmbedding ( Tabella::DatiEmbedding; 256 )
restituisce un nuovo vettore contenente solo le prime 256 dimensioni del vettore originale, normalizzato in modo che la sua lunghezza sia 1. Il vettore di embedding è memorizzato in un campo Contenitore denominato Tabella::DatiEmbedding. Questo è utile se il modello di embedding produce vettori di grandi dimensioni, ma si desidera utilizzare solo un numero più piccolo e fisso di dimensioni per i calcoli di similarità del coseno e occorre che tali dimensioni siano normalizzate.