L'SDK Vertex AI per Python include classi per aiutare a visualizzare, misurazioni e monitoraggio. Queste classi possono essere raggruppate in tre tipi:
- Classi che utilizzano i metadati per monitorare le risorse nel flusso di lavoro di machine learning (ML)
- Classi utilizzate per gli esperimenti Vertex AI
- Classi utilizzate per una Vertex AI TensorBoard
I seguenti argomenti forniscono una panoramica dei corsi correlati al monitoraggio e il monitoraggio di un flusso di lavoro ML nell'SDK Vertex AI per Python.
Classi di metadati
Puoi utilizzare l'SDK Vertex AI per Python per creare Vertex ML Metadata per aiutarti puoi tenere traccia e analizzare i metadati nel tuo flusso di lavoro ML. Per ulteriori informazioni, consulta Introduzione a Vertex ML Metadata.
Artifact
La classe Artifact
rappresenta i metadati in una
l'artefatto in Vertex AI. Un artefatto è un'entità o un dato distinto prodotto da un flusso di lavoro di ML. Gli esempi di un artefatto sono
dataset, un
model e un
file di input.
Per ulteriori informazioni, vedi
Tieni traccia di esecuzioni e artefatti.
Quando crei una risorsa Artifact
, devi
e specificarne lo schema. Ogni tipo di artefatto ha uno schema univoco. Ad esempio:
lo schema system.Dataset
rappresenta un set di dati, mentre lo schema system.Metrics
rappresenta le metriche di valutazione. Per ulteriori informazioni, consulta
Come utilizzare gli schemi di sistema.
Il seguente codice campione mostra come creare un
Artifact
risorsa che rappresenta un modello:
model_artifact = aiplatform.Artifact.create(
schema_title="system.Model",
display_name=PREPROCESSED_DATASET_NAME,
uri=PREPROCESSED_DATASET_URI,
Execution
La classe Execution
rappresenta i metadati di un'esecuzione in Vertex AI. L'esecuzione è un passaggio di un flusso di lavoro ML.
Alcuni esempi di esecuzione sono l'elaborazione dei dati, l'addestramento e la valutazione del modello. Un
l'esecuzione può consumare artefatti, ad esempio un set di dati, e produrre un artefatto,
come un modello.
Utilizza le funzionalità di
aiplatform.start_execution
per creare una risorsa Execution
. Dopo aver creato una risorsa Execution
, utilizza lo stesso metodo aiplatform.start_execution
con il parametro resume
impostato su True
per riprenderla.
Il seguente codice di esempio mostra come creare una risorsa Execution
:
with aiplatform.start_execution(schema_title='system.ContainerExecution',
display_name='trainer') as execution:
execution.assign_input_artifacts([my_artifact])
model = aiplatform.Artifact.create(uri='gs://my-uri', schema_title='system.Model')
execution.assign_output_artifacts([model])
Classi di Vertex AI Experiments
Puoi utilizzare l'SDK Vertex AI per Python per creare ed eseguire Vertex AI Experiments. Utilizzare Vertex AI Experiments tenere traccia di metriche e parametri registrati per facilitare l'analisi e l'ottimizzazione del machine learning un flusso di lavoro di machine learning. Per ulteriori informazioni, consulta Introduzione agli esperimenti Vertex AI.
Per scoprire di più su come utilizzare le classi Experiment
e
ExperimentRun
, prova uno dei seguenti
tutorial:
- Creare la cronologia di Vertex AI Experiments per l'addestramento personalizzato
- Monitorare parametri e metriche per i modelli addestrati localmente
- Confrontare le esecuzioni della pipeline con gli esperimenti Vertex AI
- Iniziare a utilizzare Vertex AI Experiments
Experiment
La classe Experiment
rappresenta un esperimento in
Vertex AI. Utilizza un esperimento per analizzarne
esperimenti dell'esperimento
eseguenze della pipeline con diverse
configurazioni, come più artefatti e iperparametri di input.
Esistono due modi per creare una risorsa Experiment
:
Il modo migliore per creare un
Experiment
è specificare un nome per l'esperimento come parametro quando chiamiaiplatform.init
:# In a real world scenario it's likely you would specify more parameters # when you call aiplatform.init. This sample shows only how to use the # parameter used to create an Experiment. # Specify a name for the experiment EXPERIMENT_NAME = "your-experiment-name" # Create the experiment aiplatform.init(experiment=EXPERIMENT_NAME)
Puoi anche creare una
Experiment
chiamandoaiplatform.Experiment.create
.aiplatform.Experiment.create
crea la risorsaExperiment
, ma non la imposta su un ambiente globale. Per questo motivo, non puoi eseguire l'esperimento conaiplatform.start_run
La il seguente codice campione illustra come utilizzareaiplatform.Experiment.create
per creare un esperimento ed eseguirlo:# Specify a name for the experiment EXPERIMENT_NAME = "your-experiment-name" EXPERIMENT_RUN_NAME = "your-run" # Create the experiment experiment = aiplatform.Experiment.create(experiment_name=EXPERIMENT_NAME) experiment_run = aiplatform.ExperimentRun.create(EXPERIMENT_RUN_NAME, experiment=EXPERIMENT_NAME)
ExperimentRun
La classe ExperimentRun
rappresenta un'esecuzione di un
esperimento.
Il seguente codice di esempio mostra come creare e avviare un'esecuzione dell'esperimento, quindi come utilizzarla per ottenere informazioni sull'esperimento. Per eliminare l'esecuzione dell'esperimento:
ottenere un riferimento all'istanza ExperimentRun
e chiamare la sua
delete
.
# Specify your project name, location, experiment name, and run name
PROJECT_NAME = "my-project"
LOCATION = "us-central1"
EXPERIMENT_NAME = "experiment-1"
RUN_NAME = "run-1"
# Create the experiment to run
aiplatform.init(experiment_name=EXPERIMENT_NAME,
project=PROJECT_NAME,
location=LOCATION)
# Create and run an ExperimentRun resource. Next, you can use it to get
# information about your experiment. For example, you can log parameters and
# metrics with specified key-value pairs.
with aiplatform.start_run(RUN_NAME):
aiplatform.log_params({'learning_rate': 0.1, 'dropout_rate': 0.2})
aiplatform.log_metrics({'accuracy': 0.9, 'recall': 0.8})
# Get a reference to the ExperimentRun resource, get the parameters logged to
# the run, get the summary metrics logged to the run, then delete it.
with aiplatform.start_run(RUN_NAME, resume=True) as run:
run.get_params()
run.get_metrics()
run.delete()
Classi Vertex AI TensorBoard
L'SDK Vertex AI per Python include classi che funzionano con una versione gestita del open source Vertex AI TensorBoard Vertex AI TensorBoard è uno strumento utilizzato per monitorare misurazioni e visualizzazioni durante il flusso di lavoro ML. Per ulteriori informazioni, consulta la guida introduttiva all'utilizzo di Vertex AI TensorBoard.
Per saperne di più sull'utilizzo dell'SDK Vertex AI per Python per lavorare con Vertex AI TensorBoard, prova uno dei seguenti tutorial di blocchi note:
- Profila le prestazioni di addestramento del modello utilizzando Cloud Profiler
- Addestramento personalizzato di Vertex AI TensorBoard con un container personalizzato.
- Addestramento personalizzato di Vertex AI TensorBoard con container predefinito
- Ottimizzazione degli iperparametri Vertex AI TensorBoard con la dashboard HParams
- Eseguire il profiling del rendimento dell'addestramento di un modello utilizzando Cloud Profiler
- Profilare le prestazioni di addestramento di un modello utilizzando Cloud Profiler nell'addestramento personalizzato con un container predefinito
Tensorboard
La classe Tensorboard
rappresenta una classe gestita
per archiviare gli esperimenti Vertex AI TensorBoard. Per poter visualizzare gli esperimenti, devi creare un'istanza Tensorboard
. Puoi creare più di una
Tensorboard
in un progetto Google Cloud.
Il seguente codice di esempio mostra come creare un'istanza Tensorboard
:
# Specify your project name, location, and the name of your Tensorboard
PROJECT_NAME = "my-project"
LOCATION = "us-central1"
TENSORBOARD_NAME = "my-tensorboard"
aiplatform.init(project=PROJECT_NAME, location=LOCATION)
tensorboard = aiplatform.Tensorboard.create(
display_name=TENSORBOARD_NAME,
project=PROJECT_NAME,
location=LOCATION,
)
TensorboardExperiment
TensorboardExperiment
rappresenta un
gruppo di oggetti TensorboardRun
. Un'istanza
TensorboardRun
rappresenta i risultati
di un job di addestramento eseguito in un Tensorboard.
TensorboardRun
Un'istanza della classe TensorboardRun
viene mappata
di un job di addestramento in una TensorBoard con un set specifico di iperparametri,
definizione del modello, un set di dati e altro ancora.
TensorboardTimeSeries
Il corso TensorboardTimeSeries
rappresenta una serie prodotta nelle esecuzioni di addestramento.
Passaggi successivi
- Scopri di più sull'SDK Vertex AI.