ML.ROBUST_SCALER 함수

이 문서에서는 이상점에 강력한 통계를 사용하여 숫자 표현식을 확장할 수 있는 ML.ROBUST_SCALER 함수에 대해 설명합니다. 이 함수는 중앙값을 삭제하고 분위수 범위에 따라 데이터를 확장하여 확장을 수행합니다.

TRANSFORM에서 사용할 경우 학습 중에 계산된 중앙값과 분위수 범위가 예측에서 자동으로 사용됩니다.

구문

ML.ROBUST_SCALER(numerical_expression [, quantile_range] [, with_median] [, with_quantile_range]) OVER()

인수

ML.ROBUST_SCALER는 다음 인수를 사용합니다.

  • numerical_expression: 확장할 숫자 표현식
  • quantile_range: 분위수 범위를 지정하는 INT64 요소 2개의 배열 첫 번째 요소는 범위의 하한을 제공합니다. 0보다 커야 합니다. 두 번째 요소는 범위의 상한을 제공합니다. 첫 번째 요소보다 커야 하며 100보다 작아야 합니다. 기본값은 [25, 75]입니다.
  • with_median: 데이터가 중앙에 있는지 여부를 지정하는 BOOL 값입니다. TRUE이면 이 함수는 확장 전에 중앙값을 제거하여 데이터를 중앙 집중화합니다. 기본값은 TRUE입니다.
  • with_quantile_range: 데이터가 분위수 범위로 확장되는지 여부를 지정하는 BOOL 값입니다. TRUE이면 데이터가 확장됩니다. 기본값은 TRUE입니다.

출력

ML.ROBUST_SCALER는 확장된 숫자 표현식을 나타내는 FLOAT64 값을 반환합니다.

다음 예시에서는 숫자 표현식 집합을 중앙에 두고 [25, 75] 범위로 확장합니다.

SELECT f, ML.ROBUST_SCALER(f) OVER () AS output
FROM
  UNNEST([NULL, -3, 1, 2, 3, 4, 5]) AS f
ORDER BY f;

결과는 다음과 유사합니다.

+------+---------------------+
|  f   |       output        |
+------+---------------------+
| NULL |                NULL |
|   -3 | -1.6666666666666667 |
|    1 | -0.3333333333333333 |
|    2 |                 0.0 |
|    3 |  0.3333333333333333 |
|    4 |  0.6666666666666666 |
|    5 |                 1.0 |
+------+---------------------+

다음 단계