In diesem Dokument wird dargestellt, wie das ShapeMask-Modell mithilfe von Cloud TPU mit dem COCO-Dataset ausgeführt wird.
Bei der folgenden Anleitung wird davon ausgegangen, dass Sie bereits mit dem Ausführen eines Modells auf Cloud TPU vertraut sind. Wenn Sie Cloud TPU noch nicht kennen, finden Sie in der Kurzanleitung eine grundlegende Einführung.
Wenn Sie auf einem TPU Pod-Slice trainieren möchten, lesen Sie Auf TPU Pods trainieren, um mehr über Parameteränderungen für Pod-Slices zu erfahren.
Lernziele
- Cloud Storage-Bucket zum Speichern der Dataset- und Modellausgabe erstellen
- COCO-Dataset vorbereiten
- Compute Engine-VM und einen Cloud TPU-Knoten für das Training und die Bewertung einrichten
- Training und Bewertung auf einer einzelnen Cloud TPU oder einem Cloud TPU Pod ausführen
Kosten
In dieser Anleitung werden die folgenden kostenpflichtigen Komponenten von Google Cloud verwendet:
- Compute Engine
- Cloud TPU
- Cloud Storage
Mit dem Preisrechner können Sie eine Kostenschätzung für Ihre voraussichtliche Nutzung vornehmen.
Hinweis
Bevor Sie mit dieser Anleitung beginnen, prüfen Sie, ob Ihr Google Cloud-Projekt ordnungsgemäß eingerichtet ist.
- Melden Sie sich bei Ihrem Google Cloud-Konto an. Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
-
Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.
-
Die Abrechnung für das Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für ein Projekt aktiviert ist.
-
Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.
-
Die Abrechnung für das Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für ein Projekt aktiviert ist.
In dieser Anleitung werden kostenpflichtige Komponenten der Google Cloud verwendet. Rufen Sie die Seite mit den Cloud TPU-Preisen auf, um Ihre Kosten abzuschätzen. Denken Sie daran, nicht mehr benötigte Ressourcen zu bereinigen, um unnötige Kosten zu vermeiden.
Wenn Sie auf einem TPU Pod-Slice trainieren möchten, lesen Sie Auf TPU Pods trainieren, um mehr über Parameteränderungen für Pod-Slices zu erfahren.
Ressourcen einrichten
Dieser Abschnitt enthält Informationen zur Einrichtung von Cloud Storage-, VM- und Cloud TPU-Ressourcen für diese Anleitung.
Öffnen Sie ein Cloud Shell-Fenster.
Erstellen Sie eine Variable für Ihre Projekt-ID.
export PROJECT_ID=project-id
Konfigurieren Sie die Google Cloud-Befehlszeile für das Projekt, in dem Sie Cloud TPU erstellen möchten.
gcloud config set project ${PROJECT_ID}
Wenn Sie diesen Befehl zum ersten Mal in einer neuen Cloud Shell-VM ausführen, wird die Seite
Authorize Cloud Shell
angezeigt. Klicken Sie aufAuthorize
unten auf der Seite, damitgcloud
GCP API-Aufrufe mit Ihren Anmeldedaten durchführen kann.Erstellen Sie ein Dienstkonto für das Cloud TPU-Projekt.
gcloud beta services identity create --service tpu.googleapis.com --project $PROJECT_ID
Der Befehl gibt ein Cloud TPU-Dienstkonto im folgenden Format zurück:
service-PROJECT_NUMBER@cloud-tpu.iam.gserviceaccount.com
Erstellen Sie mit dem folgenden Befehl einen Cloud Storage-Bucket:
gsutil mb -p ${PROJECT_ID} -c standard -l europe-west4 -b on gs://bucket-name
Dieser Cloud Storage-Bucket speichert die Daten, die Sie zum Trainieren Ihres Modells verwenden, und die Trainingsergebnisse. Das in dieser Anleitung verwendete Tool
gcloud compute tpus execution-groups
richtet Standardberechtigungen für das Cloud TPU-Dienstkonto ein. Wenn Sie weitere Berechtigungen benötigen, können Sie die Berechtigungen auf Zugriffsebene anpassen.Der Bucket-Speicherort muss sich in derselben Region wie die virtuelle Maschine (VM) und der TPU-Knoten befinden. VMs und TPU-Knoten befinden sich in bestimmten Zonen, die Untergruppen innerhalb einer Region sind.
Starten Sie eine Compute Engine-VM-Instanz.
$ gcloud compute tpus execution-groups create --vm-only \ --name=shapemask-tutorial \ --zone=us-central1-a \ --disk-size=300 \ --machine-type=n1-standard-16 \ --tf-version=1.15.5
Beschreibung der Befehls-Flags
vm-only
- Erstellen Sie nur eine VM. Standardmäßig werden mit dem Befehl
gcloud compute tpus execution-groups
eine VM und eine Cloud TPU erstellt. name
- Der Name der zu erstellenden Cloud TPU.
zone
- Die Zone, in der Sie die Cloud TPU erstellen möchten.
disk-size
- Die Größe des Laufwerks in GB der VM, die mit dem Befehl
gcloud compute tpus execution-groups
erstellt wurde. machine-type
- Der Maschinentyp der zu erstellenden Compute Engine-VM.
tf-version
- Die Version von TensorFlow
ctpu
wird auf der VM installiert.
Die von Ihnen angegebene Konfiguration wird angezeigt. Geben Sie y zum Bestätigen oder n zum Abbrechen ein.
Wenn der Befehl
gcloud compute tpus execution-groups
ausgeführt wurde, prüfen Sie, ob die Shell-Eingabeaufforderung vonusername@projectname
inusername@vm-name
geändert wurde. Diese Änderung bedeutet, dass Sie jetzt bei Ihrer Compute Engine-VM angemeldet sind.gcloud compute ssh shapemask-tutorial --zone=us-central1-a
Führen Sie im weiteren Verlauf dieser Anleitung jeden Befehl, der mit
(vm)$
beginnt, in Ihrer Compute Engine-Instanz aus.Erstellen Sie eine Umgebungsvariable zum Speichern Ihres Cloud Storage-Bucket-Speicherorts.
(vm)$ export STORAGE_BUCKET=gs://bucket-name
Erstellen Sie eine Umgebungsvariable für das Datenverzeichnis.
(vm)$ export DATA_DIR=${STORAGE_BUCKET}/coco
Klonen Sie das
tpu
-Repository.(vm)$ git clone -b shapemask https://github.com/tensorflow/tpu/
Installieren Sie die Pakete, die für die Vorverarbeitung der Daten erforderlich sind.
(vm)$ sudo apt-get install -y python3-tk && \ pip3 install --user Cython matplotlib opencv-python-headless pyyaml Pillow && \ pip3 install --user "git+https://github.com/cocodataset/cocoapi#egg=pycocotools&subdirectory=PythonAPI"
COCO-Dataset vorbereiten
Führen Sie das Skript
download_and_preprocess_coco.sh
aus, um das COCO-Dataset in einen Satz von TFRecords (*.tfrecord
) zu konvertieren, der von der Trainingsanwendung erwartet wird.(vm)$ sudo bash /usr/share/tpu/tools/datasets/download_and_preprocess_coco.sh ./data/dir/coco
Dadurch werden die erforderlichen Bibliotheken installiert und das Skript für die Vorverarbeitung ausgeführt. Dann werden verschiedene
*.tfrecord
-Dateien in Ihr lokales Datenverzeichnis ausgegeben.Nachdem Sie die Daten in TFRecords konvertiert haben, kopieren Sie sie mit dem Befehl
gsutil
aus dem lokalen Speicher in den Cloud Storage-Bucket. Die Annotationsdateien müssen ebenfalls kopiert werden. Diese Dateien helfen dabei, die Leistung des Modells zu bewerten.(vm)$ gsutil -m cp ./data/dir/coco/*.tfrecord ${DATA_DIR} (vm)$ gsutil cp ./data/dir/coco/raw-data/annotations/*.json ${DATA_DIR}
Cloud TPU einrichten und starten
Starten Sie mit dem Befehl
gcloud
eine Cloud TPU-Ressource.(vm)$ gcloud compute tpus execution-groups create \ --tpu-only \ --accelerator-type=v3-8 \ --name=shapemask-tutorial \ --zone=us-central1-a \ --tf-version=1.15.5
Beschreibung der Befehls-Flags
tpu-only
- Erstellt die Cloud TPU, ohne eine VM zu erstellen. Standardmäßig werden mit dem Befehl
gcloud compute tpus execution-groups
eine VM und eine Cloud TPU erstellt. accelerator-type
- Der Typ der zu erstellenden Cloud TPU.
name
- Der Name der zu erstellenden Cloud TPU.
zone
- Die Zone, in der Sie die Cloud TPU erstellen möchten.
tf-version
- Die Version von TensorFlow
ctpu
wird auf der VM installiert.
Die von Ihnen angegebene Konfiguration wird angezeigt. Geben Sie y zum Bestätigen oder n zum Abbrechen ein.
Sie erhalten folgende Meldung:
Operation success; not ssh-ing to Compute Engine VM due to --tpu-only flag
. Da Sie die SSH-Schlüsselverteilung bereits abgeschlossen haben, können Sie diese Nachricht ignorieren.Fügen Sie eine Umgebungsvariable für den Namen Ihrer Cloud TPU hinzu.
(vm)$ export TPU_NAME=shapemask-tutorial
Führen Sie das Trainings- und Bewertungs-Skript aus
Erstellen Sie die folgenden Umgebungsvariablen:
(vm)$ export MODEL_DIR=${STORAGE_BUCKET}/shapemask_exp (vm)$ export RESNET_CHECKPOINT=gs://cloud-tpu-checkpoints/shapemask/retinanet/resnet101-checkpoint-2018-02-24 (vm)$ export TRAIN_FILE_PATTERN=${DATA_DIR}/train-* (vm)$ export EVAL_FILE_PATTERN=${DATA_DIR}/val-* (vm)$ export VAL_JSON_FILE=${DATA_DIR}/instances_val2017.json (vm)$ export SHAPE_PRIOR_PATH=gs://cloud-tpu-checkpoints/shapemask/kmeans_class_priors_91x20x32x32.npy (vm)$ export PYTHONPATH=${PYTHONPATH}:$HOME/tpu/models
Führen Sie für das Training das folgende Skript aus.
(vm)$ python3 ~/tpu/models/official/detection/main.py \ --model=shapemask \ --use_tpu=True \ --tpu=${TPU_NAME} \ --num_cores=8 \ --model_dir=${MODEL_DIR} \ --mode="train" \ --eval_after_training=False \ --params_override="{train: {iterations_per_loop: 1000, train_batch_size: 64, total_steps: 1000, learning_rate: {total_steps: 1000, warmup_learning_rate: 0.0067, warmup_steps: 500, init_learning_rate: 0.08, learning_rate_levels: [0.008, 0.0008], learning_rate_steps: [30000, 40000]}, checkpoint: { path: ${RESNET_CHECKPOINT}, prefix: resnet101/ }, train_file_pattern: ${TRAIN_FILE_PATTERN} }, resnet: {resnet_depth: 101}, eval: { val_json_file: ${VAL_JSON_FILE}, eval_file_pattern: ${EVAL_FILE_PATTERN}, eval_samples: 5000 }, shapemask_head: {use_category_for_mask: true, shape_prior_path: ${SHAPE_PRIOR_PATH}}, shapemask_parser: {output_size: [1024, 1024]}, }"
Beschreibung der Befehls-Flags
model
- Das Modell, das trainiert werden soll.
use_tpu
- Legen Sie den Wert
true
fest, um auf einer Cloud TPU zu trainieren. tpu_name
- Der Name der Cloud TPU, die für das Training verwendet werden soll.
num_cores
- Die Anzahl der Cloud TPU-Kerne, die beim Training verwendet werden sollen.
model_dir
- Der Cloud Storage-Bucket, in dem während des Trainings Prüfpunkte und Zusammenfassungen gespeichert werden. Sie können einen vorhandenen Ordner verwenden, um zuvor generierte Prüfpunkte zu laden, die auf einer TPU mit derselben Größe und TensorFlow-Version erstellt wurden.
mode
- Eine der folgenden Werte:
train
,eval
odertrain_and_eval
. eval_after_training
- Legen Sie hier
true
fest, um das Modell nach dem Training auszuwerten. params_override
- Ein JSON-String, der Standardskriptparameter überschreibt. Weitere Informationen zu Skriptparametern finden Sie unter
/usr/share/models/official/vision/detection/main.py
.
An dieser Stelle können Sie entweder diese Anleitung beenden und Ihre GCP-Ressourcen bereinigen oder die Ausführung des Modells auf einem Cloud TPU Pod kennenlernen.
Modell mit Cloud TPU Pods skalieren
Wenn Sie ein Modell mit Cloud TPU Pods skalieren, können Sie schneller Ergebnisse erzielen. Das vollständig unterstützte Mask RCNN-Modell funktioniert mit den folgenden Pod-Slices:
- v2-32
- v3-32
Wenn Sie Cloud TPU Pods verwenden, trainieren Sie zuerst das Modell mit einem Pod und verwenden dann ein einzelnes Cloud TPU-Gerät, um das Modell zu bewerten.
Cloud TPU Pods trainieren
Wenn Sie Ihre Compute Engine-Instanz bereits gelöscht haben, erstellen Sie gemäß den Schritten unter Ressourcen einrichten eine neue Instanz.
Löschen Sie die Cloud TPU-Ressource, die Sie zum Trainieren des Modells auf einem einzelnen Gerät erstellt haben.
(vm)$ gcloud compute tpus execution-groups delete shapemask-tutorial \ --zone=us-central1-a \ --tpu-only
Rufen Sie Ihr Cloud Storage-Bucket auf und löschen Sie die
checkpoint
-Datei.Führen Sie den Befehl
gcloud compute tpus execution-groups
mit dem Parameteraccelerator-type
aus, um das Pod-Slice anzugeben, das Sie verwenden möchten. Der folgende Befehl verwendet beispielsweise einen v3-32-Pod-Slice.(vm)$ gcloud compute tpus execution-groups create --name=shapemask-tutorial \ --accelerator-type=v2-32 \ --zone=us-central1-a \ --tf-version=1.15.5 \ --tpu-only
Beschreibung der Befehls-Flags
name
- Der Name der zu erstellenden Cloud TPU.
accelerator-type
- Der Typ der zu erstellenden Cloud TPU.
zone
- Die Zone, in der Sie die Cloud TPU erstellen möchten.
tf-version
- Die Version von TensorFlow
gcloud
wird auf der VM installiert. tpu-only
- Erstellen Sie nur eine Cloud TPU. Standardmäßig werden mit dem Befehl
gcloud
eine VM und eine Cloud TPU erstellt.
Führen Sie das folgende Skript aus, um das Modell auf einem Pod zu trainieren.
Mit der angegebenen Befehlszeile dauert das Trainingsskript ungefähr 45 Minuten. Setzen Sie
total_steps
auf 22.000, um eine Konvergenz auszuführen.(vm)$ python3 ~/tpu/models/official/detection/main.py \ --model shapemask \ --use_tpu=True \ --tpu=${TPU_NAME} \ --num_cores=32 \ --model_dir=${MODEL_DIR} \ --mode="train" \ --eval_after_training=False \ --params_override="{train: {iterations_per_loop: 1000, train_batch_size: 256, total_steps: 1000, learning_rate: {total_steps: 1000, warmup_learning_rate: 0.0067, warmup_steps: 500, init_learning_rate: 0.08, learning_rate_levels: [0.008, 0.0008], learning_rate_steps: [15000, 20000]}, checkpoint: { path: ${RESNET_CHECKPOINT}, prefix: resnet101/ }, train_file_pattern: ${TRAIN_FILE_PATTERN} }, resnet: {resnet_depth: 101}, eval: { val_json_file: ${VAL_JSON_FILE}, eval_file_pattern: ${EVAL_FILE_PATTERN}, eval_samples: 5000 }, shapemask_head: {use_category_for_mask: true, shape_prior_path: ${SHAPE_PRIOR_PATH}}, shapemask_parser: {output_size: [1024, 1024]}, }"
Beschreibung der Befehls-Flags
strategy_type
- Wenn Sie das RetinaNet-Modell auf einer TPU trainieren möchten, müssen Sie
distribution_strategy
auftpu
setzen. tpu
- Der Name der Cloud TPU. Dies wird mit der Umgebungsvariable
TPU_NAME
festgelegt. model_dir
- Der Cloud Storage-Bucket, in dem während des Trainings Prüfpunkte und Zusammenfassungen gespeichert werden. Sie können einen vorhandenen Ordner verwenden, um zuvor generierte Prüfpunkte zu laden, die auf einer TPU mit derselben Größe und TensorFlow-Version erstellt wurden.
mode
- Eine der folgenden Werte:
train
,eval
odertrain_and_eval
. model
- Das Modell, das trainiert werden soll.
eval_after_training
- Legen Sie hier
true
fest, um das Modell nach dem Training auszuwerten. params_override
- Ein JSON-String, der Standardskriptparameter überschreibt. Weitere Informationen zu Skriptparametern finden Sie unter
/usr/share/models/official/vision/detection/main.py
.
Das Modell muss auf einem einzelnen Cloud TPU-Gerät ausgewertet werden. Löschen Sie das Cloud TPU Pod-Gerät.
$ gcloud compute tpus execution-groups delete shapemask-tutorial \ --zone=us-central1-a
Erstellen Sie eine einzelne Cloud TPU-Ressource.
(vm)$ gcloud compute tpus execution-groups create \ --tpu-only \ --accelerator-type=v3-8 \ --name=shapemask-tutorial \ --zone=us-central1-a \ --tf-version=1.15.5
Beschreibung der Befehls-Flags
tpu-only
- Erstellt die Cloud TPU, ohne eine VM zu erstellen. Standardmäßig werden mit dem Befehl
gcloud compute tpus execution-groups
eine VM und eine Cloud TPU erstellt. tpu-size
- Der Typ der zu erstellenden Cloud TPU.
name
- Der Name der zu erstellenden Cloud TPU.
zone
- Die Zone, in der Sie die Cloud TPU erstellen möchten.
tf-version
- Die Version von TensorFlow
ctpu
wird auf der VM installiert.
Führen Sie das Skript aus, um eine Bewertung durchzuführen.
(vm)$ python3 ~/tpu/models/official/detection/main.py \ --model shapemask \ --use_tpu=True \ --tpu=${TPU_NAME} \ --num_cores=8 \ --model_dir=${MODEL_DIR} \ --mode="eval" \ --eval_after_training=False \ --params_override="{train: {iterations_per_loop: 1000, train_batch_size: 256, total_steps: 1000, learning_rate: {total_steps: 1000, warmup_learning_rate: 0.0067, warmup_steps: 500, init_learning_rate: 0.08, learning_rate_levels: [0.008, 0.0008], learning_rate_steps: [15000,20000]}, checkpoint: { path: ${RESNET_CHECKPOINT}, prefix: resnet101/ }, train_file_pattern: ${TRAIN_FILE_PATTERN} }, resnet: {resnet_depth: 101}, eval: { val_json_file: ${VAL_JSON_FILE}, eval_file_pattern: ${EVAL_FILE_PATTERN}, eval_samples: 5000 }, shapemask_head: {use_category_for_mask: true, shape_prior_path: ${SHAPE_PRIOR_PATH}}, shapemask_parser: {output_size: [1024, 1024]}, }"
Beschreibung der Befehls-Flags
model
- Das Modell, das trainiert werden soll.
use_tpu
- Legen Sie den Wert
true
fest, um auf einer Cloud TPU zu trainieren. tpu
- Der Name der Cloud TPU. Dies wird mit der Umgebungsvariable
TPU_NAME
festgelegt. num_cores
- Die Anzahl der Cloud TPU-Kerne, die beim Training verwendet werden sollen.
model_dir
- Der Cloud Storage-Bucket, in dem während des Trainings Prüfpunkte und Zusammenfassungen gespeichert werden. Sie können einen vorhandenen Ordner verwenden, um zuvor generierte Prüfpunkte zu laden, die auf einer TPU mit derselben Größe und TensorFlow-Version erstellt wurden.
mode
- Eine der folgenden Werte:
train
,eval
odertrain_and_eval
. eval_after_training
- Legen Sie hier
true
fest, um das Modell nach dem Training auszuwerten. params_override
- Ein JSON-String, der Standardskriptparameter überschreibt. Weitere Informationen zu Skriptparametern finden Sie unter
/usr/share/models/official/vision/detection/main.py
.
Das Ergebnis des Bewertungsskripts sieht so aus:
Eval result: { 'AP75': 0.116238795, 'AP': 0.121657856, 'mask_ARmax100': 0.29928473, 'APl': 0.17029367, 'mask_ARmax1': 0.17677748, 'ARs': 0.14137766, 'mask_AP': 0.12017078, 'ARmax10': 0.29230836, 'mask_AP50': 0.20920053, 'ARm': 0.34366703, 'AP50': 0.22949784, 'mask_ARl': 0.41743836, 'mask_ARs': 0.12669834, 'APs': 0.046222884, 'mask_APs': 0.041104294, 'mask_APl': 0.17535995, 'mask_ARm': 0.34216145, 'mask_ARmax10': 0.28690106, 'APm': 0.14354791, 'ARmax100': 0.3058479, 'ARmax1': 0.17576972, 'ARl': 0.41305476, 'mask_APm': 0.1422335, 'mask_AP75': 0.12010279 }
Bereinigen
Damit Ihrem Google Cloud-Konto die in dieser Anleitung verwendeten Ressourcen nicht in Rechnung gestellt werden, löschen Sie entweder das Projekt, das die Ressourcen enthält, oder Sie behalten das Projekt und löschen die einzelnen Ressourcen.
Trennen Sie die Verbindung zur Compute Engine-Instanz.
(vm)$ exit
Die Eingabeaufforderung sollte nun
username@projectname
lauten und angeben, dass Sie sich in Cloud Shell befinden.Verwenden Sie in Cloud Shell den folgenden Befehl, um Ihre Compute Engine-VM und Cloud TPU zu löschen:
$ gcloud compute tpus execution-groups delete shapemask-tutorial \ --zone=us-central1-a
Prüfen Sie, ob die Ressourcen gelöscht wurden. Führen Sie dazu
gcloud compute tpus execution-groups list
aus. Der Löschvorgang kann einige Minuten dauern. Eine Antwort wie die folgende gibt an, dass Ihre Instanzen erfolgreich gelöscht wurden.$ gcloud compute tpus execution-groups list \ --zone=us-central1-a
Sie sollten eine leere Liste der TPUs sehen, die in etwa so aussieht:
NAME STATUS
Löschen Sie Ihren Cloud Storage-Bucket wie unten gezeigt mit
gsutil
. Ersetzen Sie bucket-name durch den Namen des Cloud Storage-Buckets.$ gsutil rm -r gs://bucket-name
Weitere Informationen
In den Cloud TPU-Anleitungen von TensorFlow wird das Modell in der Regel mithilfe eines Beispiel-Datasets trainiert. Die Ergebnisse dieser Schulung können nicht für Inferenzen verwendet werden. Wenn Sie ein Inferenzmodell verwenden möchten, können Sie die Daten mit einem öffentlich verfügbaren Dataset oder Ihrem eigenen Dataset trainieren. TensorFlow-Modelle, die auf Cloud TPUs trainiert werden, benötigen im Allgemeinen Datasets im Format TFRecord.
Sie können das Beispiel für das Dataset-Konvertierungstool verwenden, um ein Bildklassifizierungs-Dataset in das TFRecord-Format zu konvertieren. Wenn Sie kein Bildklassifizierungsmodell verwenden, müssen Sie das Dataset selbst in das TFRecords-Format konvertieren. Weitere Informationen finden Sie unter TFRecord und tf.Example
Hyperparameter-Feinabstimmung
Sie können die Hyperparameter des Modells optimieren, um die Leistung des Modells mit Ihrem Dataset zu verbessern. Informationen zu Hyperparametern, die für alle TPU-unterstützten Modelle üblich sind, finden Sie auf GitHub. Informationen zu modellspezifischen Hyperparametern finden Sie im Quellcode für die einzelnen Modelle. Weitere Informationen zur Hyperparameter-Abstimmung finden Sie unter Übersicht über Hyperparameter-Abstimmung, Hyperparameter-Abstimmungsdienst und Hyperparameter abstimmen.
Inferenz
Sobald Ihr Modell trainiert ist, können Sie es für Inferenz (auch als Vorhersage bezeichnet) verwenden. AI Platform ist eine cloudbasierte Lösung, mit der Sie Modelle für maschinelles Lernen entwickeln, trainieren und bereitstellen können. Sobald ein Modell bereitgestellt wurde, können Sie den AI Platform Prediction-Dienst verwenden.
Mit verschiedenen Bildgrößen trainieren
Sie können versuchen, ein größeres neuronales Netzwerk wie ResNet-101 statt ResNet-50 zu verwenden. Ein größeres Eingabebild und ein leistungsfähigeres neuronales Netzwerk ergeben ein langsameres, aber präziseres Modell.
Andere Grundlage verwenden
Alternativ können Sie versuchen, ein ResNet-Modell im Voraus mit Ihrem eigenen Dataset zu trainieren und es als Grundlage für Ihr ShapeMask-Modell zu verwenden. Sie haben auch die Möglichkeit, ResNet durch ein alternatives neuronales Netzwerk zu ersetzen, was etwas arbeitsaufwändiger ist. Wenn Sie Ihre eigenen Objekterkennungsmodelle implementieren möchten, ist dieses Netzwerk möglicherweise eine gute Basis für weitere Experimente.