tensorflow/transform
Input pipeline framework
What it solves
TensorFlow Transform (TFT) addresses the problem of data preprocessing for machine learning models, specifically for operations that require a full pass over the entire dataset to calculate constants (like mean or vocabulary). It also prevents "training-serving skew" by ensuring that the exact same preprocessing logic is exported as a TensorFlow graph and used during both the training and serving phases.
How it works
TFT extends TensorFlow's standard batch-level manipulations to support full-dataset passes. It uses Apache Beam for efficient distributed computation and Apache Arrow for internal data representation to leverage vectorized numpy functions. The resulting transformations are then exported as a TensorFlow graph, allowing the preprocessing steps to be part of themodel's deployment pipeline.
Who it’s for
ML engineers and data scientists who use TensorFlow and need to perform complex, dataset-wide preprocessing (such as normalization or bucketization) on large-scale data.
Highlights
- Prevents Skew: Uses a single TensorFlow graph for both training and serving to ensure consistency.
- Distributed Processing: Powered by Apache Beam to handle large datasets across distributed systems.
- Full-Pass Operations: Supports operations like calculating mean/standard deviation for normalization, generating vocabularies for string-to-integer conversion, and creating buckets based on data distribution.
- Vectorized Performance: Utilizes Apache Arrow for efficient internal data handling.
Related
- Project
- Project
- Project
- Project
- Project