O Dia da Comunidade de ML é dia 9 de novembro! Junte-nos para atualização de TensorFlow, JAX, e mais Saiba mais

Análise de modelo do TensorFlow

TensorFlow Modelo de Análise (TFMA) é uma biblioteca para avaliar modelos TensorFlow. Ele permite que os usuários avaliem seus modelos em grandes quantidades de dados de maneira distribuída, usando as mesmas métricas definidas em seu treinador. Essas métricas podem ser calculadas em diferentes fatias de dados e visualizadas em notebooks Jupyter.

TFMA Slicing Metrics Browser

Instalação

A maneira recomendada para instalar TFMA está usando o pacote PyPI :

pip install tensorflow-model-analysis

Construir TFMA a partir da fonte

Para construir a partir da fonte, siga as seguintes etapas:

Instale o PROTOC conforme o link mencionado: PROTOC

Crie um ambiente virtual executando os 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

Isso irá construir a roda do TFMA no diretório dist. Para instalar o wheel a partir do diretório dist execute os comandos

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

Pacotes noturnos

TFMA também hospeda pacotes noturnos em https://pypi-nightly.tensorflow.org no Google Cloud. Para instalar o pacote noturno mais recente, use o seguinte comando:

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

Isso instalará os pacotes noturnos para as principais dependências do TFMA, como TensorFlow Metadata (TFMD), TFX Basic Shared Libraries (TFX-BSL).

Atualmente, o TFMA requer que o TensorFlow esteja instalado, mas não tem uma dependência explícita do pacote TensorFlow PyPI. Veja a TensorFlow instalar guias para obter instruções.

Para habilitar a visualização TFMA no Jupyter Notebook:

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

Jupyter Lab

Como de escrever, por causa da https://github.com/pypa/pip/issues/9187, pip install poderia nunca terminar. Nesse caso, você deve reverter pip para a versão 19 em vez de 20: pip install "pip<20" .

Usar uma extensão JupyterLab requer a instalação de dependências na linha de comando. Você pode fazer isso no console na IU do JupyterLab ou na linha de comando. Isso inclui a instalação separada de quaisquer dependências do pacote pip e dependências do plugin JupyterLab labextension, e os números de versão devem ser compatíveis.

Os exemplos abaixo usam 0.27.0. Verifique disponíveis versões abaixo para usar a ú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

Jupyter Lab 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

Solução de problemas

Verifique os pacotes de pip:

pip list

Verifique as extensões:

jupyter labextension list

Dependências Notáveis

O TensorFlow é obrigatório.

Apache feixe é necessária; é a forma como a computação distribuída eficiente é suportada. Por padrão, o Apache feixe é executado em modo local, mas também pode ser executado em modo distribuído usando o Google Cloud Dataflow e outros Apache Feixe corredores .

Apache Seta também é necessária. TFMA usa Arrow para representar dados internamente para fazer uso de funções numpy vetorizadas.

Começando

Para obter instruções sobre como usar TFMA, consulte o guia de primeiros get .

Versões Compatíveis

A tabela a seguir mostra as versões do pacote TFMA que são compatíveis entre si. Isso é determinado por nossa estrutura de testes, mas outras combinações não testadas também podem trabalhar.

tensorflow-model-analysis apache-beam [gcp] pyarrow tensorflow tensorflow-metadata tfx-bsl
Mestre GitHub 2,32,0 2.0.0 todas as noites (1.x / 2.x) 1.2.0 1.3.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 / D 0.15.1
0.15.3 2.16.0 0,15,0 1,15 / 2,0 n / D 0.15.1
0,15,2 2.16.0 0,15,0 1,15 / 2,0 n / D 0.15.1
0.15.1 2.16.0 0,15,0 1,15 / 2,0 n / D 0,15,0
0,15,0 2.16.0 0,15,0 1,15 n / D n / D
0,14,0 2.14.0 n / D 1,14 n / D n / D
0.13.1 2.11.0 n / D 1,13 n / D n / D
0,13,0 2.11.0 n / D 1,13 n / D n / D
0,12,1 2.10.0 n / D 1,12 n / D n / D
0,12,0 2.10.0 n / D 1,12 n / D n / D
0.11.0 2.8.0 n / D 1,11 n / D n / D
0.9.2 2.6.0 n / D 1,9 n / D n / D
0.9.1 2.6.0 n / D 1,10 n / D n / D
0.9.0 2.5.0 n / D 1,9 n / D n / D
0,6.0 2.4.0 n / D 1,6 n / D n / D

Perguntas

Todas as perguntas sobre como trabalhar com TFMA para Stack Overflow usando o tensorflow-model-análise tag.