O TensorFlow Model Analysis (TFMA) é uma biblioteca para avaliar modelos do TensorFlow. Ele permite que os usuários avaliem 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 maneira recomendada de instalar o TFMA é usando o pacote PyPI :
pip install tensorflow-model-analysis
Construir TFMA a partir da fonte
Para compilar a partir do código-fonte, siga os seguintes passos:
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 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
O 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 tem 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
Até o momento, por causa de https://github.com/pypa/pip/issues/9187, a 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 na interface do usuário do JupyterLab ou na linha de comando. Isso inclui instalar separadamente quaisquer dependências do pacote pip e dependências 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 de pip:
pip list
Verifique as extensões:
jupyter labextension list
Dependências notáveis
O TensorFlow é obrigatório.
O Apache Beam é necessário; é a forma como a computação distribuída eficiente é suportada. Por padrão, o Apache Beam é executado no modo local, mas também pode ser executado no modo distribuído usando o Google Cloud Dataflow e outros executores do Apache Beam .
Apache Arrow também é necessário. O TFMA usa a seta 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 introdução.
Versões Compatíveis
A tabela a seguir são as versões do pacote TFMA que são compatíveis entre si. Isso é determinado por nossa estrutura de teste, mas outras combinações não testadas também podem funcionar.
análise de modelo de fluxo de tensor | apache-beam[gcp] | pyarrow | tensorflow | tensorflow-metadados | tfx-bsl |
---|---|---|---|---|---|
Mestre do GitHub | 2.38.0 | 5.0.0 | todas as noites (1.x/2.x) | 1.8.0 | 1.8.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 quaisquer dúvidas sobre como trabalhar com o TFMA para o Stack Overflow usando a tag tensorflow-model-analysis .