Função ML.LABEL_ENCODER
Neste documento, descrevemos a função ML.LABEL_ENCODER
, que pode ser usada para codificar uma expressão de string para um valor INT64
em [0, <number of categories>]
.
O vocabulário de codificação é classificado em ordem alfabética. Valores e categorias de NULL
que não estão no vocabulário são codificados para 0
.
Quando usados na cláusula TRANSFORM
, os valores de vocabulário calculados durante o treinamento, junto com os k principais valores de limite de frequência especificados são usados automaticamente na previsão.
Sintaxe
ML.LABEL_ENCODER(string_expression [, top_k] [, frequency_threshold]) OVER()
ML.LABEL_ENCODER
usa os seguintes argumentos:
string_expression
: a expressãoSTRING
a ser codificada.top_k
: um valorINT64
que especifica o número de categorias incluídas no vocabulário de codificação. A função seleciona as categorias mais frequentes detop_k
nos dados e as usa. As categorias abaixo desse limite são codificadas com0
. Esse valor precisa ser menor que1,000,000
para evitar problemas devido à alta dimensionalidade. O valor padrão é32,000
.frequency_threshold
: um valorINT64
que limita as categorias incluídas no vocabulário de codificação com base na frequência da categoria. A função usa categorias com frequência maior ou igual afrequency_threshold
. As categorias abaixo desse limite são codificadas com0
. O valor padrão é5
.
Saída
ML.LABEL_ENCODER
retorna um valor INT64
que representa a expressão de string codificada.
Exemplo
O exemplo a seguir executa a codificação de rótulo em um conjunto de expressões de string. Ele limita o vocabulário de codificação às duas categorias que ocorrem com mais frequência nos dados e que também ocorrem duas ou mais vezes.
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;
A saída será assim:
+------+--------+ | f | output | +------+--------+ | NULL | 0 | | a | 0 | | b | 1 | | b | 1 | | c | 2 | | c | 2 | | c | 2 | | d | 0 | | d | 0 | +------+--------+
A seguir
- Para informações sobre o pré-processamento de atributos, consulte Visão geral do pré-processamento de atributos.
- Para informações sobre as funções e instruções SQL compatíveis com cada tipo de modelo, consulte Jornada do usuário completa de cada modelo.