L'addestramento con gli algoritmi integrati in AI Platform Training ti consente di inviare il tuo set di dati e addestrare un modello senza scrivere alcun codice di addestramento. Questa pagina spiega come funziona l'algoritmo NCF integrato e come utilizzarlo.
Panoramica
Questo algoritmo integrato esegue solo l'addestramento:
- Addestramento: utilizzando il set di dati e i parametri del modello che hai fornito, l'addestramento di AI Platform viene eseguito utilizzando l'implementazione NCF di TensorFlow.
Limitazioni
Le seguenti funzionalità non sono supportate per l'addestramento con l'algoritmo NCF integrato:
- Pre-elaborazione automatica dei dati Questa versione di NCF richiede che i dati di input siano in forma di TFRecord sia per l'addestramento sia per l'output. È necessario creare un'applicazione di addestramento per gestire automaticamente l'input non formattato.
Tipi di macchine supportati
I seguenti livelli di scalabilità e tipi di macchine di AI Platform Training sono supportati:
BASIC
livello di scalabilitàBASIC_GPU
livello di scalabilitàBASIC_TPU
livello di scalabilitàCUSTOM
con uno dei tipi di macchine Compute Engine supportati da AI Platform Training.- Livello di scalabilità
CUSTOM
con uno dei seguenti tipi di macchine legacy: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 core)
Ti consigliamo di utilizzare un tipo di macchina con accesso a TPU o GPU.
Formattare i dati di input
Assicurati che i dati di input e di valutazione siano sotto forma di TFRecord prima di addestrare il modello.
Controllare le autorizzazioni dei bucket Cloud Storage
Per archiviare i dati, utilizza un bucket Cloud Storage nello stesso Google Cloud progetto che utilizzi per eseguire i job di addestramento di AI Platform. In caso contrario, concedi l'accesso ad AI Platform Training al bucket Cloud Storage in cui sono archiviati i tuoi dati.
Invia un job di addestramento NCF
Questa sezione spiega come inviare un job di addestramento utilizzando l'algoritmo NCF integrato.
Puoi trovare brevi spiegazioni di ciascun iperparametro nella console Google Cloud e una spiegazione più completa nel riferimento per l'algoritmo NCF integrato.
Console
Vai alla pagina Job di addestramento della piattaforma AI nella console Google Cloud:
Fai clic sul pulsante Nuovo job di addestramento. Dalle opzioni visualizzate di seguito, fai clic su Addestramento con algoritmi integrati.
Nella pagina Crea un nuovo job di addestramento, seleziona NCF e fai clic su Avanti.
Per scoprire di più su tutti i parametri disponibili, segui i link nella console Google Cloud e consulta la documentazione di riferimento NCF integrata per ulteriori dettagli.
gcloud
Imposta le variabili di ambiente per il job:
# 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}"
Sostituisci quanto segue:
- BUCKET_NAME: il nome del bucket Cloud Storage in cui vuoi archiviare gli output dell'addestramento.
- MODEL_NAME: un nome per il modello, per identificare dove vengono memorizzati gli elementi del modello nel bucket Cloud Storage.
Invia il job di addestramento utilizzando
gcloud ai-platform jobs training submit
. Modifica questo esempio generico in modo che funzioni con il tuo set di dati: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 \
Monitora lo stato del job di addestramento visualizzando i log con
gcloud
. Consultagcloud ai-platform jobs describe
egcloud ai-platform jobs stream-logs
.gcloud ai-platform jobs describe ${JOB_ID} gcloud ai-platform jobs stream-logs ${JOB_ID}
Ulteriori risorse per l'apprendimento
- Scopri di più su Cloud TPU.
- Scopri di più su TensorFlow Model Garden.