Visualizzazione dell'architettura dei modelli con Cloud Logging

Questa pagina fornisce informazioni su come utilizzare Cloud Logging per visualizzare i dettagli di un modello AutoML Tables. Con Logging puoi visualizzare gli iperparametri finali del modello, nonché gli iperparametri e i valori degli oggetti utilizzati durante l'addestramento e l'ottimizzazione del modello.

Puoi anche visualizzare i log generali per AutoML Tables nel tuo progetto.

Dati registrati

I messaggi di logging prodotti da AutoML Tables forniscono:

  • Iperparametri finali del modello come coppie chiave-valore.
  • Iperparametri utilizzati durante le prove di ottimizzazione, nonché un valore obiettivo.

Per impostazione predefinita, i log vengono eliminati dopo 30 giorni.

Prima di iniziare

Autorizzazioni richieste per questa attività

Per eseguire questa attività, devi disporre delle seguenti autorizzazioni:

  • logging.logServiceIndexes.list nel progetto
  • logging.logServices.list nel progetto

Visualizzazione dei log di addestramento

Accesso ai log dei modelli dalla console Google Cloud

Puoi accedere ai log finali degli iperparametri e ai log degli iperparametri di prova dell'ottimizzazione direttamente da AutoML Tables.

  1. Vai alla pagina AutoML Tables nella console Google Cloud.

    Vai alla pagina AutoML Tables

  2. Seleziona la scheda Modelli nel riquadro di navigazione a sinistra e fai clic sul nome del modello per aprirlo.

  3. Seleziona la scheda Modelli.

    Dettagli del modello, che mostrano i link "Modello" e "Prove"

  4. Per visualizzare i log degli iperparametri finali, fai clic su Modello.

  5. Per vedere gli iperparametri della prova di ottimizzazione, fai clic su Prove.

  6. Espandi il payload come mostrato di seguito:

    Log dei modelli espansi

Lettura dei log dell'architettura del modello

I log delle attività sono strutturati come descritto nella documentazione sul tipo LogEntry.

I log dei modelli AutoML Tables contengono, tra gli altri campi:

  • automl_tables come valore del campo log_type
  • jsonPayload che contiene i dettagli specifici della voce di log
  • timestamp che descrive quando è stato creato il modello

Contenuti payload

I contenuti di una voce di log sono forniti in formato oggetto JSON e sono archiviati nel campo jsonPayload. Il campo jsonPayload contiene le seguenti informazioni.

Campo Tipo Descrizione
modelStructure JSON

Una descrizione della struttura del modello AutoML Tables. Questo campo contiene uno o più campi modelParameters contenenti gli iperparametri di ogni modello utilizzato. Se viene utilizzato più di un modello, questi vengono combinati come un insieme per creare il modello finale.

Consulta l'elenco degli iperparametri per i dettagli.

trainingObjectivePoint JSON L'obiettivo di ottimizzazione utilizzato per l'addestramento del modello. Questa voce include un timestamp e un valore obiettivo al momento della registrazione della voce di log.

Elenco di iperparametri

I dati degli iperparametri forniti nei log variano per ogni tipo di modello. Le seguenti sezioni descrivono gli iperparametri per ciascun tipo di modello.

Modelli AdaNet

  • Tipo di modello: AdaNet
  • Lambda AdaNet
  • Tipo di complessità
  • Numero iniziale di livelli
  • Tipo di ultimo livello (logits o prelogits)
  • Aumenta dimensioni livello
  • Scopri i pesi delle miscele (True o False)
  • Scopri i residui (True o False)
  • Aumentare le iterazioni
  • Ottimizzatore (adagrad o adam)

    Riferimento Python open source

Modelli AdaNet AutoEnsemble

  • Tipo di modello: AdaNet AutoEnsembler
  • Numero di livelli nascosti
  • Dimensione livello nascosto
  • Escludi
  • Forza di regolarizzazione L1
  • Forza di regolarizzazione L2
  • Forza di regolarizzazione dello shrinkage L2
  • Complessità dell'albero
  • Profondità massima albero
  • Differenziazione centrale (True o False)
  • Modalità in crescita (layer o tree)
  • Aumentare le iterazioni
  • Ottimizzatore DNN (adagrad o adam)

    Riferimento Python open source

Modelli DNN Linear

  • Tipo di modello: DNNLinear
  • Numero di livelli nascosti
  • Dimensione livello nascosto
  • Escludi
  • Forza di regolarizzazione L1
  • Forza di regolarizzazione L2
  • Forza di regolarizzazione dello shrinkage L2

    Riferimento Python open source

