Gestione di modelli e job

Durante il processo di addestramento e di deployment dei modelli e di generazione di previsioni, devi gestire le risorse sulla piattaforma Google Cloud. Questa pagina descrive come lavorare con modelli, versioni e job.

Denominare le risorse AI Platform Prediction

Devi specificare un nome per ogni job creato. Le regole per la denominazione sono coerenti per tutti e tre i tipi di risorse. Ogni nome:

  • Può contenere solo lettere, numeri e trattini bassi.
  • Fa distinzione tra maiuscole e minuscole.
  • Deve iniziare con una lettera.
  • Non deve contenere più di 128 caratteri.
  • Deve essere univoco all'interno del suo spazio dei nomi (il progetto per i modelli e i job, modello principale per le versioni).

Devi creare nomi facili da distinguere negli elenchi di risorse, come i log dei job. Ecco alcuni suggerimenti:

  • Assegna un nome a tutti i job per lo stesso modello utilizzando il nome del modello e un indice di job (il timestamp della creazione del job è adatto).
  • Assegna un nome ai modelli in modo che siano facilmente identificabili tramite il set di dati (census_wide_deep di solito è migliore di my_new_model, per esempio).
  • Le versioni sono ideali se sono facilmente leggibili. Invece di utilizzare un timestamp o un valore univoco simile, consigliamo di usare semplici indicatori di versione come v1.

Gestione dei modelli

Le risorse del modello in AI Platform Prediction sono contenitori logici per le singole implementazioni del modello di machine learning. Sono le risorse più semplici con cui lavorare perché non hanno operazioni complesse o risorse aggiuntive da allocare e gestire.

La tabella seguente riassume le operazioni del modello ed elenca le interfacce che puoi utilizzare per eseguirle:

Operazione Interfacce Note
create projects.models.create
gcloud ai-platform models create
Crea modello nella AI Platform Prediction Modelli.
delete projects.models.delete

L'eliminazione di un modello è un'operazione che richiede molto tempo.

Il modello non deve avere versioni associate prima di poterlo eliminare.

gcloud ai-platform models delete
Elimina nel Modelli o nella pagina Dettagli modello.
get projects.models.get

Le informazioni che ricevi sono descritte nella Riferimento risorsa Model.

