Machine learning software library.
Tensorflow Extended (TFX) is an end-to-end platform for deploying production-ready machine learning (ML) pipelines. It provides a configuration framework and shared libraries to integrate common components needed to define, launch, and monitor your ML system.
TFX consists of several components that work together to manage the lifecycle of a machine learning model. These components include:
Data validation in TFX is performed by the ExampleValidator component, which identifies anomalies and missing values in the dataset. The anomalies are identified based on the expectations defined in the schema and the statistics of the data.
The Transform component performs feature engineering on the dataset. It uses the schema and the user-provided TensorFlow code to transform the raw data into features suitable for ML model training.
The Trainer component trains the model using user-provided TensorFlow code. It uses the transformed data and schema from the Transform component, and trains the model based on this. The output of this component is a SavedModel.
The Evaluator component performs deep analysis of the training results. It uses the validation set and the trained model to compute evaluation metrics, which can be visualized in TensorBoard.
The ModelValidator component ensures that the model is "good enough" to be pushed to production. It compares the new model with the current model in production and checks if the new model is better.
The Pusher component deploys the model in a serving infrastructure. If the ModelValidator has marked the model as "good enough", the Pusher component deploys the model to a serving infrastructure (like TensorFlow Serving or TensorFlow Lite).
TFX supports continuous integration and delivery, allowing for regular model training and deployment, ensuring that models are up-to-date and improving over time. This is achieved through TFX's ability to create reproducible pipelines, which can be triggered based on new data, and its robust validation and testing components.
In conclusion, Tensorflow Extended (TFX) is a powerful tool for managing the lifecycle of a machine learning model, providing components for each step of the process, from data ingestion and validation, to model training and deployment.