Wenn Sie integrierte Algorithmen für das Training in AI Platform Training verwenden, können Sie Ihr Dataset zum Trainieren eines Modells einreichen, ohne Trainingscode schreiben zu müssen. Auf dieser Seite werden die Funktionsweise und die Verwendung des integrierten NCF-Algorithmus erläutert.
Übersicht
Der integrierte Algorithmus führt nur Training durch:
- Training: AI Platform Training führt das Training mit der NCF-Implementierung von TensorFlow aus. Dabei werden das von Ihnen angegebene Dataset und die festgelegten Modellparameter verwendet.
Beschränkungen
Die folgenden Features werden für das Training mit dem integrierten NCF-Algorithmus nicht unterstützt:
- Automatisierte Datenvorverarbeitung: Bei dieser Version von NCF müssen Eingabedaten in Form von TFRecords für das Training und die Ausgabe vorliegen. Für die automatische Verarbeitung einer nicht formatierten Eingabe ist eine Trainingsanwendung erforderlich.
Unterstützte Maschinentypen
Folgende AI Platform Training-Skalierungsstufen und -Maschinentypen werden unterstützt:
- Skalierungsstufe
BASIC
- Skalierungsstufe
BASIC_GPU
- Skalierungsstufe
BASIC_TPU
- Skalierungsstufe
CUSTOM
mit beliebigen von AI Platform Training unterstützten Compute Engine-Maschinentypen - Skalierungsstufe
CUSTOM
mit einem der folgenden Legacy-Maschinentypen:standard
large_model
complex_model_s
complex_model_m
complex_model_l
standard_gpu
standard_p100
standard_v100
large_model_v100
complex_model_m_gpu
complex_model_l_gpu
complex_model_m_p100
complex_model_m_v100
complex_model_l_v100
TPU_V2
(8 Kerne)
Es wird empfohlen, einen Maschinentyp mit Zugriff auf TPUs oder GPUs zu verwenden.
Eingabedaten formatieren
Prüfen Sie, ob die Eingabe- und Evaluationsdaten in Form von TFRecords vorliegen, bevor Sie das Modell trainieren.
Cloud Storage-Bucket-Berechtigungen prüfen
Speichern Sie Ihre Daten in einem Cloud Storage-Bucket desselben Google Cloud-Projekts, in dem Sie AI Platform Training-Jobs ausführen. Gewähren Sie andernfalls AI Platform Training Zugriff auf den Cloud Storage-Bucket, in dem Ihre Daten gespeichert sind.
NCF-Trainingsjob senden
In diesem Abschnitt wird erläutert, wie Sie einen Trainingsjob mit dem integrierten NCF-Algorithmus senden.
Eine kurze Erläuterung der einzelnen Hyperparameter finden Sie in der Google Cloud Console. Eine ausführlichere Erläuterung finden Sie in der Referenz zum integrierten NFC-Algorithmus.
Console
Rufen Sie in der Cloud Console die Seite für AI Platform Training-Jobs auf:
Zur Seite AI Platform Training-Jobs
Klicken Sie auf die Schaltfläche Neuer Trainingsjob. Klicken Sie in den darunter angezeigten Optionen auf Integriertes Algorithmustraining.
Wählen Sie auf der Seite Neuen Trainingsjob erstellen NCF aus und klicken Sie auf Weiter.
Weitere Informationen zu allen verfügbaren Parametern finden Sie unter den Links in der Google Cloud Console und in der Referenz zum integrierten NCF-Algorithmus.
gcloud
Legen Sie Umgebungsvariablen für Ihren Job fest:
# Specify the name of the Cloud Storage bucket where you want your # training outputs to be stored, and the Docker container for # your built-in algorithm selection. BUCKET_NAME='BUCKET_NAME' IMAGE_URI='gcr.io/cloud-ml-algos/ncf:latest' # Specify the Cloud Storage path to your training input data. DATA_DIR='gs://$BUCKET_NAME/ncf_data' DATE="$(date '+%Y%m%d_%H%M%S')" MODEL_NAME='MODEL_NAME' JOB_ID="${MODEL_NAME}_${DATE}" JOB_DIR="gs://${BUCKET_NAME}/algorithm_training/${MODEL_NAME}/${DATE}"
Dabei gilt:
- BUCKET_NAME: Der Name des Cloud Storage-Buckets, in dem Trainingsausgaben gespeichert werden sollen.
- MODEL_NAME: Ein Name für Ihr Modell, um zu ermitteln, wo Modellartefakte in Ihrem Cloud Storage-Bucket gespeichert werden.
Senden Sie den Trainingsjob mit
gcloud ai-platform jobs training submit
: Passen Sie dieses allgemeine Beispiel an Ihr Dataset an:gcloud ai-platform jobs submit training $JOB_ID \ --master-image-uri=$IMAGE_URI --scale-tier=BASIC_TPU --job-dir=$JOB_DIR \ -- \ --train_dataset_path=${DATA_DIR}/training_cycle_*/* \ --eval_dataset_path=${DATA_DIR}/eval_data/* \ --input_meta_data_path=${DATA_DIR}/metadata \ --learning_rate=3e-5 \ --train_epochs=3 \ --eval_batch_size=160000 \ --learning_rate=0.00382059 \ --beta1=0.783529 \ --beta2=0.909003 \ --epsilon=1.45439e-07 \ --num_factors=64 \ --hr_threshold=0.635 \ --keras_use_ctl=true \ --layers=256,256,128,64 \
Prüfen Sie den Status Ihres Trainingsjobs. Rufen Sie dazu Logs mit
gcloud
auf. Weitere Informationen finden Sie untergcloud ai-platform jobs describe
undgcloud ai-platform jobs stream-logs
.gcloud ai-platform jobs describe ${JOB_ID} gcloud ai-platform jobs stream-logs ${JOB_ID}
Weitere Lernressourcen
- Weitere Informationen zu Cloud TPU
- Weitere Informationen zu TensorFlow Model Garden