The ML.POLYNOMIAL_EXPAND function
This document describes the ML.POLYNOMIAL_EXPAND
function, which lets you
calculate all polynomial combinations of the input features.
Syntax
ML.POLYNOMIAL_EXPAND(struct_numerical_features [, degree])
Arguments
ML.POLYNOMIAL_EXPAND
takes the following arguments:
struct_numerical_features
: aSTRUCT
value that contains the numerical input features to expand. You can specify less than or equal to10
input features. Don't specify unnamed features or duplicate features.degree
: anINT64
value that specifies the highest degree of all combinations in the range of[1, 4]
. The default value is2
.
Output
ML.POLYNOMIAL_EXPAND
returns a STRUCT<STRING>
value that contain all
polynomial combinations of the numerical input features with a degree no larger
than the passed-in degree, including the original features. The field names of
the output struct are concatenations of the original feature names.
Example
The following example calculates the polynomial expansion of two numerical features:
SELECT ML.POLYNOMIAL_EXPAND(STRUCT(2 AS f1, 3 AS f2)) AS output;
The output looks similar to the following:
+-------------------------------------------------------------------+ | output | +-------------------------------------------------------------------+ | {"f1":"2.0","f1_f1":"4.0","f1_f2":"6.0","f2":"3.0","f2_f2":"9.0"} | +-------------------------------------------------------------------+
What's next
- For information about feature preprocessing, see Feature preprocessing overview.
- For information about the supported SQL statements and functions for each model type, see End-to-end user journey for each model.