tensorflow/transform

Input pipeline framework

해결하는 문제

TensorFlow Transform (TFT)는 기계학습 모델을 위한 데이터 전처리 문제를 해결합니다. 특히 데이터셋 전체를 한 번의 통과(pass)로 처리하여 평균이나 어휘와 같은 상수를 계산해야 하는 작업에 특화되어 있습니다. 또한, 동일한 전처리 로직을 TensorFlow 그래프로 내보내어 훈련 및 추론 단계에서 모두 사용함으로써 "훈련-추론 편차(training-serving skew)"를 방지합니다.

작동 방식

TFT는 TensorFlow의 표준 배치 수준 조작을 데이터셋 전체를 대상으로 하는 처리를 지원하도록 확장합니다. 효율적인 분산 계산을 위해 Apache Beam을 사용하고, 내부 데이터 표현에는 Apache Arrow를 활용하여 벡터화된 numpy 함수를 활용합니다. 결과적으로 생성된 변환은 TensorFlow 그래프로 내보내져 전처리 단계를 모델 배포 파이프라인의 일부로 포함할 수 있습니다.

대상 사용자

TensorFlow를 사용하고 대규모 데이터에서 복잡한 전체 데이터셋 전처리(예: 정규화, 버킷화)가 필요한 머신러닝 엔지니어 및 데이터 과학자.

주요 특징

  • 편차 방지: 훈련과 추론 모두에서 동일한 TensorFlow 그래프를 사용하여 일관성을 보장합니다.
  • 분산 처리: 대규모 데이터셋을 분산 시스템에서 처리하기 위해 Apache Beam 기반입니다.
  • 풀패스 연산 지원: 정규화를 위한 평균/표준편차 계산, 문자열을 정수로 변환하기 위한 어휘 생성, 데이터 분포 기반 버킷 생성 등 풀패스 연산을 지원합니다.
  • 벡터화된 성능: 내부 데이터 처리 효율성을 높이기 위해 Apache Arrow를 활용합니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트