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 manera distribuida, utilizando las mismas métricas definidas en su entrenador. Estas métricas se pueden calcular en diferentes segmentos de datos y visualizar en los cuadernos de Jupyter.
Instalación
La forma recomendada de instalar TFMA es utilizando el paquete PyPI :
pip install tensorflow-model-analysis
Construya TFMA desde la fuente
Para construir desde la 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 aloja 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, debido a https://github.com/pypa/pip/issues/9187, es posible que la pip install
nunca finalice. En ese caso, debería revertir pip a la versión 19 en lugar de 20: pip install "pip<20"
.
El uso de una extensión de JupyterLab requiere la instalación de dependencias en la línea de comandos. Puede hacer esto dentro de la consola en la interfaz de usuario de JupyterLab o en la línea de comandos. Esto incluye instalar por separado las dependencias del paquete pip y las dependencias del complemento labextension de JupyterLab, y los números de versión deben ser compatibles.
Los ejemplos siguientes usan 0.27.0. Consulte las versiones disponibles a continuación para utilizar la última.
Jupyter Lab 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
Compruebe los paquetes de pip:
pip list
Comprobar extensiones:
jupyter labextension list
Dependencias notables
Se requiere TensorFlow.
Se requiere Apache Beam ; es la forma en que se admite la computación distribuida eficiente. Por defecto, Apache Beam se ejecuta en modo local, pero también puede funcionar en modo distribuido utilizando Google Cloud flujo de datos y otros Apache Beam corredores .
También se requiere Apache Arrow . TFMA usa Arrow para representar datos internamente con el fin de hacer uso de funciones numéricas 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 está determinado por nuestro marco de prueba, pero otras combinaciones no probadas también pueden funcionar.
análisis del modelo de tensorflow | apache-beam [gcp] | pyarrow | tensorflow | tensorflow-metadata | tfx-bsl |
---|---|---|---|---|---|
Maestro de GitHub | 2.28.0 | 2.0.0 | todas las noches (1.x / 2.x) | 0.28.0 | 0.28.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.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 usando la etiqueta tensorflow-model-analysis .