Função ML.FEATURE_CROSS

Neste documento, descrevemos a função ML.FEATURE_CROSS, que permite criar cruzamentos de atributos dos atributos de entrada.

Sintaxe

ML.FEATURE_CROSS(struct_categorical_features [, degree])

Argumentos

ML.FEATURE_CROSS usa os seguintes argumentos:

  • struct_categorical_features: um valor STRUCT<STRING> que especifica os recursos categóricos a serem cruzados. O número máximo de recursos de entrada é 10. Não especifique recursos sem nome ou recursos duplicados em struct_numerical_features.
  • degree: um valor INT64 que especifica o maior grau de todas as combinações de recursos, no intervalo de [2, 4]. O valor padrão é 2.

Saída

ML.FEATURE_CROSS retorna um valor STRUCT<STRING> que identifica todas as combinações de atributos categóricos cruzados com um grau não maior que o valor degree, exceto para itens de 1 grau (os recursos originais) e itens que se cruzam. Os nomes dos campos na saída STRUCT são concatenações dos nomes dos recursos originais.

Exemplo

O exemplo a seguir cruza três recursos:

SELECT
  ML.FEATURE_CROSS(STRUCT('a' AS f1, 'b' AS f2, 'c' AS f3)) AS output;

A saída será assim:

+---------------------------------------------+
|                   output                    |
+---------------------------------------------+
| {"f1_f2":"a_b","f1_f3":"a_c","f2_f3":"b_c"} |
+---------------------------------------------+

A seguir