Quando executa uma tarefa, a monitorização de modelos v2 consome dados dos conjuntos de dados de destino e de base, calcula métricas e, potencialmente, gera alertas. A monitorização de modelos v2 oferece tarefas a pedido para monitorização ad hoc ou tarefas agendadas para monitorização contínua. Independentemente da opção que escolher, cada tarefa é uma única execução em lote.
Para mais informações sobre a monitorização de objetivos e os modelos suportados, consulte os artigos Vista geral da monitorização de modelos v2 e Configure a monitorização de modelos.
Execute uma tarefa a pedido
Execute uma tarefa de monitorização única. Defina os conjuntos de dados de destino e de base, bem como as especificações de monitorização para os objetivos a monitorizar. A sua configuração substitui todas as predefinições, se definidas, que são definidas pelo monitor do modelo.
Consola
Na Google Cloud consola, aceda à página Monitorização.
Clique no monitor de modelo para o qual quer executar uma tarefa de monitorização.
Na página de detalhes do monitor de modelos, clique em Executar agora para configurar a tarefa de monitorização.
Configure a tarefa ou use as predefinições conforme definido na monitorização de modelos.
Clique em Executar.
SDK Python
from vertexai.resources.preview import ml_monitoring FEATURE_THRESHOLDS = { "culmen_length_mm": 0.001, "body_mass_g": 0.002, } FEATURE_DRIFT_SPEC=ml_monitoring.spec.DataDriftSpec( categorical_metric_type="l_infinity", numeric_metric_type="jensen_shannon_divergence", default_categorical_alert_threshold=0.001, default_numeric_alert_threshold=0.002, feature_alert_thresholds=FEATURE_THRESHOLDS, ) PREDICTION_OUTPUT_DRIFT_SPEC=ml_monitoring.spec.DataDriftSpec( categorical_metric_type="l_infinity", numeric_metric_type="jensen_shannon_divergence", default_categorical_alert_threshold=0.001, default_numeric_alert_threshold=0.001, ) FEATURE_ATTRIBUTION_SPEC=ml_monitoring.spec.FeatureAttributionSpec( default_alert_threshold=0.0003, feature_alert_thresholds={"cnt_ad_reward":0.0001}, ) EXPLANATION_SPEC=ExplanationSpec( parameters=ExplanationParameters( {"sampled_shapley_attribution": {"path_count": 2}} ), metadata=ExplanationMetadata( inputs={ "cnt_ad_reward": ExplanationMetadata.InputMetadata({ "input_tensor_name": "cnt_ad_reward", "encoding": "IDENTITY", "modality": "numeric" }), ... }, ... ) ) TRAINING_DATASET=ml_monitoring.spec.MonitoringInput( gcs_uri=TRAINING_URI, data_format="csv" ) TARGET_DATASET=ml_monitoring.spec.MonitoringInput( table_uri=BIGQUERY_URI ) model_monitoring_job=my_model_monitor.run( display_name=JOB_DISPLAY_NAME, baseline_dataset=TRAINING_DATASET, target_dataset=TARGET_DATASET, tabular_objective_spec=ml_monitoring.spec.TabularObjective( # Optional: set to monitor input feature drift. feature_drift_spec=FEATURE_DRIFT_SPEC, # Optional: set to monitor prediction output drift. prediction_output_drift_spec=PREDICTION_OUTPUT_DRIFT_SPEC, # Optional: set to monitor feature attribution drift. feature_attribution_spec=FEATURE_ATTRIBUTION_SPEC ), # Optional: additional configurations to override default values. explanation_config=EXPLANATION_SPEC, notification_spec=NOTIFICATION_SPEC, output_spec=OUTPUT_SPEC )
Agende execuções contínuas
Pode definir uma ou mais execuções de agendamento para uma monitorização de modelos. Para usar a monitorização contínua com especificações de tempo, o conjunto de dados tem de ter uma coluna de data/hora para que a Model Monitoring v2 possa obter os dados do intervalo de tempo especificado.
Consola
Na Google Cloud consola, aceda à página Monitorização.
Clique no monitor de modelos para o qual quer configurar a monitorização contínua.
Clique em Agendar uma execução recorrente.
Defina os conjuntos de dados de destino e de base e, de seguida, clique em Continuar.
Defina os objetivos a monitorizar, os respetivos limites e as definições de notificação quando é gerado um alerta.
Clique em Continuar.
Configure uma programação para tarefas recorrentes:
- Especifique um nome para o agendador.
- Para Hora de início, especifique quando o primeiro trabalho vai começar.
- Para a Frequência, use uma expressão cron para definir a frequência e, em seguida, defina o fuso horário.
- Para Termina, especifique quando o agendador termina.
Clique em Criar.
SDK Python
Para definir a frequência das tarefas de monitorização, use uma expressão cron.
my_model_monitoring_schedule=my_model_monitor.create_schedule( display_name=SCHEDULE_DISPLAY_NAME, # Every day at 0:00(midnight) cron='"0 * * * *"', baseline_dataset=ml_monitoring.spec.MonitoringInput( endpoints=[ENDPOINT_RESOURCE_NAME], offset="24h", window="24h", ), target_dataset=ml_monitoring.spec.MonitoringInput( endpoints=[ENDPOINT_RESOURCE_NAME], window="24h" ), tabular_objective_spec=ml_monitoring.spec.TabularObjective( # Optional: set to monitor input feature drift. feature_drift_spec=FEATURE_DRIFT_SPEC, # Optional: set to monitor prediction output drift. prediction_output_drift_spec=PREDICTION_OUTPUT_DRIFT_SPEC, # Optional: set to monitor feature attribution drift. feature_attribution_spec=FEATURE_ATTRIBUTION_SPEC ), # Optional: additional configurations to override default values. explanation_config=EXPLANATION_SPEC, output_spec=OUTPUT_SPEC, notification_spec=NOTIFICATION_SPEC, )
Pause ou retome um agendamento
Pode pausar e retomar um agendamento para ignorar ou interromper temporariamente as execuções de tarefas de monitorização.
Consola
Na Google Cloud consola, aceda à página Monitorização.
Clique no monitor de modelos que contém o horário a modificar.
Na página de detalhes, aceda ao separador Programações.
Clique na agenda a modificar.
Clique em Pausar ou Retomar para pausar ou retomar a programação.
SDK Python
# Pause schedule my_model_monitor.pause_schedule(my_monitoring_schedule.name) # Resume schedule my_model_monitor.resume_schedule(my_monitoring_schedule.name)
Elimine um agendamento
Elimine um horário se não o estiver a usar. Os seus dados existentes permanecem, bem como todas as tarefas criadas anteriormente.
Consola
Na Google Cloud consola, aceda à página Monitorização.
Clique no monitor de modelos que contém o horário a modificar.
Na página de detalhes, aceda ao separador Programações.
Clique na agenda a modificar.
Clique em Eliminar e, de novo, em Eliminar para confirmar.
SDK Python
my_model_monitor.delete_schedule(my_monitoring_schedule.name)
Analise os resultados da tarefa de monitorização
Pode usar a Google Cloud consola para visualizar as distribuições de dados de cada objetivo de monitorização e saber que alterações provocaram a deriva ao longo do tempo.
As visualizações mostram um histograma que compara a distribuição de dados entre os dados de destino e os dados de base. Com base no seu nível de tolerância, pode, por exemplo, decidir ajustar o pipeline de geração de funcionalidades ou voltar a formar o modelo.
Ver detalhes do trabalho
Veja detalhes sobre a execução de uma tarefa de monitorização, como uma lista de funcionalidades monitorizadas e que funcionalidades geraram um alerta.
Consola
Na Google Cloud consola, aceda à página Monitorização.
Clique no monitor de modelos que contém a tarefa a analisar.
Na página Detalhes do monitor, clique no separador Execuções.
Na lista de execuções, clique numa execução para ver os respetivos detalhes, como todas as funcionalidades incluídas numa execução.
O exemplo seguinte mostra uma comparação da distribuição para a funcionalidade country de tarefas de previsão em lote. A Google Cloud consola também fornece detalhes sobre a comparação, consoante a métrica, como o número de valores únicos, o valor médio e o desvio padrão.
Veja os detalhes da funcionalidade
Veja informações sobre uma funcionalidade e uma lista de tarefas de monitorização que incluem a funcionalidade.
Consola
Na Google Cloud consola, aceda à página Monitorização.
Clique no monitor de modelos que contém as tarefas a analisar.
No separador Vista geral, pode ver um resumo, que inclui tendências na deriva para todos os objetivos monitorizados, se tiver a monitorização contínua configurada. Também pode analisar objetivos específicos para ver detalhes como os nomes das funcionalidades monitorizadas e uma lista de execuções de monitorização.
O exemplo seguinte mostra uma comparação da distribuição para a funcionalidade country. Após o histograma, pode ver que execuções geraram um alerta ou selecionar outra tarefa de monitorização que inclua dados de monitorização para esta funcionalidade.