[TFX Standard Components]
1) ExampleGen is the initial input component of a pipeline that ingests and optionally splits the input dataset. -> TFX pipeline의 첫 단계에서 사용되는 component이며 Dataset을 일정한 비율(by default, 2/3 training + 1/3 eval)로 나누고 tf.Example형식으로 변환시켜준다. 또한 다른 component들이 Data에 쉽게 접근할수 있도록 _tfx_root 경로에 Data를 저장한다.
2) StatisticsGen calculates statistics for the dataset. -> 'ExampleGen' Component가 준비해준 Dataset으로부터 통계를 산출한다. 그래프로도 확인할 수 있다.
3) SchemaGen examines the statistics and creates a data schema. -> 'StatisticsGen' Component가 산출한 통계로부터 Data개요를 생성한다.
4) ExampleValidator looks for anomalies and missing values in the dataset. -> 'StatisticsGen' Component가 생성한 Data 개요로부터 변화점을 측정한다.
5) Transform performs feature engineering on the dataset. -> 'example_gen' 와 'schema_gen' component의 output을 입력으로 받아 training과 serving을 하기위한
transform_fn, metadata, transformed_metadata 등으로 변환
6) Trainer trains the model.
7) Evaluator performs deep analysis of the training results and helps you validate your exported models, ensuring that they are "good enough" to be pushed to production.
8) Pusher deploys the model on a serving infrastructure. -> TFX pipeline의 마지막 단계에서 사용되는 component이며 Model이 Validation을 통과했는지 확인한다. 통과했다면, '_serving_model_dir'경로에 저장한다.
[TFX Libraries]
1. TensorFlow Data Validation (TFDV) : Data를 분석하고 validating하기 위한 라이브러리. TensorFlow, TFX와 잘 동작시키기 위함
2. TensorFlow Transform (TFT) : Tensorflow와 함께 Data를 전처리하기 위한 라이브러리. Normalize를 하거나 string to integer와 같이 형변환이 필요한 data에 유용함
3. TensorFlow : TFX와 model을 Training하기 위한 라이브러리. Training data와 modeling code를 흡수하고 SavedModel 결과를 생성함. 또한, input data를 전처리하기 위한 Tensorflow Transform에 의해 생성된 feature engineering pipeline을 통합시킴