TensorFlow Transform4 TFT를 머신러닝 파이프라인에 통합하기 TFT를 머신러닝 파이프라인에 통합하기앞선 데이터 검증 단계에서 우리는 데이터셋의 피처 별 타입 및 분포부터 문자열 표현과 벡터형 표현까지 피처의 특성을 파악했다. 이는 전처리 단계에서 feature engineering을 정의하는 데에 중요하다. 다음 코드에서는 피처를 정의한다. 간편한 처리를 위해 원-핫 인코딩 피처, 버킷 처리 피처, 원시 문자열 표현 세 그룹으로 그룹화하였다.import tensorflow as tfimport tensorflow_transform as tftLABEL_KEY = 'consumer_disputed'# 'feature_name':feature_dimensionONE_HOT_FEATURES = { 'product':11, 'sub+product':45, .. MLOps 2022. 1. 8. TFT 독립 실행형으로 실행하기 TFT 독립 실행형으로 실행하기변환 함수를 실행하는 방법에는 두 가지가 있다. 머신러닝 파이프라인의 일부로서 TFX 컴포넌트 형태로 전처리 변환을 실행하는 것과 독립 실행형으로 실행하는 것이 그것이다. 두 방법 모두 로컬 아파치 빔 설정 또는 구글 클라우드 데이터플로 서비스에서 수행할 수 있다. 기본적으로는 TFT를 머신러닝 파이프라인의 일부로 통합하여 사용하는 것이 일반적이나, 파이프라인이 아닌 외부에서 데이터를 처리해야 할 경우 독립 실행형을 채택하는 것이 효율적이다. 간단한 소규모 샘플 데이터셋에 정규화 처리를 적용하는 예제를 수행해보자.# small data sampleraw_data = [ {'x': 1.20}, {'x': 2.99}, .. MLOps 2022. 1. 6. TFT를 이용한 데이터 전처리 TFT를 이용한 데이터 전처리TFT는 텐서플로우 생태계 내에서 데이터를 전처리하는 라이브러리로, TFDV와 마찬가지로 TFX의 일부이다. TFT는 이전에 생성한 데이터셋 스키마를 사용하여 파이프라인에 수집된 데이터를 처리하고 다음 두 가지 아티팩트를 출력한다.TFRecord 형식의 전처리된 데이터셋:파이프라인의 Trainer 컴포넌트에서 사용전처리 그래프 (에셋 파일 포함):머신러닝 모델을 내보낼 때 사용TFT의 핵심 함수는 preprocessing_fn()으로, 원시 데이터에 적용할 모든 변환을 정의할 수 있다. Transform 컴포넌트를 실행하면 preprocessing_fn은 Tensor 혹은 SparseTensor 형태의 원시 데이터를 받아, 정의된 변환을 적용 후(이때 적용되는 변환은 모두 텐.. MLOps 2022. 1. 5. 데이터 전처리 데이터 전처리외부로부터 수집되는 데이터는 일반적으로 머신러닝 모델이 사용할 수 없는 형식인 경우가 많다. 따라서, 데이터를 모델이 사용할 수 있는 형태로 처리하는 과정이 필요한데, 이를 데이터 전처리라고 한다. 데이터는 일관적인 전처리 과정을 통해 처리되는 것이 일반적이며, 이를 위해 보통 데이터 검증 이후 전처리 과정이 수행된다. TFX는 데이터 전처리를 위한 컴포넌트인 TensorFlow Transform(TFT)을 지원한다. 이를 이용하면 전처리 단계를 텐서플로우 그래프의 형태로 구성할 수 있다. 다만 이러한 방식은 다소 오버헤드가 발생할 수 있기 때문에 실험단계에서의 사용은 권장하지 않는다.데이터 전처리 통합의 필요성TFT는 데이터 전처리 단계를 텐서플로우로 구현해야 한다는 점에서 TFX 컴포넌.. MLOps 2022. 1. 4. 이전 1 다음