Nachdem Sie ein Modell erstellt (trainiert) haben, können Sie das benutzerdefinierte Modell exportieren.
Nachdem Sie es exportiert haben, können Sie es auf einem Gerät bereitstellen.
Sie können ein Bildklassifizierungsmodell in den folgenden Formaten exportieren:
- TensorFlow Lite
- TensorFlow SavedModel zur Verwendung in einem Docker-Container
- Edge TPU compiled TensorFlow Lite
- TensorFlow.js for Web
Auf Geräte exportieren
TensorFlow Lite-Modelle
Web-UI
Öffnen Sie die Vision Dashboard und klicken Sie in der linken Navigationsleiste auf das Glühbirnensymbol, um die verfügbaren Modelle aufzurufen.
Wählen Sie zum Anzeigen der Modelle für ein anderes Projekt das Projekt in der Dropdown-Liste oben rechts in der Titelleiste aus.
Klicken Sie auf die Zeile für das Modell, das Sie verwenden möchten, um die Bilder mit Labels zu versehen.
Klicken Sie auf den Tab Testen und verwenden direkt unter der Titelleiste.
Wählen Sie im Bereich Modell verwenden die Option TF Lite aus. Nachdem Sie die Option TF Lite ausgewählt und den Cloud Storage-Exportspeicherort im Seitenfenster angegeben haben, klicken Sie auf Exportieren, um Ihr Edge TF Lite-Modell zu exportieren.
REST
Geben Sie im Feld "modelFormat"
die Option "tflite"
(Standardeinstellung) an.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- project-id: die ID Ihres GCP-Projekts.
- model-id: die ID Ihres Modells aus der Antwort beim Erstellen des Modells. Sie ist das letzte Element des Modellnamens.
Beispiel:
- Modellname:
projects/project-id/locations/location-id/models/IOD4412217016962778756
- Modell-ID:
IOD4412217016962778756
- Modellname:
- output-storage-bucket: ein Google Cloud Storage-Bucket/-Verzeichnis, in dem Ausgabedateien gespeichert werden. Dies wird in folgender Form angegeben:
gs://bucket/directory/
. Der anfragende Nutzer muss Schreibberechtigung für den Bucket haben.
HTTP-Methode und URL:
POST https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/models/MODEL_ID:export
JSON-Text der Anfrage:
{ "outputConfig": { "modelFormat": "tflite", "gcsDestination": { "outputUriPrefix": "OUTPUT_STORAGE_BUCKET/" }, } }
Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:
curl
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: PROJECT_ID" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/models/MODEL_ID:export"
PowerShell
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "PROJECT_ID" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/models/MODEL_ID:export" | Select-Object -Expand Content
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{ "name": "projects/PROJECT_ID/locations/us-central1/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.automl.v1.OperationMetadata", "createTime": "2019-07-22T21:23:21.643041Z", "updateTime": "2019-07-22T21:23:21.643041Z", "exportModelDetails": { "outputInfo": { "gcsOutputDirectory": "OUTPUT_STORAGE_BUCKET/model-export/icn/tflite-DATASET_NAME-YYYY-MM-DDThh:mm:ss.sssZ" } } } }
Daraufhin wird eine Ordnerstruktur im von Ihnen angegebenen Verzeichnis (CLOUD_STORAGE_BUCKET/[DIRECTORY]) angezeigt. Die erstellte Ordnerstruktur hat folgendes allgemeines Format (Zeitstempel im Format ISO-8601):
CLOUD_STORAGE_BUCKET/model-export/icn/MODEL_TYPE-DATASET_NAME-YYYY-MM-DDThh:mm:ss.sssZ
Beispiel:
CLOUD_STORAGE_BUCKET/model-export/icn/tf-saved-model-DATASET_NAME-2019-07-22T21:25:35.135Z
CLOUD_STORAGE_BUCKET/model-export/icn/tflite-DATASET_NAME-2019-07-22T21:23:18.861Z
Der Ordner enthält ein TensorFlow Lite-Modell mit dem Namen model.tflite
, eine Labeldatei namens dict.txt
und eine tflite_metadata.json
-Datei.
Exportiertes Modell verwenden
Nachdem Sie das AutoML Vision Edge-Modell in einen Google Cloud Storage-Bucket exportiert haben, können Sie es auf Android-Geräten, iOS-Geräten oder Raspberry Pi 3 bereitstellen.
Core ML-Modelle
Web-UI
Öffnen Sie das Vision Dashboard und klicken Sie in der linken Navigationsleiste auf das Glühbirnensymbol, um die verfügbaren Modelle aufzurufen.
Wählen Sie zum Anzeigen der Modelle für ein anderes Projekt das Projekt in der Dropdown-Liste oben rechts in der Titelleiste aus.
Klicken Sie auf die Zeile für das Modell, das Sie verwenden möchten, um die Bilder mit Labels zu versehen.
Klicken Sie auf den Tab Testen und verwenden direkt unter der Titelleiste.
Wählen Sie im Bereich Modell verwenden die Option Core ML aus. Nachdem Sie die Option Core ML ausgewählt und den Cloud Storage-Exportspeicherort im Seitenfenster angegeben haben, klicken Sie auf Exportieren, um das Edge-Modell zu exportieren.
REST
Geben Sie im Feld "modelFormat"
die Option "core_ml"
an.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- project-id: die ID Ihres GCP-Projekts.
- model-id: die ID Ihres Modells aus der Antwort beim Erstellen des Modells. Sie ist das letzte Element des Modellnamens.
Beispiel:
- Modellname:
projects/project-id/locations/location-id/models/IOD4412217016962778756
- Modell-ID:
IOD4412217016962778756
- Modellname:
- output-storage-bucket: ein Google Cloud Storage-Bucket/-Verzeichnis, in dem Ausgabedateien gespeichert werden. Dies wird in folgender Form angegeben:
gs://bucket/directory/
. Der anfragende Nutzer muss Schreibberechtigung für den Bucket haben.
HTTP-Methode und URL:
POST https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/models/MODEL_ID:export
JSON-Text der Anfrage:
{ "outputConfig": { "modelFormat": "core_ml", "gcsDestination": { "outputUriPrefix": "OUTPUT_STORAGE_BUCKET/" }, } }
Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:
curl
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: PROJECT_ID" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/models/MODEL_ID:export"
PowerShell
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "PROJECT_ID" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/models/MODEL_ID:export" | Select-Object -Expand Content
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{ "name": "projects/PROJECT_ID/locations/us-central1/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.automl.v1.OperationMetadata", "createTime": "2019-11-12T22:53:55.290584Z", "updateTime": "2019-11-12T22:53:55.290584Z", "exportModelDetails": { "outputInfo": { "gcsOutputDirectory": "OUTPUT_STORAGE_BUCKET/model-export/icn/core_ml-DATASET_NAME_YYYY-MM-DDThh:mm:ss.sssZ/" } } } }
Daraufhin wird eine Ordnerstruktur im von Ihnen angegebenen Verzeichnis (CLOUD_STORAGE_BUCKET/[DIRECTORY]) angezeigt. Die erstellte Ordnerstruktur hat folgendes allgemeines Format (Zeitstempel im Format ISO-8601):
CLOUD_STORAGE_BUCKET/model-export/icn/MODEL_TYPE-DATASET_NAME-YYYY-MM-DDThh:mm:ss.sssZ
Beispiel:
CLOUD_STORAGE_BUCKET/model-export/icn/tf-saved-model-DATASET_NAME-2019-07-22T21:25:35.135Z
CLOUD_STORAGE_BUCKET/model-export/icn/tflite-DATASET_NAME-2019-07-22T21:23:18.861Z
Der Ordner enthält ein Core ML-Modell mit dem Namen model.mlmodel
und eine Labeldatei dict.txt
.
Exportiertes Modell verwenden
Nachdem Sie das AutoML Vision Edge-Modell in einen Google Cloud Storage-Bucket exportiert haben, können Sie es auf iOS-Geräten bereitstellen.
In einen Container exportieren
Web-UI
Öffnen Sie das Vision Dashboard und klicken Sie in der linken Navigationsleiste auf das Glühbirnensymbol, um die verfügbaren Modelle aufzurufen.
Wenn Sie die Modelle für ein anderes Projekt ansehen möchten, wählen Sie das Projekt in der Dropdown-Liste rechts oben in der Titelleiste aus.
Klicken Sie auf die Zeile für das Modell, das Sie verwenden möchten, um die Bilder mit Labels zu versehen.
Klicken Sie auf den Tab Testen und verwenden direkt unter der Titelleiste.
Wählen Sie im Bereich Modell verwenden die Option Container aus. Nachdem Sie die Option Container ausgewählt und den Cloud Storage-Exportspeicherort im Seitenfenster angegeben haben, klicken Sie auf Exportieren, um Ihr Edge-Modell zu exportieren.
REST
Geben Sie im Feld "modelFormat"
die Option "tf-saved-model"
an.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- project-id: die ID Ihres GCP-Projekts.
- model-id: die ID Ihres Modells aus der Antwort beim Erstellen des Modells. Sie ist das letzte Element des Modellnamens.
Beispiel:
- Modellname:
projects/project-id/locations/location-id/models/IOD4412217016962778756
- Modell-ID:
IOD4412217016962778756
- Modellname:
- output-storage-bucket: ein Google Cloud Storage-Bucket/-Verzeichnis, in dem Ausgabedateien gespeichert werden. Dies wird in folgender Form angegeben:
gs://bucket/directory/
. Der anfragende Nutzer muss Schreibberechtigung für den Bucket haben.
HTTP-Methode und URL:
POST https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/models/MODEL_ID:export
JSON-Text der Anfrage:
{ "outputConfig": { "modelFormat": "tf-saved-model", "gcsDestination": { "outputUriPrefix": "OUTPUT_STORAGE_BUCKET/" }, } }
Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:
curl
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: PROJECT_ID" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/models/MODEL_ID:export"
PowerShell
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "PROJECT_ID" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/models/MODEL_ID:export" | Select-Object -Expand Content
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{ "name": "projects/PROJECT_ID/locations/us-central1/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.automl.v1.OperationMetadata", "createTime": "2019-07-22T21:23:21.643041Z", "updateTime": "2019-07-22T21:23:21.643041Z", "exportModelDetails": { "outputInfo": { "gcsOutputDirectory": "OUTPUT_STORAGE_BUCKET/model-export/icn/tf-saved-model-DATASET_NAME-YYYY-MM-DDThh:mm:ss.sssZ" } } } }
Daraufhin wird eine Ordnerstruktur im von Ihnen angegebenen Verzeichnis (CLOUD_STORAGE_BUCKET/[DIRECTORY]) angezeigt. Die erstellte Ordnerstruktur hat folgendes allgemeines Format (Zeitstempel im Format ISO-8601):
CLOUD_STORAGE_BUCKET/model-export/icn/MODEL_TYPE-DATASET_NAME-YYYY-MM-DDThh:mm:ss.sssZ
Beispiel:
CLOUD_STORAGE_BUCKET/model-export/icn/tf-saved-model-DATASET_NAME-2019-07-22T21:25:35.135Z
CLOUD_STORAGE_BUCKET/model-export/icn/tflite-DATASET_NAME-2019-07-22T21:23:18.861Z
Der Ordner enthält ein TensorFlow-Modell mit dem Namen saved_model.pb
.
Exportiertes Modell verwenden
Nachdem Sie das Modell in einen Google Cloud Storage-Bucket exportiert haben, können Sie mithilfe des exportierten Modells Vorhersagen in einem Docker-Image treffen. Eine Anleitung zum Bereitstellen in einem Container finden Sie hier.
In Edge TPU exportieren
Web-UI
Öffnen Sie das Vision Dashboard und klicken Sie auf das Glühbirnensymbol in der linken Navigationsleiste, um die verfügbaren Modelle anzuzeigen.
Wählen Sie zum Anzeigen der Modelle für ein anderes Projekt das Projekt in der Dropdown-Liste oben rechts in der Titelleiste aus.
Klicken Sie auf die Zeile für das Modell, das Sie verwenden möchten, um die Bilder mit Labels zu versehen.
Wählen Sie den Tab Test und Nutzung direkt unter der Titelleiste aus.
Wählen Sie im Bereich Modell verwenden die Option Coral aus. Nachdem Sie die Option Coral ausgewählt und den Cloud Storage-Exportspeicherort im Seitenfenster angegeben haben, klicken Sie auf Exportieren, um Ihr Edge-Modell zu exportieren.
REST
Geben Sie im Feld "modelFormat"
die Option "edgetpu_tflite"
an.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- project-id: die ID Ihres GCP-Projekts.
- model-id: die ID Ihres Modells aus der Antwort beim Erstellen des Modells. Sie ist das letzte Element des Modellnamens.
Beispiel:
- Modellname:
projects/project-id/locations/location-id/models/IOD4412217016962778756
- Modell-ID:
IOD4412217016962778756
- Modellname:
- output-storage-bucket: ein Google Cloud Storage-Bucket/-Verzeichnis, in dem Ausgabedateien gespeichert werden. Dies wird in folgender Form angegeben:
gs://bucket/directory/
. Der anfragende Nutzer muss Schreibberechtigung für den Bucket haben.
HTTP-Methode und URL:
POST https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/models/MODEL_ID:export
JSON-Text der Anfrage:
{ "outputConfig": { "modelFormat": "edgetpu_tflite", "gcsDestination": { "outputUriPrefix": "OUTPUT_STORAGE_BUCKET/" }, } }
Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:
curl
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: PROJECT_ID" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/models/MODEL_ID:export"
PowerShell
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "PROJECT_ID" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/models/MODEL_ID:export" | Select-Object -Expand Content
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{ "name": "projects/PROJECT_ID/locations/us-central1/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.automl.v1.OperationMetadata", "createTime": "2019-11-12T22:55:03.554806Z", "updateTime": "2019-11-12T22:55:03.554806Z", "exportModelDetails": { "outputInfo": { "gcsOutputDirectory": "OUTPUT_STORAGE_BUCKET/model-export/icn/edgetpu_tflite-DATASET_NAME_YYYY-MM-DDThh:mm:ss.sssZ/" } } } }
Daraufhin wird eine Ordnerstruktur im von Ihnen angegebenen Verzeichnis (CLOUD_STORAGE_BUCKET/[DIRECTORY]) angezeigt. Die erstellte Ordnerstruktur hat folgendes allgemeines Format (Zeitstempel im Format ISO-8601):
CLOUD_STORAGE_BUCKET/model-export/icn/MODEL_TYPE-DATASET_NAME-YYYY-MM-DDThh:mm:ss.sssZ
Beispiel:
CLOUD_STORAGE_BUCKET/model-export/icn/tf-saved-model-DATASET_NAME-2019-07-22T21:25:35.135Z
CLOUD_STORAGE_BUCKET/model-export/icn/tflite-DATASET_NAME-2019-07-22T21:23:18.861Z
Der Ordner enthält ein TensorFlow Lite-Modell mit dem Namen edgetpu_model.tflite
, eine Labeldatei namens dict.txt
und eine tflite_metadata.json
-Datei.
Exportiertes Modell verwenden
Weitere Informationen zur Bereitstellung in Edge TPU finden Sie in der offiziellen Dokumentation von Coral, um eine Inferenz auf die Edge TPU auszuführen.
Für das Web exportieren
Web-UI
-
Öffnen Sie Vision Dashboard und wählen Sie in der seitlichen Navigationsleiste das Glühbirnensymbol aus, um sich die verfügbaren Modelle anzeigen zu lassen.
Wenn Sie die Modelle für ein anderes Projekt ansehen möchten, wählen Sie das Projekt in der Drop-down-Liste rechts oben in der Titelleiste aus.
-
Klicken Sie auf die Zeile für das Modell, das Sie verwenden möchten, um die Bilder mit Labels zu versehen.
-
Wählen Sie den Tab Test & Use (Test und Nutzung) direkt unter der Titelleiste aus.
-
Wählen Sie im Bereich Use your model (Modell verwenden) die Option Tensorflow.js aus. Nachdem Sie die Option Tensorflow.js ausgewählt und im Seitenfenster den Cloud Storage-Exportspeicherort angegeben haben, klicken Sie auf Exportieren, um Ihr webfähiges TensorFlow.js-Modell zu exportieren.
REST
Ersetzen Sie dabei folgende Werte für die Anfragedaten:
- project-id: die ID Ihres GCP-Projekts.
- model-id: die ID Ihres Modells aus der Antwort beim Erstellen des Modells. Sie ist das letzte Element des Modellnamens.
Beispiel:
- Modellname:
projects/project-id/locations/location-id/models/IOD4412217016962778756
- Modell-ID:
IOD4412217016962778756
- Modellname:
- output-storage-bucket: ein Google Cloud Storage-Bucket/-Verzeichnis, in dem Ausgabedateien gespeichert werden. Dies wird in folgender Form angegeben:
gs://bucket/directory/
. Der anfragende Nutzer muss Schreibberechtigung für den Bucket haben.
HTTP-Methode und URL:
POST https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/models/MODEL_ID:export
JSON-Text der Anfrage:
{ "outputConfig": { "modelFormat": "tf_js", "gcsDestination": { "outputUriPrefix": "OUTPUT_STORAGE_BUCKET/" }, } }
Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:
curl
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: project-id" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/models/MODEL_ID:export"
PowerShell
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "project-id" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/models/MODEL_ID:export" | Select-Object -Expand Content
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{ "name": "projects/PROJECT_ID/locations/us-central1/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.automl.v1.OperationMetadata", "createTime": "2019-07-22T21:23:21.643041Z", "updateTime": "2019-07-22T21:23:21.643041Z", "exportModelDetails": { "outputInfo": { "gcsOutputDirectory": "OUTPUT_STORAGE_BUCKET/model-export/icn/tf_js-DATASET_NAME-YYYY-MM-DDThh:mm:ss.sssZ" } } } }
Als Ergebnis sehen Sie einen Ordner in dem von Ihnen bereitgestellten Verzeichnis (USER_GCS_PATH). Der erstellte Ordner wird nach dem Zeitstempel im Format /model-export/icn/tf_js-DATASET_NAME-YYYY-MM-DDThh:mm:ss.sssZ
(z. B. tf_js-edge_model-2019-10-03T17:24:46.999Z
) benannt.
Der Ordner enthält Binärdateien (.bin
), eine Labeldatei mit der Bezeichnung dict.txt
und eine Datei model.json
.