Analiza modelu TensorFlow (TFMA) to biblioteka do oceny modeli TensorFlow. Umożliwia użytkownikom ocenę swoich modeli na dużych ilościach danych w sposób rozproszony, przy użyciu tych samych metryk zdefiniowanych w ich trainerze. Metryki te można obliczać na różnych fragmentach danych i wizualizować w notatnikach Jupyter.
Instalacja
Zalecanym sposobem instalacji TFMA jest użycie pakietu PyPI :
pip install tensorflow-model-analysis
Zbuduj TFMA ze źródła
Aby zbudować ze źródła, wykonaj następujące kroki:
Zainstaluj protokół zgodnie z podanym linkiem: protoc
Utwórz środowisko wirtualne, uruchamiając polecenia
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
Spowoduje to zbudowanie koła TFMA w katalogu dist. Aby zainstalować koło z katalogu dist, uruchom polecenia
cd dist
pip3 install tensorflow_model_analysis-<version>-py3-none-any.whl
Pakiety nocne
TFMA obsługuje również pakiety nocne pod adresem https://pypi-nightly.tensorflow.org w Google Cloud. Aby zainstalować najnowszy pakiet nightly, użyj następującego polecenia:
pip install -i https://pypi-nightly.tensorflow.org/simple tensorflow-model-analysis
Spowoduje to zainstalowanie pakietów nocnych dla głównych zależności TFMA, takich jak metadane TensorFlow (TFMD), podstawowe biblioteki współdzielone TFX (TFX-BSL).
Obecnie TFMA wymaga zainstalowania TensorFlow, ale nie ma wyraźnej zależności od pakietu TensorFlow PyPI. Instrukcje można znaleźć w przewodnikach instalacji TensorFlow .
Aby włączyć wizualizację TFMA w Jupyter Notebook:
jupyter nbextension enable --py widgetsnbextension
jupyter nbextension enable --py tensorflow_model_analysis
Laboratorium Jupytera
W chwili pisania, z powodu https://github.com/pypa/pip/issues/9187, pip install
może nigdy się nie zakończyć. W takim przypadku powinieneś przywrócić pip do wersji 19 zamiast 20: pip install "pip<20"
.
Korzystanie z rozszerzenia JupyterLab wymaga zainstalowania zależności w wierszu poleceń. Możesz to zrobić w konsoli w interfejsie użytkownika JupyterLab lub w wierszu poleceń. Obejmuje to oddzielną instalację wszelkich zależności pakietu pip i zależności wtyczki labextension JupyterLab, a numery wersji muszą być zgodne.
W poniższych przykładach użyto wersji 0.27.0. Sprawdź dostępne wersje poniżej, aby skorzystać z najnowszej.
Laboratorium Jupytera 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
Laboratorium Jowisza 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
Rozwiązywanie problemów
Sprawdź pakiety pip:
pip list
Sprawdź rozszerzenia:
jupyter labextension list
Godne uwagi zależności
Wymagany jest TensorFlow.
Wymagany jest Apache Beam ; w ten sposób obsługiwane są wydajne obliczenia rozproszone. Domyślnie Apache Beam działa w trybie lokalnym, ale może również działać w trybie rozproszonym, korzystając z Google Cloud Dataflow i innych modułów uruchamiających Apache Beam.
Wymagany jest także Apache Arrow . TFMA używa Arrow do wewnętrznej reprezentacji danych w celu wykorzystania wektorowych funkcji numpy.
Pierwsze kroki
Instrukcje dotyczące korzystania z TFMA można znaleźć w przewodniku wprowadzającym .
Kompatybilne wersje
W poniższej tabeli przedstawiono wersje pakietów TFMA, które są ze sobą kompatybilne. Jest to określane w naszych ramach testowych, ale inne nieprzetestowane kombinacje mogą również działać.
analiza modelu tensorflow | Apache-beam[gcp] | pirar | przepływ tensorowy | metadane tensorflow | tfx-bsl |
---|---|---|---|---|---|
Mistrz GitHuba | 2.47.0 | 10.0.0 | co noc (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 | nie dotyczy | 0.15.1 |
0.15.3 | 2.16.0 | 0.15.0 | 1,15 / 2,0 | nie dotyczy | 0.15.1 |
0.15.2 | 2.16.0 | 0.15.0 | 1,15 / 2,0 | nie dotyczy | 0.15.1 |
0.15.1 | 2.16.0 | 0.15.0 | 1,15 / 2,0 | nie dotyczy | 0.15.0 |
0.15.0 | 2.16.0 | 0.15.0 | 1,15 | nie dotyczy | nie dotyczy |
0.14.0 | 2.14.0 | nie dotyczy | 1.14 | nie dotyczy | nie dotyczy |
0.13.1 | 2.11.0 | nie dotyczy | 1.13 | nie dotyczy | nie dotyczy |
0.13.0 | 2.11.0 | nie dotyczy | 1.13 | nie dotyczy | nie dotyczy |
0.12.1 | 2.10.0 | nie dotyczy | 1.12 | nie dotyczy | nie dotyczy |
0.12.0 | 2.10.0 | nie dotyczy | 1.12 | nie dotyczy | nie dotyczy |
0.11.0 | 2.8.0 | nie dotyczy | 1.11 | nie dotyczy | nie dotyczy |
0.9.2 | 2.6.0 | nie dotyczy | 1.9 | nie dotyczy | nie dotyczy |
0.9.1 | 2.6.0 | nie dotyczy | 1.10 | nie dotyczy | nie dotyczy |
0.9.0 | 2.5.0 | nie dotyczy | 1.9 | nie dotyczy | nie dotyczy |
0.6.0 | 2.4.0 | nie dotyczy | 1.6 | nie dotyczy | nie dotyczy |
Pytania
Wszelkie pytania dotyczące pracy z TFMA prosimy kierować do Stack Overflow za pomocą tagu tensorflow-model-analytic .