Modelli di albero decisionale potenziato con gradiente

  • Tipo di modello: GBDT
  • Profondità massima albero
  • Regolarizzazione L1 dell'albero
  • Regolarizzazione L2 dell'albero
  • Complessità dell'albero
  • Numero di alberi
  • Differenziazione centrale (True o False)

    Riferimento Python open source

Modelli di rete neurale feed-forward

  • Tipo di modello: nn
  • Dimensione livello nascosto
  • Tasso di abbandono
  • Abilita l'incorporamento numerico (True o False)
  • Attiva L1 (True o False)
  • Attiva L2 (True o False)
  • Abilita l'incorporamento L1 (True o False)
  • Abilita l'incorporamento L2 (True o False)
  • Attiva layerNorm (True o False)
  • Abilita batchNorm (True o False)
  • Numero di livelli nascosti
  • Numero di livelli incrociati
  • Ignora tipo di connessione (dense, disable, concat o slice_or_padding)
  • Normalizza colonna numerica (True o False)

Esempi di voci di log

L'esempio seguente mostra una voce di log per l'architettura finale del modello di un modello nn, come indicato dal parametro model_type. Se per creare il modello finale è stato utilizzato più di un modello, gli iperparametri per ciascun modello vengono restituiti come voce nell'array modelParameters, indicizzati in base alla posizione (0, 1, 2 e così via).

{
 insertId: "qx7z0ifhtjpkv"
 jsonPayload: {
  @type: "type.googleapis.com/google.cloud.automl.master.TuningTrial"
  modelStructure: {
   modelParameters: [
    0: {
      Dropout rate: 0.75
      Embedding numerical embedding: "True"
      Enable L1: "False"
      Enable L2: "False"
      Enable batchNorm: "True"
      Enable embedding L1: "False"
      Enable embedding L2: "False"
      Enable layerNorm: "False"
      Hidden layer size: 16
      Normalize numerical column: "True"
      Number of cross layers: "1"
      Number of hidden layers: "2"
      Skip connections type: "dense"
      Model type: "nn"
    }
   ]
  }
  trainingObjectivePoint: {
   createTime: "2019-10-15T04:52:00Z"
   value: 0.002069325
  }
 }
 labels: {
  log_type: "automl_tables"
 }
 logName: "projects/project-id/logs/automl.googleapis.com%2Ftuning"
 receiveTimestamp: "2019-10-15T10:46:06.916277805Z"
 resource: {
  labels: {
   job_id: "109476078648557568"
   project_id: "project-id"
   region: "us-central1"
  }
  type: "cloudml_job"
 }
 severity: "INFO"
 timestamp: "2019-10-15T10:46:06.916277805Z"
}

L'esempio seguente mostra una voce di log per l'architettura del modello durante l'ottimizzazione.

{
 insertId: "nl7815f7p0cjb"
 jsonPayload: {
  @type: "type.googleapis.com/google.cloud.automl.master.TuningTrial"
  modelStructure: {
   modelParameters: [
    0: {
     hyperparameters: {
      Boosting iterations: "2"
      Grow layer size: "30"
      Initial number of layers: "1"
      Last layer type: "prelogits"
      Learn residuals: "False"
      Model type: "AdaNet"
      Optimizer: "adam"
      }
    }
   ]
  }
  trainingObjectivePoint: {
   createTime: "2019-10-13T20:42:25Z"
   value: 0.0000011595778
  }
 }
 labels: {
  log_type: "automl_tables"
 }
 logName: "projects/project-id/logs/automl.googleapis.com%2Ftuning"
 receiveTimestamp: "2019-10-13T21:20:08.189302731Z"
 resource: {
  labels: {
   job_id: "2804289077287845888"
   project_id: "project-id"
   region: "us-central1"
  }
  type: "cloudml_job"
 }
 severity: "INFO"
 timestamp: "2019-10-13T21:20:08.189302731Z"
}

Visualizzazione dei log generali di AutoML Tables

Puoi visualizzare i log delle attività del progetto tramite Esplora log nella console Google Cloud:

  1. Vai alla pagina Logging nella console Google Cloud.
  2. In Esplora log, seleziona e filtra il tipo di risorsa dal primo menu a discesa.
  3. Seleziona automl.googleapis.com/tuning dal menu a discesa automl.googleapis.com/tuning per visualizzare i log di AutoML Tables.

Esportazione dei log

Puoi esportare i log in BigQuery, Cloud Storage o Pub/Sub.

Leggi Configurazione dell'esportazione dei log nella documentazione di Logging per scoprire come esportare i log delle attività.