Transformation TensorFlow

Voir sur GitHub

TensorFlow Transform est une bibliothèque permettant de prétraiter les données avec TensorFlow. tf.Transform est utile pour les données qui nécessitent un passage complet, telles que :

  • Normalisez une valeur d’entrée par moyenne et écart type.
  • Convertissez des chaînes en entiers en générant un vocabulaire sur toutes les valeurs d'entrée.
  • Convertissez les flottants en nombres entiers en les attribuant à des compartiments en fonction de la distribution des données observée.

TensorFlow prend en charge de manière intégrée les manipulations sur un seul exemple ou un lot d'exemples. tf.Transform étend ces fonctionnalités pour prendre en charge les passes complètes sur les exemples de données.

La sortie de tf.Transform est exportée sous forme de graphique TensorFlow à utiliser pour la formation et le service. L'utilisation du même graphique pour l'entraînement et le service peut éviter les biais puisque les mêmes transformations sont appliquées dans les deux étapes.

Pour une introduction à tf.Transform , consultez la section tf.Transform de la conférence TFX Dev Summit sur TFX ( lien ).

Installation

Le package PyPI tensorflow-transform est la méthode recommandée pour installer tf.Transform :

pip install tensorflow-transform

Construire TFT à partir des sources

Pour créer à partir des sources, suivez les étapes suivantes : Créez un environnement virtuel en exécutant les commandes

python3 -m venv <virtualenv_name>
source <virtualenv_name>/bin/activate
pip3 install setuptools wheel
git clone https://github.com/tensorflow/transform.git
cd transform
python3 setup.py bdist_wheel

Cela construira la roue TFT dans le répertoire dist. Pour installer la roue à partir du répertoire dist, exécutez les commandes

cd dist
pip3 install tensorflow_transform-<version>-py3-none-any.whl

Forfaits de nuit

TFT héberge également des packages nocturnes sur https://pypi-nightly.tensorflow.org sur Google Cloud. Pour installer le dernier package nocturne, veuillez utiliser la commande suivante :

pip install --extra-index-url https://pypi-nightly.tensorflow.org/simple tensorflow-transform

Cela installera les packages nocturnes pour les principales dépendances de TFT telles que TensorFlow Metadata (TFMD), TFX Basic Shared Libraries (TFX-BSL).

Dépendances notables

TensorFlow est requis.

Apache Beam est requis ; c'est ainsi que le calcul distribué efficace est pris en charge. Par défaut, Apache Beam s'exécute en mode local mais peut également s'exécuter en mode distribué à l'aide de Google Cloud Dataflow et d'autres exécuteurs Apache Beam.

Apache Arrow est également requis. TFT utilise Arrow pour représenter les données en interne afin d'utiliser des fonctions numpy vectorisées.

Versions compatibles

Le tableau suivant présente les versions du package tf.Transform compatibles les unes avec les autres. Ceci est déterminé par notre cadre de test, mais d'autres combinaisons non testées peuvent également fonctionner.

transformation de flux tensoriel Apache-beam[gcp] flèche flux tensoriel métadonnées tensorflow tfx-bsl
Maître GitHub 2.47.0 10.0.0 tous les soirs (2.x) 1.15.0 1.15.1
1.15.0 2.47.0 10.0.0 2.15 1.15.0 1.15.1
1.14.0 2.47.0 10.0.0 2.13 1.14.0 1.14.0
1.13.0 2.41.0 6.0.0 2.12 1.13.1 1.13.0
1.12.0 2.41.0 6.0.0 2.11 1.12.0 1.12.0
1.11.0 2.41.0 6.0.0 1.15.5 / 2.10 1.11.0 1.11.0
1.10.0 2.40.0 6.0.0 1.15.5 / 2.9 1.10.0 1.10.0
1.9.0 2.38.0 5.0.0 1.15.5 / 2.9 1.9.0 1.9.0
1.8.0 2.38.0 5.0.0 1.15.5 / 2.8 1.8.0 1.8.0
1.7.0 2.36.0 5.0.0 1.15.5 / 2.8 1.7.0 1.7.0
1.6.1 2.35.0 5.0.0 1.15.5 / 2.8 1.6.0 1.6.0
1.6.0 2.35.0 5.0.0 1.15.5 / 2.7 1.6.0 1.6.0
1.5.0 2.34.0 5.0.0 1.15.2 / 2.7 1.5.0 1.5.0
1.4.1 2.33.0 4.0.1 1.15.2 / 2.6 1.4.0 1.4.0
1.4.0 2.33.0 4.0.1 1.15.2 / 2.6 1.4.0 1.4.0
1.3.0 2.31.0 2.0.0 1.15.2 / 2.6 1.2.0 1.3.0
1.2.0 2.31.0 2.0.0 1.15.2 / 2.5 1.2.0 1.2.0
1.1.1 2.29.0 2.0.0 1.15.2 / 2.5 1.1.0 1.1.1
1.1.0 2.29.0 2.0.0 1.15.2 / 2.5 1.1.0 1.1.0
1.0.0 2.29.0 2.0.0 1,15 / 2,5 1.0.0 1.0.0
0.30.0 2.28.0 2.0.0 1,15 / 2,4 0.30.0 0.30.0
0.29.0 2.28.0 2.0.0 1,15 / 2,4 0.29.0 0.29.0
0.28.0 2.28.0 2.0.0 1,15 / 2,4 0.28.0 0.28.1
0.27.0 2.27.0 2.0.0 1,15 / 2,4 0.27.0 0.27.0
0.26.0 2.25.0 0.17.0 1,15 / 2,3 0.26.0 0.26.0
0.25.0 2.25.0 0.17.0 1,15 / 2,3 0.25.0 0.25.0
0.24.1 2.24.0 0.17.0 1,15 / 2,3 0.24.0 0.24.1
0.24.0 2.23.0 0.17.0 1,15 / 2,3 0.24.0 0.24.0
0.23.0 2.23.0 0.17.0 1,15 / 2,3 0.23.0 0.23.0
0.22.0 2.20.0 0.16.0 1,15 / 2,2 0.22.0 0.22.0
0.21.2 2.17.0 0.15.0 1,15 / 2,1 0.21.0 0.21.3
0.21.0 2.17.0 0.15.0 1,15 / 2,1 0.21.0 0.21.0
0.15.0 2.16.0 0.14.0 1,15 / 2,0 0.15.0 0.15.0
0.14.0 2.14.0 0.14.0 1.14 0.14.0 n / A
0.13.0 2.11.0 n / A 1.13 0.12.1 n / A
0.12.0 2.10.0 n / A 1.12 0.12.0 n / A
0.11.0 2.8.0 n / A 1.11 0.9.0 n / A
0.9.0 2.6.0 n / A 1.9 0.9.0 n / A
0.8.0 2.5.0 n / A 1.8 n / A n / A
0.6.0 2.4.0 n / A 1.6 n / A n / A
0.5.0 2.3.0 n / A 1,5 n / A n / A
0.4.0 2.2.0 n / A 1.4 n / A n / A
0.3.1 2.1.1 n / A 1.3 n / A n / A
0.3.0 2.1.1 n / A 1.3 n / A n / A
0.1.10 2.0.0 n / A 1.0 n / A n / A

Questions

Veuillez adresser toute question sur l'utilisation de tf.Transform vers Stack Overflow à l'aide de la balise tensorflow-transform .