La funzione ML.LABEL_ENCODER
Questo documento descrive la funzione ML.LABEL_ENCODER
, che puoi utilizzare per
codificare un'espressione stringa in un valore INT64
in [0, <number of categories>]
.
Il vocabolario della codifica è in ordine alfabetico. I valori e le categorie di NULL
non presenti nel vocabolario vengono codificati in 0
.
Se utilizzati nella clausola TRANSFORM
, i valori del vocabolario calcolati durante l'addestramento, insieme ai valori del k massimo e della soglia di frequenza specificati, vengono utilizzati automaticamente nella previsione.
Sintassi
ML.LABEL_ENCODER(string_expression [, top_k] [, frequency_threshold]) OVER()
ML.LABEL_ENCODER
accetta i seguenti argomenti:
string_expression
: l'espressioneSTRING
da codificare.top_k
: un valoreINT64
che specifica il numero di categorie incluse nel vocabolario di codifica. La funzione seleziona letop_k
categorie più frequenti nei dati e le utilizza; le categorie al di sotto di questa soglia sono codificate come0
. Questo valore deve essere inferiore a1,000,000
per evitare problemi dovuti all'elevata dimensionalità. Il valore predefinito è32,000
.frequency_threshold
: un valoreINT64
che limita le categorie incluse nel vocabolario di codifica in base alla frequenza della categoria. La funzione utilizza categorie la cui frequenza è maggiore o uguale afrequency_threshold
; le categorie al di sotto di questa soglia sono codificate in0
. Il valore predefinito è5
.
Output
ML.LABEL_ENCODER
restituisce un valore INT64
che rappresenta l'espressione di stringa codificata.
Esempio
L'esempio seguente esegue la codifica delle etichette su un insieme di espressioni di tipo stringa. Limita il vocabolario di codifica alle due categorie che ricorrono più spesso nei dati e che ricorrono anche due o più volte.
SELECT f, ML.LABEL_ENCODER(f, 2, 2) OVER () AS output FROM UNNEST([NULL, 'a', 'b', 'b', 'c', 'c', 'c', 'd', 'd']) AS f ORDER BY f;
L'output è simile al seguente:
+------+--------+ | f | output | +------+--------+ | NULL | 0 | | a | 0 | | b | 1 | | b | 1 | | c | 2 | | c | 2 | | c | 2 | | d | 0 | | d | 0 | +------+--------+
Passaggi successivi
- Per informazioni sulla pre-elaborazione delle funzionalità, consulta Panoramica della pre-elaborazione delle funzionalità.
- Per informazioni sulle istruzioni e sulle funzioni SQL supportate per ogni tipo di modello, consulta Percorso dell'utente end-to-end per ogni modello.