Análisis del modelo TensorFlow

TensorFlow Model Analysis (TFMA) es una biblioteca para evaluar modelos de TensorFlow. Permite a los usuarios evaluar sus modelos en grandes cantidades de datos de forma distribuida, utilizando las mismas métricas definidas en su entrenador. Estas métricas se pueden calcular a partir de diferentes fragmentos de datos y visualizarse en cuadernos de Jupyter.

Explorador de métricas de corte TFMA

Instalación

La forma recomendada de instalar TFMA es utilizando el paquete PyPI :

pip install tensorflow-model-analysis

Construya TFMA desde la fuente

Para compilar desde el código fuente, siga los siguientes pasos:

Instale el protocolo según el enlace mencionado: protocolo

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/model-analysis.git
cd model-analysis
python3 setup.py bdist_wheel

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

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

Paquetes nocturnos

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

pip install -i https://pypi-nightly.tensorflow.org/simple tensorflow-model-analysis

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

Actualmente, TFMA requiere que TensorFlow esté instalado pero no tiene una dependencia explícita del paquete TensorFlow PyPI. Consulte las guías de instalación de TensorFlow para obtener instrucciones.

Para habilitar la visualización TFMA en Jupyter Notebook:

  jupyter nbextension enable --py widgetsnbextension
  jupyter nbextension enable --py tensorflow_model_analysis

Laboratorio Jupyter

Al momento de escribir este artículo, debido a https://github.com/pypa/pip/issues/9187, es posible que pip install nunca finalice. En ese caso, deberías revertir pip a la versión 19 en lugar de 20: pip install "pip<20" .

El uso de una extensión de JupyterLab requiere instalar dependencias en la línea de comando. Puede hacer esto dentro de la consola en la interfaz de usuario de JupyterLab o en la línea de comando. Esto incluye instalar por separado cualquier dependencia del paquete pip y las dependencias del complemento de extensión de laboratorio de JupyterLab, y los números de versión deben ser compatibles.

Los ejemplos siguientes utilizan 0.27.0. Consulte las versiones disponibles a continuación para utilizar la última.

Laboratorio Jupyter 1.2.x

pip install tensorflow_model_analysis==0.27.0
jupyter labextension install tensorflow_model_analysis@0.27.0
jupyter labextension install @jupyter-widgets/jupyterlab-manager@1.1

Laboratorio Jupyter 2

pip install tensorflow_model_analysis==0.27.0
jupyter labextension install tensorflow_model_analysis@0.27.0
jupyter labextension install @jupyter-widgets/jupyterlab-manager@2

Solución de problemas

Verifique los paquetes de pips:

pip list

Consultar extensiones:

jupyter labextension list

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 . TFMA usa Arrow para representar datos internamente con el fin de hacer uso de funciones numerosas vectorizadas.

Empezando

Para obtener instrucciones sobre el uso de TFMA, consulte la guía de introducción .

Versiones compatibles

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

análisis-modelo-tensorflow 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.14.0 1.14.0
0.45.0 2.47.0 10.0.0 2.13 1.14.0 1.14.0
0.44.0 2.40.0 6.0.0 2.12 1.13.1 1.13.0
0.43.0 2.40.0 6.0.0 2.11 1.12.0 1.12.0
0.42.0 2.40.0 6.0.0 1,15 / 2,10 1.11.0 1.11.0
0.41.1 2.40.0 6.0.0 1,15 / 2,9 1.10.0 1.10.1
0.41.0 2.40.0 6.0.0 1,15 / 2,9 1.10.0 1.10.1
0.40.0 2.38.0 5.0.0 1,15 / 2,9 1.9.0 1.9.0
0.39.0 2.38.0 5.0.0 1,15 / 2,8 1.8.0 1.8.0
0.38.0 2.36.0 5.0.0 1,15 / 2,8 1.7.0 1.7.0
0.37.0 2.35.0 5.0.0 1,15 / 2,7 1.6.0 1.6.0
0.36.0 2.34.0 5.0.0 1,15 / 2,7 1.5.0 1.5.0
0.35.0 2.33.0 5.0.0 1,15 / 2,6 1.4.0 1.4.0
0.34.1 2.32.0 2.0.0 1,15 / 2,6 1.2.0 1.3.0
0.34.0 2.31.0 2.0.0 1,15 / 2,6 1.2.0 1.3.1
0.33.0 2.31.0 2.0.0 1,15 / 2,5 1.2.0 1.2.0
0.32.1 2.29.0 2.0.0 1,15 / 2,5 1.1.0 1.1.1
0.32.0 2.29.0 2.0.0 1,15 / 2,5 1.1.0 1.1.0
0.31.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.0
0.27.0 2.27.0 2.0.0 1,15 / 2,4 0.27.0 0.27.0
0.26.1 2.28.0 0.17.0 1,15 / 2,3 0.26.0 0.26.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.3 2.24.0 0.17.0 1,15 / 2,3 0.24.0 0.24.1
0.24.2 2.23.0 0.17.0 1,15 / 2,3 0.24.0 0.24.0
0.24.1 2.23.0 0.17.0 1,15 / 2,3 0.24.0 0.24.0
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.2 2.20.0 0.16.0 1,15 / 2,2 0.22.2 0.22.0
0.22.1 2.20.0 0.16.0 1,15 / 2,2 0.22.2 0.22.0
0.22.0 2.20.0 0.16.0 1,15 / 2,2 0.22.0 0.22.0
0.21.6 2.19.0 0.15.0 1.15 / 2.1 0.21.0 0.21.3
0.21.5 2.19.0 0.15.0 1.15 / 2.1 0.21.0 0.21.3
0.21.4 2.19.0 0.15.0 1.15 / 2.1 0.21.0 0.21.3
0.21.3 2.17.0 0.15.0 1.15 / 2.1 0.21.0 0.21.0
0.21.2 2.17.0 0.15.0 1.15 / 2.1 0.21.0 0.21.0
0.21.1 2.17.0 0.15.0 1.15 / 2.1 0.21.0 0.21.0
0.21.0 2.17.0 0.15.0 1.15 / 2.1 0.21.0 0.21.0
0.15.4 2.16.0 0.15.0 1.15 / 2.0 n / A 0.15.1
0.15.3 2.16.0 0.15.0 1.15 / 2.0 n / A 0.15.1
0.15.2 2.16.0 0.15.0 1.15 / 2.0 n / A 0.15.1
0.15.1 2.16.0 0.15.0 1.15 / 2.0 n / A 0.15.0
0.15.0 2.16.0 0.15.0 1.15 n / A n / A
0.14.0 2.14.0 n / A 1.14 n / A n / A
0.13.1 2.11.0 n / A 1.13 n / A n / A
0.13.0 2.11.0 n / A 1.13 n / A n / A
0.12.1 2.10.0 n / A 1.12 n / A n / A
0.12.0 2.10.0 n / A 1.12 n / A n / A
0.11.0 2.8.0 n / A 1.11 n / A n / A
0.9.2 2.6.0 n / A 1.9 n / A n / A
0.9.1 2.6.0 n / A 1.10 n / A n / A
0.9.0 2.5.0 n / A 1.9 n / A n / A
0.6.0 2.4.0 n / A 1.6 n / A n / A

Preguntas

Dirija cualquier pregunta sobre cómo trabajar con TFMA a Stack Overflow utilizando la etiqueta tensorflow-model-analysis .