ML.TRANSFORM 함수

이 문서에서는 특성 데이터 전처리를 위해 사용할 수 있는 ML.TRANSFORM 함수에 대해 설명합니다. 이 함수는 기존 모델의 TRANSFORM에 캡처된 데이터 변환을 적용하여 입력 데이터를 처리합니다. 모델 학습 중 데이터 변환을 위해 계산된 통계는 함수의 입력 데이터에 적용됩니다.

특정 전처리를 지원하는 모델에 대한 자세한 내용은 각 모델의 엔드 투 엔드 사용자 여정을 참조하세요.

구문

ML.TRANSFORM(
  MODEL `project_id.dataset.model`,
  { TABLE `project_id.dataset.table` | (query_statement) }
)

인수

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

  • project_id: 프로젝트 ID입니다.
  • dataset: 모델을 포함하는 BigQuery 데이터 세트를 지정하는 STRING
  • model: 모델 이름. 특성 데이터를 수동으로 사전 처리하려면 TRANSFORM이 포함된 CREATE MODEL 문을 사용하여 모델을 만든 상태여야 합니다. bq show 명령어를 사용해서 모델 메타데이터를 확인하여 모델에 TRANSFORM 절이 사용되는지 확인할 수 있습니다. 모델이 TRANSFORM 절을 사용하여 학습된 경우 모델 메타데이터에 변환 열에 대한 섹션이 포함됩니다. TRANSFORM 절 없이 학습된 모델을 지정하는 경우 함수가 오류를 반환합니다.
  • table: 사전 처리할 특성 데이터가 포함된 입력 테이블의 이름입니다.

    table이 지정된 경우 테이블의 입력 열 이름이 모델의 TRANSFORM 절에 있는 입력 열 이름과 일치해야 하고, BigQuery 암시적 강제 변환 규칙에 따라 해당 유형이 호환되어야 합니다. 특성 열 관련 섹션의 모델 메타데이터에서 입력 열 이름 및 데이터 유형을 가져올 수 있습니다.

  • query_statement: 사전 처리할 특성 데이터를 생성하는 쿼리입니다. query_statement 절에서 지원되는 SQL 구문은 GoogleSQL 쿼리 구문을 참조하세요.

    query_statement가 지정된 경우 쿼리의 입력 열 이름이 모델의 TRANSFORM 절에 있는 입력 열 이름과 일치해야 하고, BigQuery 암시적 강제 변환 규칙에 따라 해당 유형이 호환되어야 합니다. 특성 열 관련 섹션의 모델 메타데이터에서 입력 열 이름 및 데이터 유형을 가져올 수 있습니다.

출력

ML.TRANSFORM은 모델의 TRANSFORM 절에 지정된 열을 반환합니다.

예시

다음 예시에서는 기본 프로젝트에서 mydataset.mymodel이라는 모델에 포함된 TRANSFORM 절을 사용해서 전처리된 특성 데이터를 반환합니다.

TRANSFORM 절이 포함된 모델을 만듭니다.

CREATE OR REPLACE MODEL `mydataset.mymodel`
  TRANSFORM(
    species,
    island,
    ML.MAX_ABS_SCALER(culmen_length_mm) OVER () AS culmen_length_mm,
    ML.MAX_ABS_SCALER(flipper_length_mm) OVER () AS flipper_length_mm,
    sex,
    body_mass_g)
  OPTIONS (
    model_type = 'linear_reg',
    input_label_cols = ['body_mass_g'])
AS (
  SELECT *
  FROM `bigquery-public-data.ml_datasets.penguins`
  WHERE body_mass_g IS NOT NULL
);

모델의 TRANSFORM 절에서 전처리된 특성 데이터를 반환합니다.

SELECT
  *
FROM
  ML.TRANSFORM(
    MODEL `mydataset.mymodel`,
    TABLE `bigquery-public-data.ml_datasets.penguins`);

결과는 다음과 비슷합니다.

+-------------------------------------+--------+---------------------+---------------------+--------+-----------------+-------------+
| species                             | island | culmen_length_mm    | flipper_length_mm   | sex    | culmen_depth_mm | body_mass_g |
--------------------------------------+--------+ ------------------- +---------------------+--------+-----------------+-------------+
| Adelie Penguin (Pygoscelis adeliae) | Dream  | 0.61409395973154368 | 0.79653679653679654 | Female | 18.4            | 3475.0      |
| Adelie Penguin (Pygoscelis adeliae) | Dream  | 0.66778523489932884 | 0.79653679653679654 | Male   | 19.1            | 4650.0      |
+-------------------------------------+--------+---------------------+---------------------+--------+-----------------+-------------+

다음 단계