Die TensorFlow-Modellanalyse (TFMA) ist eine Bibliothek zur Bewertung von TensorFlow-Modellen. Benutzer können ihre Modelle anhand großer Datenmengen auf verteilte Weise bewerten, wobei dieselben in ihrem Trainer definierten Metriken verwendet werden. Diese Metriken können über verschiedene Datenscheiben berechnet und in Jupyter-Notizbüchern visualisiert werden.
Installation
Die empfohlene Methode zur Installation von TFMA ist die Verwendung des PyPI-Pakets :
pip install tensorflow-model-analysis
Erstellen Sie TFMA aus dem Quellcode
Führen Sie die folgenden Schritte aus, um aus dem Quellcode zu erstellen:
Installieren Sie das Protokoll gemäß dem angegebenen Link: Protokoll
Erstellen Sie eine virtuelle Umgebung, indem Sie die Befehle ausführen
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
Dadurch wird das TFMA-Rad im Verzeichnis dist erstellt. Führen Sie die Befehle aus, um das Rad aus dem Verzeichnis dist zu installieren
cd dist
pip3 install tensorflow_model_analysis-<version>-py3-none-any.whl
Nächtliche Pakete
TFMA hostet auch nächtliche Pakete unter https://pypi-nightly.tensorflow.org in Google Cloud. Verwenden Sie den folgenden Befehl, um das neueste nächtliche Paket zu installieren:
pip install -i https://pypi-nightly.tensorflow.org/simple tensorflow-model-analysis
Dadurch werden die nächtlichen Pakete für die Hauptabhängigkeiten von TFMA wie TensorFlow-Metadaten (TFMD) und TFX Basic Shared Libraries (TFX-BSL) installiert.
Derzeit erfordert TFMA die Installation von TensorFlow, ist jedoch nicht explizit vom TensorFlow PyPI-Paket abhängig. Anweisungen finden Sie in den TensorFlow-Installationsanleitungen .
So aktivieren Sie die TFMA-Visualisierung in Jupyter Notebook:
jupyter nbextension enable --py widgetsnbextension
jupyter nbextension enable --py tensorflow_model_analysis
Jupyter Lab
Zum pip install
des Schreibens wird die pip install
aufgrund von https://github.com/pypa/pip/issues/9187 möglicherweise nie abgeschlossen. In diesem Fall sollten Sie pip auf Version 19 anstatt auf 20 pip install "pip<20"
: pip install "pip<20"
.
Für die Verwendung einer JupyterLab-Erweiterung müssen Abhängigkeiten in der Befehlszeile installiert werden. Sie können dies in der Konsole in der JupyterLab-Benutzeroberfläche oder in der Befehlszeile tun. Dies umfasst die separate Installation von Pip-Paketabhängigkeiten und JupyterLab Labextension-Plugin-Abhängigkeiten. Die Versionsnummern müssen kompatibel sein.
In den folgenden Beispielen wird 0,27,0 verwendet. Überprüfen Sie die verfügbaren Versionen unten, um die neuesten zu verwenden.
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
Fehlerbehebung
Überprüfen Sie die Pip-Pakete:
pip list
Erweiterungen prüfen:
jupyter labextension list
Bemerkenswerte Abhängigkeiten
TensorFlow ist erforderlich.
Apache Beam ist erforderlich; Auf diese Weise wird eine effiziente verteilte Berechnung unterstützt. Standardmäßig wird Apache Beam im lokalen Modus ausgeführt, kann jedoch auch im verteilten Modus mit Google Cloud Dataflow und anderen Apache Beam- Läufern ausgeführt werden .
Apache Arrow ist ebenfalls erforderlich. TFMA verwendet Arrow, um Daten intern darzustellen, um vektorisierte Numpy-Funktionen zu verwenden.
Einstieg
Anweisungen zur Verwendung von TFMA finden Sie in der ersten Schritte Führung .
Kompatible Versionen
Die folgende Tabelle enthält die TFMA-Paketversionen, die miteinander kompatibel sind. Dies wird durch unser Testframework bestimmt, aber auch andere nicht getestete Kombinationen können funktionieren.
Tensorflow-Modell-Analyse | Apache-Strahl [gcp] | Pyarrow | Tensorflow | Tensorflow-Metadaten | tfx-bsl |
---|---|---|---|---|---|
GitHub-Master | 2.28.0 | 2.0.0 | jede Nacht (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 |
Fragen
Bei Fragen zur Arbeit mit TFMA wenden Sie sich bitte mithilfe des Tensorflow-Modellanalyse- Tags an Stack Overflow .