Description
TensorFlow Extended (TFX) est une plateforme d'apprentissage automatique (ML) complète, conçue pour l'échelle de production et basée sur TensorFlow. Elle offre un cadre de configuration robuste et une suite de bibliothèques partagées conçues pour rationaliser l'intégration des composants essentiels à la définition, au lancement et à la surveillance de systèmes d'apprentissage automatique complexes. TFX permet aux utilisateurs de construire et de gérer efficacement des flux de travail ML dans des environnements de production.
Au cœur de TFX se trouve une boîte à outils pour la construction de pipelines ML. Ces pipelines peuvent être orchestrés sur diverses plateformes, notamment Apache Airflow, Apache Beam et Kubeflow Pipelines, offrant une flexibilité de déploiement. La plateforme propose également un ensemble de composants standard offrant des fonctionnalités éprouvées, simplifiant les premières étapes de la construction d'un processus ML. Ces composants peuvent être utilisés indépendamment ou dans le cadre d'un pipeline plus large. De plus, TFX inclut des bibliothèques qui constituent la fonctionnalité fondamentale de nombre de ses composants standard, permettant aux développeurs d'intégrer cette puissance dans leurs composants personnalisés ou de les utiliser séparément.
Les pipelines TFX sont des séquences de composants conçus pour des tâches ML évolutives et performantes, couvrant la modélisation, l'entraînement, le service d'inférence et la gestion des déploiements vers diverses cibles telles que les applications en ligne, mobiles natives et JavaScript. Les composants clés incluent ExampleGen pour l'ingestion de données, StatisticsGen pour le calcul des statistiques, SchemaGen pour la création de schémas de données, ExampleValidator pour la détection d'anomalies, Transform pour l'ingénierie des caractéristiques, Trainer pour l'entraînement de modèles, et Evaluator pour l'analyse des résultats d'entraînement. La plateforme prend également en charge le réglage des hyperparamètres avec Tuner et valide la capacité de service des modèles avec InfraValidator avant le déploiement via Pusher.
L'écosystème TFX intègre plusieurs bibliothèques puissantes. TensorFlow Data Validation (TFDV) est utilisé pour analyser et valider les données ML, offrant un calcul de statistiques évolutif, une génération de schémas et une détection d'anomalies. TensorFlow Transform (TFT) gère l'ingénierie des caractéristiques à l'aide de TensorFlow, garantissant la cohérence entre l'entraînement et l'inférence. TensorFlow Model Analysis (TFMA) fournit des outils pour évaluer les modèles TensorFlow sur de grands ensembles de données, tandis que TensorFlow Metadata (TFMD) offre des représentations standard pour les métadonnées ML. ML Metadata (MLMD) enregistre et récupère les métadonnées associées aux flux de travail ML, prenant en charge la persistance via divers magasins de données.
TFX est conçu pour la portabilité, prenant en charge plusieurs environnements et cadres d'orchestration tels qu'Apache Airflow, Apache Beam et Kubeflow, ainsi que des plateformes cloud comme Google Cloud Platform (GCP). Il interagit avec les services GCP gérés tels que Cloud AI Platform pour l'entraînement et la prédiction, et Cloud Dataflow pour le traitement distribué des données. La plateforme prend en charge les cibles de déploiement, notamment TensorFlow Serving pour les environnements de production, TensorFlow Lite pour les applications mobiles et IoT natives, et TensorFlow.js pour les déploiements dans les navigateurs et Node.js.
Pour les développeurs, TFX offre une plateforme puissante pour chaque phase d'un projet ML, de la recherche et de l'expérimentation au déploiement. Il recommande fortement la mise en œuvre de pipelines TFX pour l'entraînement et le déploiement de modèles, en utilisant les composants Transform pour exploiter TensorFlow Transform pour un code de prétraitement et d'analyse cohérent, évitant ainsi le décalage entraînement/service. Cela garantit que la même logique de prétraitement est appliquée pendant l'entraînement et l'inférence, en écrivant le code une seule fois.
Fonctionnalités principales de TensorFlow Extended (TFX)
Plateforme ML à l'échelle de production basée sur TensorFlow
Cadre de configuration pour les systèmes ML
Bibliothèques partagées pour les composants ML courants
Orchestration des flux de travail ML sur diverses plateformes (Airflow, Kubeflow, Beam)
Composants standard pour les tâches ML (ingestion de données, validation, transformation, entraînement, évaluation)
Intégration avec TensorFlow Data Validation (TFDV) pour l'analyse et la validation des données
Intégration avec TensorFlow Transform (TFT) pour l'ingénierie des caractéristiques
Intégration avec TensorFlow Model Analysis (TFMA) pour l'évaluation des modèles
Support du réglage des hyperparamètres
Validation des modèles et vérifications de la capacité de service
Déploiement vers TensorFlow Serving, TensorFlow Lite et TensorFlow.js
Portabilité entre les environnements sur site et cloud
CLI unifiée pour la gestion des pipelines
Premiers pas avec TensorFlow Extended (TFX)
Installer TFX : Utilisez `pip install tfx`.
Configurer le pipeline : Définissez votre flux de travail ML à l'aide des composants TFX et d'un orchestrateur.
Construire le pipeline : Intégrez des composants standard ou personnalisés pour le traitement des données, l'entraînement et l'évaluation.
Exécuter le pipeline : Exécutez votre pipeline TFX à l'aide d'un orchestrateur pris en charge comme Airflow ou Kubeflow.
Déployer le modèle : Utilisez le composant Pusher pour déployer les modèles entraînés vers des cibles telles que TensorFlow Serving.
Surveiller et itérer : Analysez les performances du modèle et les données pour une amélioration continue.
Cas d'utilisation de TensorFlow Extended (TFX)
- Pipelines ML de production
- Validation et analyse des données
- Ingénierie des caractéristiques
- Entraînement et évaluation de modèles
- Déploiement de modèles
- Automatisation MLOps
- Optimisation des hyperparamètres
- Traitement de données évolutif