gcloud ai-platform models describe
Dettagli modello (inseriscilo con un link dal Modelli dall'elenco di lettura.
list projects.models.list
gcloud ai-platform models list
AI Platform Prediction Modelli.

Gestione delle versioni

Le versioni sono iterazioni specifiche dei tuoi modelli. Il nucleo di un modello è un SavedModel di TensorFlow.

La tabella seguente riassume le operazioni relative alla versione ed elenca le interfacce che puoi utilizzare per eseguirle

Operazione Interfacce Note
create projects.models.versions.create

La creazione di una versione comporta il deployment di un SavedModel in AI Platform Prediction. Per ulteriori informazioni, consulta la guida al deployment del modello.

gcloud ai-platform versions create
Crea versione nella pagina Dettagli del modello (accedi con un link dall'elenco Modelli).
delete projects.models.versions.delete

L'eliminazione di una versione è un'operazione a lunga esecuzione.

Non puoi eliminare la versione predefinita di un modello se non è l'unica una versione assegnata al modello.

gcloud ai-platform versions delete
Elimina nell'elenco Versioni sulla Pagina Dettagli modello.
get projects.models.versions.get

Le informazioni che ricevi sono descritte nel Versionriferimento alla risorsa.

gcloud ai-platform versions describe
Pagina Dettagli della versione (da un link nell'elenco Versioni nella pagina Dettagli del modello.
list projects.models.versions.list
gcloud ai-platform versions list
Elenco Versioni nella pagina Dettagli modello.
setDefault projects.models.versions.setDefault

Questo è l'unico modo per assegnare una nuova versione predefinita per un modello. Dopo la prima, la creazione di una versione non rende la nuova versione predefinita.

gcloud ai-platform versions set-default
Imposta come predefinita nell'elenco Versioni della Pagina Dettagli modello.

Gestione dei job

AI Platform Prediction supporta due tipi di job: addestramento e batch la previsione. I dettagli sono diversi, ma l'operazione di base è in modo analogo.

La tabella seguente riassume le operazioni del job ed elenca le interfacce che che puoi utilizzare per eseguirle:

Operazione Interfacce Note
create projects.jobs.create

La creazione di un job è descritta in dettaglio nelle guide sull'addestramento e sulla previsione batch.

gcloud ai-platform jobs submit training

gcloud ai-platform jobs submit prediction

Nessuna implementazione della console.
annulla projects.jobs.cancel

Annullamento di un job in esecuzione.

gcloud ai-platform jobs cancel

Annulla nella pagina Dettagli job.
get projects.jobs.get Le informazioni che ricevi sono descritte nel Jobsriferimento alla risorsa.

gcloud ai-platform jobs describe

Pagina Dettagli job (da inserire con un link dall'elenco di job).
list projects.jobs.list Verranno visualizzati solo i job creati negli ultimi 90 giorni.

gcloud ai-platform jobs list

Elenco di offerte di lavoro.

Gestione delle operazioni asincrone

La maggior parte delle operazioni di gestione delle risorse di AI Platform Prediction restituisce come il più rapidamente possibile e fornire una risposta completa. Tuttavia, ci sono due di operazioni asincrone che dovresti conoscere: job e per le operazioni a lunga esecuzione.

Quando avvii un'operazione asincrona, di solito vuoi sapere quando viene completata. Il processo per ottenere lo stato è diverso per i job e per quelli a lunga esecuzione operazioni:

Visualizzazione dello stato di un job

Puoi utilizzare projects.jobs.get per ottenere lo stato di un job. Questo metodo è fornito anche come gcloud ai-platform jobs describe e nella pagina Job della console Google Cloud. Indipendentemente da come viene visualizzato lo stato, le informazioni sono basate su membri del Risorsa job. Scoprirai Il job è completato quando Job.state nella risposta corrisponde a uno di questi valori:

  • SUCCEEDED
  • FAILED
  • CANCELLED

Recuperare lo stato di un'operazione a lunga esecuzione

AI Platform Prediction dispone di tre operazioni di lunga durata:

  • Creazione di una versione
  • Eliminazione di un modello
  • Eliminazione di una versione

Tra le operazioni a lunga esecuzione, solo la creazione di una versione richiederà molto per completare l'operazione. L'eliminazione di modelli e versioni avviene in genere quasi in tempo reale.

Se crei una versione utilizzando Google Cloud CLI o Google Cloud, l'interfaccia ti informa automaticamente quando l'operazione sia completata. Se crei una versione con l'API, puoi monitorare stato dell'operazione:

  1. Ottieni il nome dell'operazione assegnato al servizio Operazione nella risposta alla tua chiamata a projects.models.versions.create. La chiave per il valore del nome è "name".

  2. Utilizza le funzionalità di projects.operations.get per verificare periodicamente lo stato dell'operazione.

    1. Utilizza il nome dell'operazione del primo passaggio per creare una stringa di nomi del modulo:

      'projects/my_project/operations/operation_name'
      

      Il messaggio di risposta contiene un oggetto Operation.

    2. Ottieni il valore della chiave "done". Questo è un indicatore booleano di completamento dell'operazione. È vero se l'operazione è completata.

  3. Al termine, l'oggetto Operation includerà una delle due chiavi:

    • La chiave "response" è presente se l'operazione è andata a buon fine. È dovrebbe essere google.protobuf.Empty, dato che nessuno dei Le operazioni a lunga esecuzione di AI Platform Prediction hanno oggetti di risposta.

    • La chiave "error" è presente in caso di errore. Il suo valore è un oggetto Status.

Passaggi successivi