Transformación de TensorFlow

Ver en GitHub

TensorFlow Transform es una biblioteca para preprocesar datos con TensorFlow. tf.Transform es útil para datos que requieren un pase completo, como:

  • Normalice un valor de entrada por media y desviación estándar.
  • Convierta cadenas a números enteros generando un vocabulario sobre todos los valores de entrada.
  • Convierta flotantes en números enteros asignándolos a depósitos según la distribución de datos observada.

TensorFlow tiene soporte integrado para manipulaciones en un solo ejemplo o en un lote de ejemplos. tf.Transform amplía estas capacidades para admitir pases completos sobre los datos de ejemplo.

La salida de tf.Transform se exporta como un gráfico de TensorFlow para usarlo en entrenamiento y entrega. Usar el mismo gráfico tanto para el entrenamiento como para el servicio puede evitar sesgos, ya que se aplican las mismas transformaciones en ambas etapas.

Para obtener una introducción a tf.Transform , consulte la sección tf.Transform de la charla TFX Dev Summit sobre TFX ( enlace ).

Instalación

El paquete PyPI tensorflow-transform es la forma recomendada de instalar tf.Transform :

pip install tensorflow-transform

Construya TFT desde la fuente

Para compilar desde el código fuente, siga los siguientes pasos: Cree un entorno virtual ejecutando los comandos

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

Esto construirá la rueda TFT en el directorio dist. Para instalar la rueda desde el directorio dist ejecute los comandos

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

Paquetes nocturnos

TFT también aloja paquetes nocturnos en https://pypi-nightly.tensorflow.org en Google Cloud. Para instalar el último paquete nocturno, utilice el siguiente comando:

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

Esto instalará los paquetes nocturnos para las principales dependencias de TFT, como TensorFlow Metadata (TFMD), TFX Basic Shared Libraries (TFX-BSL).

Dependencias notables

Se requiere TensorFlow.

Se requiere Apache Beam ; es la forma en que se respalda la computación distribuida eficiente. De forma predeterminada, Apache Beam se ejecuta en modo local, pero también puede ejecutarse en modo distribuido utilizando Google Cloud Dataflow y otros ejecutores de Apache Beam.

También se requiere Apache Arrow . TFT usa Arrow para representar datos internamente con el fin de hacer uso de funciones numerosas vectorizadas.

Versiones compatibles

La siguiente tabla son las versiones del paquete tf.Transform que son compatibles entre sí. Esto lo determina nuestro marco de pruebas, pero otras combinaciones no probadas también pueden funcionar.

transformación de flujo tensor haz-apache[gcp] pyarrow flujo tensor metadatos de tensorflow tfx-bsl
Maestro de GitHub 2.47.0 10.0.0 todas las noches (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

Preguntas

Dirija cualquier pregunta sobre cómo trabajar con tf.Transform a Stack Overflow usando la etiqueta tensorflow-transform .