TensorFlow Model Analysis (TFMA) é uma biblioteca para avaliar modelos TensorFlow. Permite aos usuários avaliar seus modelos em grandes quantidades de dados de forma 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.
Instalação
A forma recomendada de instalar o TFMA é usando o pacote PyPI :
pip install tensorflow-model-analysis
Construir TFMA a partir da fonte
Para construir a partir do código-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 construirá a roda do TFMA no diretório dist. Para instalar o wheel do diretório dist execute os comandos
cd dist
pip3 install tensorflow_model_analysis-<version>-py3-none-any.whl
Pacotes noturnos
A 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 exige que o TensorFlow esteja instalado, mas não possui uma dependência explícita do pacote TensorFlow PyPI. Consulte os guias de instalação do TensorFlow para obter instruções.
Para habilitar a visualização do TFMA no Jupyter Notebook:
jupyter nbextension enable --py widgetsnbextension
jupyter nbextension enable --py tensorflow_model_analysis
Laboratório Jupyter
No momento em que escrevo, por causa de https://github.com/pypa/pip/issues/9187, pip install
pode nunca terminar. Nesse caso, você deve reverter o pip para a versão 19 em vez de 20: pip install "pip<20"
.
O uso de uma extensão JupyterLab requer a instalação de dependências na linha de comando. Você pode fazer isso no console da IU do JupyterLab ou na linha de comando. Isso inclui a instalação separada de quaisquer dependências do pacote pip e do plug-in JupyterLab labextension, e os números de versão devem ser compatíveis.
Os exemplos abaixo usam 0.27.0. Verifique as versões disponíveis abaixo para usar as mais recentes.
Laboratório 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
Laboratório 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
Solução de problemas
Verifique os pacotes pip:
pip list
Verifique as extensões:
jupyter labextension list
Dependências notáveis
O TensorFlow é obrigatório.
Apache Beam é necessário; é a forma como a computação distribuída eficiente é suportada. Por padrão, o Apache Beam é executado em modo local, mas também pode ser executado em modo distribuído usando o Google Cloud Dataflow e outros executores do Apache Beam .
Apache Arrow também é necessário. TFMA usa Arrow para representar dados internamente para fazer uso de funções numpy vetorizadas.
Começando
Para obter instruções sobre como usar o TFMA, consulte o guia de primeiros passos .
Versões compatíveis
A tabela a seguir mostra as versões do pacote TFMA que são compatíveis entre si. Isto é determinado pela nossa estrutura de testes, mas outras combinações não testadas também podem funcionar.
análise de modelo de tensorflow | feixe apache[gcp] | Pyarrow | fluxo tensor | metadados de tensorflow | tfx-bsl |
---|---|---|---|---|---|
Mestre GitHub | 2.47.0 | 10.0.0 | todas as noites (2.x) | 1.15.0 | 1.15.1 |
0,46,0 | 2.47.0 | 10.0.0 | 2.15 | 1.15.0 | 1.15.1 |
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 / 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 |
Questões
Por favor, direcione qualquer dúvida sobre como trabalhar com TFMA para Stack Overflow usando a tag tensorflow-model-análise .