
Posted by Hannes Hapke and Robert Crowe
. With just a pip install, TFX already includes a number of versatile pipeline components - referred to as the “standard components” - which provide most of the basic functionality for training and batch inference. The standard components will get most developers started, but developers often find the need for additional functionality, which can be added by developing custom components. Any TFX pipeline, regardless of which components are included, can be used with a number of pipeline orchestrators like , .
While the standard TFX components are great, a community of machine learning engineers from a number of companies including Twitter, Spotify, Digits, and Apple formed a TFX special interest group and started contributing new components, libraries, and examples to an extension of TFX called .
TFX is a planet-scale production learning toolkit based on TensorFlow. It provides a configuration framework and shared libraries to integrate common components needed to define, launch, and monitor your machine learning system.
What is TFX-Addons?
, a component maintained by machine learning engineers at Twitter and Apple.
How can you use the TFX-Addons components or examples?
The TFX-Addons components and examples are accessible via a simple pip installation. To install the latest version, run the following:
pip install tfx-addons
To ensure you have a compatible version of dependencies for any given project, you can specify the project name as an extra requirement during install:
pip install tfx-addons[feast_examplegen]
To use TFX-Addons:
from tfx import v1 as tfx
import tfx_addons as tfxa
# Then you can easily load projects tfxa.{project_name}. Ex:
tfxa.feast_examplegen.FeastExampleGen(...)
The TFX-Addons components can be used in any TFX pipeline. Most components support all TFX orchestrators including , .
Which additional components are currently available?
The list of components, libraries, and examples is constantly growing, with several new projects currently in development. As of this writing, these are the currently available components.
Feast Component
The Example Generator allows you to ingest data samples from a
Message Exit Handler
This component provides an exit handler for TFX pipelines which notifies the user about the final state of the pipeline (failed or succeeded) via a Slack message. If the pipeline fails, the component will provide the error message. The message component supports a number of message providers (e.g. Slack, stdout, logging providers) and can easily be extended to support Twilio. It also serves as an example of how to write exit handlers for TFX pipelines.
- More information:
Feature Selection Component
This component allows users to select features from datasets. This component is useful if you want to select features based on statistical feature selection metrics.
- More information:
Sampling Component
This component allows users to balance their training datasets by randomly undersampling or oversampling, reducing the data to the lowest- or highest-frequency class.
- More information:
Firebase Publisher
This project helps users to publish trained models directly from a TFX pipeline to Firebase ML.
- More information: . Also, it optionally pushes an application to
How can you participate?
The TFX-Addons SIG is all about sharing reusable components and best practices. If you are interested in MLOps, join our bi-weekly conference calls. It doesn’t matter if you are new to TFX or an experienced ML engineer, everyone is welcome and the SIG accepts open source contributions from all participants.
If you want to join our next meeting, sign up to our list group - join
Already using TFX-Addons?
If you’re already using TFX-Addons we’d love to hear from you! Use this form to send us your story!
Thanks to all Contributors
Big thanks to all the open-source component contributions from following members:
Badrul Chowdhury, Daniel Kim, Fatimah Adwan, Gerard Casas Saez, Hannes Hapke, Marcus Chang, Kshitijaa Jaglan, Pratishtha Abrol, Robert Crowe, Nirzari Gupta, Thea Lamkin, Wihan Booyse, Michael Hu, Vulko Milev, and all the other contributors! Open-source only happens when people like you contribute!
SOCIAL SHARE CARD GENERATOR