Compartilhar via


Esquema YAML de agendamento da CLI (v2) para o monitoramento do modelo (versão prévia)

APLICA-SE A: Extensão de ML da CLI do Azurev2 (atual)

A sintaxe YAML detalhada neste documento baseia-se no esquema JSON da última versão da extensão de ML da CLI v2. Essa sintaxe só tem a garantia de funcionar com a última versão da extensão de ML da CLI v2. O esquema JSON abrangente pode ser visualizado em https://azuremlschemas.azureedge.net/latest/monitorSchedule.schema.json. Encontre os esquemas para as versões mais antigas da extensão em https://azuremlschemasprod.azureedge.net/.

Sintaxe YAML

Chave Type Descrição Valores permitidos
$schema string O esquema YAML.
name string Obrigatórios. Nome da agenda.
description string Descrição do agendamento.
tags objeto Dicionário de marcas para o agendamento.
trigger objeto Obrigatórios. A configuração do gatilho para definir a regra de quando disparar o trabalho. Um dos dois é obrigatório, RecurrenceTrigger ou CronTrigger.
create_monitor objeto Obrigatórios. A definição do monitor que será disparado por um agendamento. MonitorDefinition é obrigatório.

Configuração de gatilho

Gatilho de recorrência

Chave Type Descrição Valores permitidos
type string Obrigatórios. Especifica o tipo de agendamento. recurrence
frequency string Obrigatórios. Especifica a unidade de tempo que descreve a frequência com que o agendamento é acionado. minute, hour, day, week, month
interval Número inteiro Obrigatórios. Especifica o intervalo no qual o agendamento é acionado.
start_time string Descreve a data e a hora de início com fuso horário. Se start_time for omitido, o primeiro trabalho será executado instantaneamente e os trabalhos futuros serão disparado com base no agendamento, dizendo que start_time será igual ao tempo criado pelo trabalho. Se a hora de início estiver no passado, o primeiro trabalho será executado no próximo tempo de execução calculado.
end_time string Descreve a data e a hora de término com fuso horário. Se end_time for omitido, o agendamento continuará sendo executado até que seja explicitamente desabilitado.
timezone string Especifica o fuso horário da recorrência. Se omitido, por padrão será UTC. Consulte o apêndice para obter valores de fuso horário
pattern objeto Especifica o padrão da recorrência. Se o padrão for omitido, os trabalhos serão disparados de acordo com a lógica de start_time, frequência e intervalo.

Agendamento de recorrência

O agendamento de recorrência define o padrão de recorrência, contendo hours, minutes e weekdays.

  • Quando a frequência é day, o padrão pode especificar hours e minutes.
  • Quando a frequência é week e month, o padrão pode especificar hours, minutes e weekdays.
Chave Type Valores permitidos
hours inteiro ou matriz de inteiro 0-23
minutes inteiro ou matriz de inteiro 0-59
week_days cadeia de caracteres ou matriz de cadeias de caracteres monday, tuesday, wednesday, thursday, friday, saturday, , sunday

CronTrigger

Chave Type Descrição Valores permitidos
type string Obrigatórios. Especifica o tipo de agendamento. cron
expression string Obrigatórios. Especifica a expressão cron para definir como disparar trabalhos. expressão usa a expressão crontab padrão para expressar um agendamento recorrente. Uma única expressão é composta por cinco campos delimitados por espaço:MINUTES HOURS DAYS MONTHS DAYS-OF-WEEK
start_time string Descreve a data e a hora de início com fuso horário. Se start_time for omitido, o primeiro trabalho será executado instantaneamente e os trabalhos futuros serão disparados com base no agendamento, dizendo que start_time será igual à hora de criação do trabalho. Se a hora de início estiver no passado, o primeiro trabalho será executado no próximo tempo de execução calculado.
end_time string Descreve a data e a hora de término com fuso horário. Se end_time for omitido, o agendamento continuará a ser executado até que seja explicitamente desabilitado.
timezone string Especifica o fuso horário da recorrência. Se omitido, por padrão será UTC. Consulte o apêndice para obter valores de fuso horário

Definição do monitor

Chave Type Descrição Valores permitidos Valor padrão
compute Objeto Obrigatório. Descrição dos recursos de computação do Pool do Spark para executar o trabalho de monitoramento.
compute.instance_type String Obrigatório. O tipo de instância de computação a ser usado para o pool do Spark. 'standard_e4s_v3', 'standard_e8s_v3', 'standard_e16s_v3', 'standard_e32s_v3', 'standard_e64s_v3' n/d
compute.runtime_version String Opcional. Define a versão do runtime do Spark. 3.3 3.3
monitoring_target Objeto Ativo(s) do Azure Machine Learning associado(s) ao monitoramento de modelos.
monitoring_target.ml_task String Tarefa de machine learning para o modelo. Os valores permitidos são: classification, regression, question_answering
monitoring_target.endpoint_deployment_id String Opcional. A ID do ponto de extremidade/implantação do Azure Machine Learning associado no formato azureml:myEndpointName:myDeploymentName. Esse campo é obrigatório se seu ponto de extremidade/implantação tiver permitido que a coleta de dados do modelo seja usada para monitoramento do modelo.
monitoring_target.model_id String Opcional. A ID do modelo associado para o monitoramento do modelo.
monitoring_signals Objeto Dicionário dos sinais de monitoramento a serem incluídos. A chave é um nome para o sinal de monitoramento dentro do contexto do monitor e o valor é um objeto contendo uma especificação do sinal de monitoramento. Opcional para o monitoramento do modelo básico que usa os dados recentes de produção anteriores como linha de base de comparação e tem 3 sinais de monitoramento: descompasso de dados, descompasso de previsão e qualidade de dados.
alert_notification Cadeia de caracteres ou objeto Descrição dos destinatários da notificação do alerta. Um dos dois destinos de alerta é permitido: azmonitoring de cadeia de caracteres ou emails de objeto que contém uma matriz de destinatários de email
alert_notification.emails Objeto Lista de endereços de email para receber uma notificação de alerta.

Sinais de monitoramento

Descompasso de dados

À medida que os dados usados para treinar o modelo evoluem na produção, a distribuição dos dados pode mudar, resultando em uma incompatibilidade entre os dados de treinamento e os dados do mundo real que o modelo está sendo usado para prever. O descompasso de dados é um fenômeno que ocorre no aprendizado de máquina quando as propriedades estatísticas dos dados de entrada usados para treinar o modelo são alteradas ao longo do tempo.

Chave Type Descrição Valores permitidos Valor padrão
type String Obrigatório. Tipo de sinal de monitoramento. O componente de processamento do sinal de monitoramento predefinido é carregado automaticamente de acordo com o type especificado aqui. data_drift data_drift
production_data Objeto Opcional. Descrição dos dados de produção a serem analisados para o sinal de monitoramento.
production_data.input_data Objeto Opcional. Descrição da fonte de dados de entrada, consulte a especificação dados de entrada do trabalho.
production_data.data_context String O contexto dos dados, refere-se aos dados de produção do modelo e pode ser entradas ou saídas do modelo model_inputs
production_data.data_window Objeto Opcional. Janela de dados dos dados de referência a serem usados, como os dados de linha de base de comparação. Permitir somente a janela de dados sem interrupção ou janela de dados fixa. Para usar a janela de dados sem interrupção, especifique as propriedades production_data.data_window.lookback_window_offset e production_data.data_window.lookback_window_size. Para usar as janelas de dados fixas, especifique as propriedades production_data.data_window.window_start e production_data.data_window.window_end. Todos os valores de propriedade devem estar no formato ISO8601.
production_data.pre_processing_component String ID do componente no formato de azureml:myPreprocessing@latest para um componente registrado. Isso é necessário se production_data.data.input_data.type for uri_folder, consulte especificação do componente de pré-processamento.
reference_data Objeto Opcional. Dados recentes de produção passada são usados como dados de linha de base de comparação se isso não for especificado. A recomendação é usar dados de treinamento como linha de base de comparação.
reference_data.input_data Objeto Descrição da fonte de dados de entrada, consulte a especificação dados de entrada do trabalho.
reference_data.data_context String O contexto dos dados, refere-se ao contexto em que o conjunto de dados foi usado anteriormente model_inputs, training, test, validation
reference_data.data_column_names.target_column Objeto Opcional. Se os dados forem de treinamento, essa propriedade será necessária para monitorar os reference_data N principais recursos para descompasso de dados.
reference_data.data_window Objeto Opcional. Janela de dados dos dados de referência a serem usados, como os dados de linha de base de comparação. Permitir somente a janela de dados sem interrupção ou janela de dados fixa. Para usar a janela de dados sem interrupção, especifique as propriedades reference_data.data_window.lookback_window_offset e reference_data.data_window.lookback_window_size. Para usar as janelas de dados fixas, especifique as propriedades reference_data.data_window.window_start e reference_data.data_window.window_end. Todos os valores de propriedade devem estar no formato ISO8601.
reference_data_data.pre_processing_component String ID do componente no formato de azureml:myPreprocessing@latest para um componente registrado. Isso é obrigatório se reference_data.input_data.type for uri_folder, consulte a especificação do componente de pré-processamento.
features Objeto Opcional. Os recursos de destino devem ser monitorados quanto ao descompasso dos dados. Alguns modelos podem ter centenas ou milhares de recursos, é sempre recomendável especificar os recursos interessados para monitoramento. Um dos seguintes valores: lista de nomes de recursos, features.top_n_feature_importance ou all_features O padrão é features.top_n_feature_importance = 10 se production_data.data_context for training, caso contrário, o padrão será all_features
alert_enabled Boolean Ativar ou desativar a notificação do alerta para o sinal de monitoramento. True ou False
metric_thresholds Objeto Lista de propriedades de métricas e limites para o sinal de monitoramento. Quando o limite for excedido e alert_enabled for true, o usuário receberá uma notificação de alerta.
metric_thresholds.numerical Objeto Opcional. Lista de métricas e limites no formato key:value, key é o nome da métrica, value é o limite. Nomes de métrica numéricos permitidos: jensen_shannon_distance, normalized_wasserstein_distance, population_stability_index, two_sample_kolmogorov_smirnov_test
metric_thresholds.categorical Objeto Opcional. Lista de métricas e limites no formato 'key:value', 'key' é o nome da métrica, 'value' é o limite. Nomes de métricas categóricas permitidos: jensen_shannon_distance, chi_squared_test, population_stability_index

Descompasso da previsão

O descompasso do previsão rastreia as mudanças na distribuição das saídas de previsão de um modelo comparando-as com dados rotulados de validação ou teste ou dados recentes de produção anteriores.

Chave Type Descrição Valores permitidos Valor padrão
type String Obrigatório. Tipo de sinal de monitoramento. O componente de processamento do sinal de monitoramento predefinido é carregado automaticamente de acordo com o type especificado aqui. prediction_drift prediction_drift
production_data Objeto Opcional. Descrição dos dados de produção a serem analisados para o sinal de monitoramento.
production_data.input_data Objeto Opcional. Descrição da fonte de dados de entrada, consulte a especificação dados de entrada do trabalho.
production_data.data_context String O contexto dos dados, refere-se aos dados de produção do modelo e pode ser entradas ou saídas do modelo model_outputs
production_data.data_window Objeto Opcional. Janela de dados dos dados de referência a serem usados, como os dados de linha de base de comparação. Permitir somente a janela de dados sem interrupção ou janela de dados fixa. Para usar a janela de dados sem interrupção, especifique as propriedades production_data.data_window.lookback_window_offset e production_data.data_window.lookback_window_size. Para usar as janelas de dados fixas, especifique as propriedades production_data.data_window.window_start e production_data.data_window.window_end. Todos os valores de propriedade devem estar no formato ISO8601.
production_data.pre_processing_component String ID do componente no formato de azureml:myPreprocessing@latest para um componente registrado. Isso é necessário se production_data.data.input_data.type for uri_folder. Para obter mais informações sobre a especificação do componente de pré-processamento, consulte especificação do componente de pré-processamento.
reference_data Objeto Opcional. Dados recentes de produção passada são usados como dados de linha de base de comparação se isso não for especificado. A recomendação é usar dados de treinamento como linha de base de comparação.
reference_data.input_data Objeto Descrição da fonte de dados de entrada, consulte a especificação dados de entrada do trabalho.
reference_data.data_context String O contexto dos dados, refere-se ao contexto em que o conjunto de dados foi usado anteriormente model_inputs, training, test, validation
reference_data.data_column_names.target_column Objeto Opcional. Se 'reference_data' for dados de treinamento, essa propriedade será necessária para monitorar os principais recursos N para o descompasso de dados.
reference_data.data_window Objeto Opcional. Janela de dados dos dados de referência a serem usados, como os dados de linha de base de comparação. Permitir somente a janela de dados sem interrupção ou janela de dados fixa. Para usar a janela de dados sem interrupção, especifique as propriedades reference_data.data_window.lookback_window_offset e reference_data.data_window.lookback_window_size. Para usar as janelas de dados fixas, especifique as propriedades reference_data.data_window.window_start e reference_data.data_window.window_end. Todos os valores de propriedade devem estar no formato ISO8601.
reference_data_data.pre_processing_component String ID do componente no formato de azureml:myPreprocessing@latest para um componente registrado. Isso é obrigatório se reference_data.input_data.type for uri_folder, consulte a especificação do componente de pré-processamento.
features Objeto Opcional. Os recursos de destino devem ser monitorados quanto ao descompasso dos dados. Alguns modelos podem ter centenas ou milhares de recursos, é sempre recomendável especificar os recursos interessados para monitoramento. Um dos seguintes valores: lista de nomes de recursos, features.top_n_feature_importance ou all_features O padrão é features.top_n_feature_importance = 10 se production_data.data_context for training, caso contrário, o padrão será all_features
alert_enabled Boolean Ativar ou desativar a notificação do alerta para o sinal de monitoramento. True ou False
metric_thresholds Objeto Lista de propriedades de métricas e limites para o sinal de monitoramento. Quando o limite for excedido e alert_enabled for true, o usuário receberá uma notificação de alerta.
metric_thresholds.numerical Objeto Opcional. Lista de métricas e limites no formato 'key:value', 'key' é o nome da métrica, 'value' é o limite. Nomes de métrica numéricos permitidos: jensen_shannon_distance, normalized_wasserstein_distance, population_stability_index, two_sample_kolmogorov_smirnov_test
metric_thresholds.categorical Objeto Opcional. Lista de métricas e limites no formato 'key:value', 'key' é o nome da métrica, 'value' é o limite. Nomes de métricas categóricas permitidos: jensen_shannon_distance, chi_squared_test, population_stability_index

Qualidade dos dados

O sinal de qualidade de dados rastreia problemas de qualidade de dados na produção, comparando com dados de treinamento ou dados recentes de produção anteriores.

Chave Type Descrição Valores permitidos Valor padrão
type String Obrigatório. Tipo de sinal de monitoramento. O componente de processamento do sinal de monitoramento predefinido é carregado automaticamente de acordo com o type especificado aqui data_quality data_quality
production_data Objeto Opcional. Descrição dos dados de produção a serem analisados para o sinal de monitoramento.
production_data.input_data Objeto Opcional. Descrição da fonte de dados de entrada, consulte a especificação dados de entrada do trabalho.
production_data.data_context String O contexto dos dados, refere-se aos dados de produção do modelo e pode ser entradas ou saídas do modelo model_inputs, model_outputs
production_data.data_window Objeto Opcional. Janela de dados dos dados de referência a serem usados, como os dados de linha de base de comparação. Permitir somente a janela de dados sem interrupção ou janela de dados fixa. Para usar a janela de dados sem interrupção, especifique as propriedades production_data.data_window.lookback_window_offset e production_data.data_window.lookback_window_size. Para usar as janelas de dados fixas, especifique as propriedades production_data.data_window.window_start e production_data.data_window.window_end. Todos os valores de propriedade devem estar no formato ISO8601.
production_data.pre_processing_component String ID do componente no formato de azureml:myPreprocessing@latest para um componente registrado. Isso é necessário se production_data.input_data.type for uri_folder, consulte especificação do componente de pré-processamento.
reference_data Objeto Opcional. Dados recentes de produção passada são usados como dados de linha de base de comparação se isso não for especificado. A recomendação é usar dados de treinamento como linha de base de comparação.
reference_data.input_data Objeto Descrição da fonte de dados de entrada, consulte a especificação dados de entrada do trabalho.
reference_data.data_context String O contexto dos dados, refere-se ao contexto em que o conjunto de dados foi usado anteriormente model_inputs, model_outputs, training, test, validation
reference_data.data_column_names.target_column Objeto Opcional. Se 'reference_data' for dados de treinamento, essa propriedade será necessária para monitorar os principais recursos N para o descompasso de dados.
reference_data.data_window Objeto Opcional. Janela de dados dos dados de referência a serem usados, como os dados de linha de base de comparação. Permitir somente a janela de dados sem interrupção ou janela de dados fixa. Para usar a janela de dados sem interrupção, especifique as propriedades reference_data.data_window.lookback_window_offset e reference_data.data_window.lookback_window_size. Para usar as janelas de dados fixas, especifique as propriedades reference_data.data_window.window_start e reference_data.data_window.window_end. Todos os valores de propriedade devem estar no formato ISO8601.
reference_data.pre_processing_component String ID do componente no formato de azureml:myPreprocessing@latest para um componente registrado. Isso é necessário se reference_data.input_data.type for uri_folder, consulte especificação do componente de pré-processamento.
features Objeto Opcional. Recursos de destino a serem monitorados quanto à qualidade dos dados. Alguns modelos podem ter centenas ou milhares de recursos. É sempre recomendável especificar recursos de interesse para monitoramento. Um dos seguintes valores: lista de nomes de recursos, features.top_n_feature_importance ou all_features O padrão para features.top_n_feature_importance = 10 se reference_data.data_context for training, caso contrário, o padrão será all_features
alert_enabled Boolean Ativar ou desativar a notificação do alerta para o sinal de monitoramento. True ou False
metric_thresholds Objeto Lista de propriedades de métricas e limites para o sinal de monitoramento. Quando o limite for excedido e alert_enabled for true, o usuário receberá uma notificação de alerta.
metric_thresholds.numerical Objeto Lista Opcional de métricas e limites no formato key:value, key é o nome da métrica, value é o limite. Nomes de métrica numéricos permitidos: data_type_error_rate, null_value_rate, out_of_bounds_rate
metric_thresholds.categorical Objeto Lista Opcional de métricas e limites no formato key:value, key é o nome da métrica, value é o limite. Nomes de métricas categóricas permitidos: data_type_error_rate, null_value_rate, out_of_bounds_rate

Descompasso de atribuição de recursos (versão prévia)

A atribuição de recursos de um modelo pode mudar ao longo do tempo devido a mudanças na distribuição dos dados, mudanças nas relações entre os recursos ou mudanças no problema subjacente que está sendo resolvido. O descompasso da atribuição de recursos é um fenômeno que ocorre em modelos de aprendizado de máquina quando a importância ou a contribuição de recursos para a saída da previsão muda ao longo do tempo.

Chave Type Descrição Valores permitidos Valor padrão
type String Obrigatório. Tipo de sinal de monitoramento. O componente de processamento do sinal de monitoramento predefinido é carregado automaticamente de acordo com o type especificado aqui feature_attribution_drift feature_attribution_drift
production_data Array Opcional, padrão para dados coletados associados ao ponto de extremidade do Azure Machine Learning se isso não for fornecido. O production_data é uma lista de conjuntos de dados e seus metadados associados, ele deve incluir os dados de entradas de modelo e saídas de modelo. Pode ser um único conjunto de dados com entradas e saídas de modelo, ou pode ser dois conjuntos de dados separados contendo uma entrada de modelo e uma saída de modelo.
production_data.input_data Objeto Opcional. Descrição da fonte de dados de entrada, consulte a especificação dados de entrada do trabalho.
production_data.input_data.data_column_names Objeto Nomes de coluna de correlação e de coluna de previsão no formato key:value, necessários para a junção de dados. As chaves permitidas são: correlation_id, target_column
production_data.data_context String O contexto dos dados. Refere-se aos dados de entradas do modelo de produção. model_inputs, model_outputs, model_inputs_outputs
production_data.data_window Objeto Opcional. Janela de dados dos dados de referência a serem usados, como os dados de linha de base de comparação. Permitir somente a janela de dados sem interrupção ou janela de dados fixa. Para usar a janela de dados sem interrupção, especifique as propriedades production_data.data_window.lookback_window_offset e production_data.data_window.lookback_window_size. Para usar as janelas de dados fixas, especifique as propriedades production_data.data_window.window_start e production_data.data_window.window_end. Todos os valores de propriedade devem estar no formato ISO8601.
production_data.pre_processing_component String ID do componente no formato de azureml:myPreprocessing@latest para um componente registrado. Isso é necessário se production_data.input_data.type for uri_folder, consulte especificação do componente de pré-processamento.
production_data.data_window_size String Opcional. Tamanho da janela de dados em dias com o formato ISO8601, por exemplo, P7D. Essa é a janela de dados de produção a ser computada para problemas de qualidade de dados. Por padrão, o tamanho da janela de dados é o último período de monitoramento.
reference_data Objeto Opcional. Dados recentes de produção passada são usados como dados de linha de base de comparação se isso não for especificado. A recomendação é usar dados de treinamento como linha de base de comparação.
reference_data.input_data Objeto Descrição da fonte de dados de entrada, consulte a especificação dados de entrada do trabalho.
reference_data.data_context String O contexto dos dados refere-se ao contexto em que o conjunto de dados foi usado anteriormente. Descompasso de dados dos recursos do Fro, somente training dados permitidos. training
reference_data.data_column_names.target_column String Obrigatório.
reference_data.data_window Objeto Opcional. Janela de dados dos dados de referência a serem usados, como os dados de linha de base de comparação. Permitir somente a janela de dados sem interrupção ou janela de dados fixa. Para usar a janela de dados sem interrupção, especifique as propriedades reference_data.data_window.lookback_window_offset e reference_data.data_window.lookback_window_size. Para usar as janelas de dados fixas, especifique as propriedades reference_data.data_window.window_start e reference_data.data_window.window_end. Todos os valores de propriedade devem estar no formato ISO8601.
reference_data.pre_processing_component String ID do componente no formato de azureml:myPreprocessing@latest para um componente registrado. Isso é necessário se reference_data.input_data.type for uri_folder, consulte especificação do componente de pré-processamento.
alert_enabled Boolean Ativar ou desativar a notificação do alerta para o sinal de monitoramento. True ou False
metric_thresholds Objeto Nome da métrica e limite para descompasso de dados dos recursos no formato key:value, em que key é o nome da métrica e value é o limite. Quando o limite for excedido e alert_enabled estiver ativado, o usuário receberá uma notificação de alerta. Nome da métrica permitido: normalized_discounted_cumulative_gain

Sinal de monitoramento personalizado

Sinal de monitoramento personalizado por meio de um componente personalizado do Azure Machine Learning.

Chave Type Descrição Valores permitidos Valor padrão
type String Obrigatório. Tipo de sinal de monitoramento. O componente de processamento do sinal de monitoramento predefinido é carregado automaticamente de acordo com o type especificado aqui. custom custom
component_id String Obrigatório. A ID do componente do Azure Machine Learning correspondente ao seu sinal personalizado. Por exemplo azureml:mycustomcomponent:1
input_data Objeto Opcional. Descrição dos dados de entrada a serem analisados pelo sinal de monitoramento, consulte a especificação dos dados de entrada do trabalho.
input_data.<data_name>.data_context String O contexto dos dados, refere-se aos dados de produção do modelo e pode ser entradas ou saídas do modelo model_inputs
input_data.<data_name>.data_window Objeto Opcional. Janela de dados dos dados de referência a serem usados, como os dados de linha de base de comparação. Permitir somente a janela de dados sem interrupção ou janela de dados fixa. Para usar a janela de dados sem interrupção, especifique as propriedades input_data.<data_name>.data_window.lookback_window_offset e input_data.<data_name>.data_window.lookback_window_size. Para usar as janelas de dados fixas, especifique as propriedades input_data.<data_name>.data_window.window_start e input_data.<data_name>.data_window.window_end. Todos os valores de propriedade devem estar no formato ISO8601.
input_data.<data_name>.pre_processing_component String ID do componente no formato de azureml:myPreprocessing@latest para um componente registrado. Isso é necessário se input_data.<data_name>.input_data.type for uri_folder, consulte especificação do componente de pré-processamento.
alert_enabled Boolean Ativar ou desativar a notificação do alerta para o sinal de monitoramento. True ou False
metric_thresholds.metric_name Objeto Nome da métrica personalizada.
threshold Objeto Limite aceitável para a métrica personalizada.

Desempenho de modelo (versão prévia)

O desempenho do modelo acompanha o desempenho objetivo da saída de um modelo em produção, comparando-o aos dados verídicos básicos coletados.

Chave Type Descrição Valores permitidos Valor padrão
type String Obrigatório. Tipo de sinal de monitoramento. O componente de processamento do sinal de monitoramento predefinido é carregado automaticamente de acordo com o type especificado aqui model_performance model_performance
production_data Array Opcional, padrão para dados coletados associados ao ponto de extremidade do Azure Machine Learning se isso não for fornecido. O production_data é uma lista de conjuntos de dados e seus metadados associados, ele deve incluir os dados de entradas de modelo e saídas de modelo. Pode ser um único conjunto de dados com entradas e saídas de modelo, ou pode ser dois conjuntos de dados separados contendo uma entrada de modelo e uma saída de modelo.
production_data.input_data Objeto Opcional. Descrição da fonte de dados de entrada, consulte a especificação dados de entrada do trabalho.
production_data.input_data.data_column_names Objeto Nomes de coluna de correlação e de coluna de previsão no formato key:value, necessários para a junção de dados. As chaves permitidas são: correlation_id, target_column
production_data.data_context String O contexto dos dados. Refere-se aos dados de entradas do modelo de produção. model_inputs, model_outputs, model_inputs_outputs
production_data.data_window Objeto Opcional. Janela de dados dos dados de referência a serem usados, como os dados de linha de base de comparação. Permitir somente a janela de dados sem interrupção ou janela de dados fixa. Para usar a janela de dados sem interrupção, especifique as propriedades production_data.data_window.lookback_window_offset e production_data.data_window.lookback_window_size. Para usar as janelas de dados fixas, especifique as propriedades production_data.data_window.window_start e production_data.data_window.window_end. Todos os valores de propriedade devem estar no formato ISO8601.
production_data.pre_processing_component String ID do componente no formato de azureml:myPreprocessing@latest para um componente registrado. Isso é necessário se production_data.input_data.type for uri_folder, consulte especificação do componente de pré-processamento.
production_data.data_window_size String Opcional. Tamanho da janela de dados em dias com o formato ISO8601, por exemplo, P7D. Essa é a janela de dados de produção a ser computada para problemas de qualidade de dados. Por padrão, o tamanho da janela de dados é o último período de monitoramento.
reference_data Objeto Opcional. Dados recentes de produção passada são usados como dados de linha de base de comparação se isso não for especificado. A recomendação é usar dados de treinamento como linha de base de comparação.
reference_data.input_data Objeto Descrição da fonte de dados de entrada, consulte a especificação dados de entrada do trabalho.
reference_data.data_context String O contexto dos dados refere-se ao contexto em que o conjunto de dados foi usado anteriormente. Descompasso de dados dos recursos do Fro, somente training dados permitidos. training
reference_data.data_column_names.target_column String Obrigatório.
reference_data.data_window Objeto Opcional. Janela de dados dos dados de referência a serem usados, como os dados de linha de base de comparação. Permitir somente a janela de dados sem interrupção ou janela de dados fixa. Para usar a janela de dados sem interrupção, especifique as propriedades reference_data.data_window.lookback_window_offset e reference_data.data_window.lookback_window_size. Para usar as janelas de dados fixas, especifique as propriedades reference_data.data_window.window_start e reference_data.data_window.window_end. Todos os valores de propriedade devem estar no formato ISO8601.
reference_data.pre_processing_component String ID do componente no formato de azureml:myPreprocessing@latest para um componente registrado. Isso é necessário se reference_data.input_data.type for uri_folder, consulte especificação do componente de pré-processamento.
alert_enabled Boolean Ativar ou desativar a notificação do alerta para o sinal de monitoramento. True ou False
metric_thresholds.classification Objeto Lista Opcional de métricas e limites no formato key:value, key é o nome da métrica, value é o limite. Nomes de métrica de classification permitidos: accuracy, precision, recall
metric_thresholds.regression Objeto Lista Opcional de métricas e limites no formato key:value, key é o nome da métrica, value é o limite. Nomes de métrica de regression permitidos: mae, mse, rmse

Comentários

O comando az ml schedule pode ser usado para gerenciar modelos do Azure Machine Learning.

Exemplos

Os exemplos da CLI de monitoramento estão disponíveis no repositório GitHub de exemplos. Algumas delas são as seguintes:

YAML: monitor pronto para uso

APLICA-SE A: Extensão de ML da CLI do Azurev2 (atual)

# out-of-box-monitoring.yaml
$schema:  http://azureml/sdk-2-0/Schedule.json
name: credit_default_model_monitoring
display_name: Credit default model monitoring
description: Credit default model monitoring setup with minimal configurations

trigger:
  # perform model monitoring activity daily at 3:15am
  type: recurrence
  frequency: day #can be minute, hour, day, week, month
  interval: 1 # #every day
  schedule: 
    hours: 3 # at 3am
    minutes: 15 # at 15 mins after 3am

create_monitor:

  compute: # specify a spark compute for monitoring job
    instance_type: standard_e4s_v3
    runtime_version: "3.3"

  monitoring_target: 
    ml_task: classification # model task type: [classification, regression, question_answering]
    endpoint_deployment_id: azureml:credit-default:main # azureml endpoint deployment id

  alert_notification: # emails to get alerts
    emails:
      - abc@example.com
      - def@example.com

YAML: Monitor avançado

APLICA-SE A: Extensão de ML da CLI do Azurev2 (atual)

# advanced-model-monitoring.yaml
$schema:  http://azureml/sdk-2-0/Schedule.json
name: fraud_detection_model_monitoring
display_name: Fraud detection model monitoring
description: Fraud detection model monitoring with advanced configurations

trigger:
  # perform model monitoring activity daily at 3:15am
  type: recurrence
  frequency: day #can be minute, hour, day, week, month
  interval: 1 # #every day
  schedule: 
    hours: 3 # at 3am
    minutes: 15 # at 15 mins after 3am

create_monitor:

  compute: 
    instance_type: standard_e4s_v3
    runtime_version: "3.3"

  monitoring_target:
    ml_task: classification
    endpoint_deployment_id: azureml:credit-default:main
  
  monitoring_signals:
    advanced_data_drift: # monitoring signal name, any user defined name works
      type: data_drift
      # reference_dataset is optional. By default referece_dataset is the production inference data associated with Azure Machine Learning online endpoint
      reference_data:
        input_data:
          path: azureml:credit-reference:1 # use training data as comparison reference dataset
          type: mltable
        data_context: training
        data_column_names:
          target_column: DEFAULT_NEXT_MONTH
      features: 
        top_n_feature_importance: 10 # monitor drift for top 10 features
      metric_thresholds:
        numerical:
          jensen_shannon_distance: 0.01
        categorical:
          pearsons_chi_squared_test: 0.02
    advanced_data_quality:
      type: data_quality
      # reference_dataset is optional. By default reference_dataset is the production inference data associated with Azure Machine Learning online endpoint
      reference_data:
        input_data:
          path: azureml:credit-reference:1
          type: mltable
        data_context: training
      features: # monitor data quality for 3 individual features only
        - SEX
        - EDUCATION
      metric_thresholds:
        numerical:
          null_value_rate: 0.05
        categorical:
          out_of_bounds_rate: 0.03

    feature_attribution_drift_signal:
      type: feature_attribution_drift
      # production_data: is not required input here
      # Please ensure Azure Machine Learning online endpoint is enabled to collected both model_inputs and model_outputs data
      # Azure Machine Learning model monitoring will automatically join both model_inputs and model_outputs data and used it for computation
      reference_data:
        input_data:
          path: azureml:credit-reference:1
          type: mltable
        data_context: training
        data_column_names:
          target_column: DEFAULT_NEXT_MONTH
      metric_thresholds:
        normalized_discounted_cumulative_gain: 0.9
  
  alert_notification:
    emails:
      - abc@example.com
      - def@example.com

Apêndice

Fuso horário

O agendamento atual dá suporte aos fusos horários a seguir. A chave pode ser usada diretamente no SDK do Python, enquanto o valor pode ser usado no trabalho YAML. A tabela está organizada por UTC (Tempo Universal Coordenado).

UTC Chave Valor
UTC -12:00 DATELINE_STANDARD_TIME “Hora Oficial do Meridiano de Data”
UTC -11:00 UTC_11 "UTC-11"
UTC - 10:00 ALEUTIAN_STANDARD_TIME Hora Padrão das Aleutas
UTC - 10:00 HAWAIIAN_STANDARD_TIME “Hora Oficial do Havaí”
UTC -09:30 MARQUESAS_STANDARD_TIME “Hora Oficial de Marquesas”
UTC -09:00 ALASKAN_STANDARD_TIME “Hora Oficial do Alasca”
UTC -09:00 UTC_09 "UTC-09"
UTC -08:00 PACIFIC_STANDARD_TIME_MEXICO “Hora Oficial do Pacífico (México)”
UTC -08:00 UTC_08 "UTC-08"
UTC -08:00 PACIFIC_STANDARD_TIME “Hora Oficial do Pacífico”
UTC -07:00 US_MOUNTAIN_STANDARD_TIME “Hora Oficial das Montanhas dos EUA”
UTC -07:00 MOUNTAIN_STANDARD_TIME_MEXICO “Hora Padrão das Montanhas (México)”
UTC -07:00 MOUNTAIN_STANDARD_TIME “Hora Oficial das Montanhas”
UTC -06:00 CENTRAL_AMERICA_STANDARD_TIME “Hora Oficial da América Central”
UTC -06:00 CENTRAL_STANDARD_TIME “Hora Oficial Central”
UTC -06:00 EASTER_ISLAND_STANDARD_TIME “Hora Oficial da Ilha da Páscoa”
UTC -06:00 CENTRAL_STANDARD_TIME_MEXICO “Hora Oficial Central (México)”
UTC -06:00 CANADA_CENTRAL_STANDARD_TIME “Hora Oficial do Canadá Central”
UTC -05:00 SA_PACIFIC_STANDARD_TIME “Hora Oficial do Pacífico na América do Sul”
UTC -05:00 EASTERN_STANDARD_TIME_MEXICO “Hora Oficial Oriental (México)”
UTC -05:00 EASTERN_STANDARD_TIME “Hora Oficial do Leste dos EUA”
UTC -05:00 HAITI_STANDARD_TIME “Hora Oficial do Haiti”
UTC -05:00 CUBA_STANDARD_TIME “Hora Oficial de Cuba”
UTC -05:00 US_EASTERN_STANDARD_TIME “Hora Oficial do Leste dos EUA”
UTC -05:00 TURKS_AND_CAICOS_STANDARD_TIME “Hora Oficial Turcos e Caicos”
UTC -04:00 PARAGUAY_STANDARD_TIME “Hora Oficial do Paraguai”
UTC -04:00 ATLANTIC_STANDARD_TIME “Hora Oficial do Atlântico”
UTC -04:00 VENEZUELA_STANDARD_TIME “Hora Oficial da Venezuela”
UTC -04:00 CENTRAL_BRAZILIAN_STANDARD_TIME “Hora Oficial do Brasil Central”
UTC -04:00 SA_WESTERN_STANDARD_TIME “Hora Oficial do Oeste da América do Sul”
UTC -04:00 PACIFIC_SA_STANDARD_TIME “Hora Oficial do Pacífico SA”
UTC -03:30 NEWFOUNDLAND_STANDARD_TIME “Hora Oficial de Newfoundland”
UTC -03:00 TOCANTINS_STANDARD_TIME “Hora Oficial de Tocantins”
UTC -03:00 E_SOUTH_AMERICAN_STANDARD_TIME “E. Hora Oficial do Brasil”
UTC -03:00 SA_EASTERN_STANDARD_TIME “Hora Oficial de Buenos Aires”
UTC -03:00 ARGENTINA_STANDARD_TIME “Hora Oficial da Argentina”
UTC -03:00 GREENLAND_STANDARD_TIME “Hora Oficial da Groenlândia”
UTC -03:00 MONTEVIDEO_STANDARD_TIME “Hora Oficial de Montevidéu”
UTC -03:00 SAINT_PIERRE_STANDARD_TIME “Hora Oficial de Saint Pierre”
UTC -03:00 BAHIA_STANDARD_TIM “Hora Oficial da Bahia”
UTC -02:00 UTC_02 "UTC-02"
UTC -02:00 MID_ATLANTIC_STANDARD_TIME “Hora Oficial do Atlântico Central”
UTC -01:00 AZORES_STANDARD_TIME “Hora Oficial dos Açores”
UTC -01:00 CAPE_VERDE_STANDARD_TIME “Hora Oficial do Cabo Verde”
UTC UTC UTC
UTC +00:00 GMT_STANDARD_TIME “Hora Oficial GMT”
UTC +00:00 GREENWICH_STANDARD_TIME “Hora Oficial de Greenwich”
UTC +01:00 MOROCCO_STANDARD_TIME “Hora Oficial do Marrocos”
UTC +01:00 W_EUROPE_STANDARD_TIME "W. Hora Oficial da Europa Ocidental”
UTC +01:00 CENTRAL_EUROPE_STANDARD_TIME “Hora Oficial da Europa Central”
UTC +01:00 ROMANCE_STANDARD_TIME “Hora Oficial Românica”
UTC +01:00 CENTRAL_EUROPEAN_STANDARD_TIME “Hora Oficial da Europa Central”
UTC +01:00 W_CENTRAL_AFRICA_STANDARD_TIME "W. “Hora Oficial do Centro-oeste da África”
UTC +02:00 NAMIBIA_STANDARD_TIME “Hora Oficial da Namíbia”
UTC +02:00 JORDAN_STANDARD_TIME “Hora Oficial da Jordânia”
UTC +02:00 GTB_STANDARD_TIME “Hora Oficial GTB”
UTC +02:00 MIDDLE_EAST_STANDARD_TIME “Hora Oficial do Oriente Médio”
UTC +02:00 EGYPT_STANDARD_TIME “Hora Oficial do Egito”
UTC +02:00 E_EUROPE_STANDARD_TIME “E. Hora Oficial da Europa Ocidental”
UTC +02:00 SYRIA_STANDARD_TIME “Hora Oficial da Síria”
UTC +02:00 WEST_BANK_STANDARD_TIME “Hora Oficial de West Bank”
UTC +02:00 SOUTH_AFRICA_STANDARD_TIME “Hora Oficial da África do Sul”
UTC +02:00 FLE_STANDARD_TIME “Hora Oficial FLE”
UTC +02:00 ISRAEL_STANDARD_TIME “Hora Oficial de Israel”
UTC +02:00 KALININGRAD_STANDARD_TIME “Hora Oficial de Kaliningrado”
UTC +02:00 LIBYA_STANDARD_TIME “Hora Oficial da Líbia”
UTC +03:00 TÜRKIYE_STANDARD_TIME "Hora Padrão da Turquia"
UTC +03:00 ARABIC_STANDARD_TIME “Hora Oficial Arábica”
UTC +03:00 ARAB_STANDARD_TIME “Hora Oficial Árabe”
UTC +03:00 BELARUS_STANDARD_TIME “Hora Oficial de Belarus”
UTC +03:00 RUSSIAN_STANDARD_TIME “Hora Oficial Russa”
UTC +03:00 E_AFRICA_STANDARD_TIME “E. Hora Oficial do Leste da África”
UTC +03:30 IRAN_STANDARD_TIME “Hora Oficial do Irã”
UTC +04:00 ARABIAN_STANDARD_TIME “Hora Oficial Árabe”
UTC +04:00 ASTRAKHAN_STANDARD_TIME “Hora Oficial de Astrakhan”
UTC +04:00 AZERBAIJAN_STANDARD_TIME “Hora Oficial do Azerbaijão”
UTC +04:00 RUSSIA_TIME_ZONE_3 “Fuso Horário da Rússia 3”
UTC +04:00 MAURITIUS_STANDARD_TIME “Hora Oficial de Maurício”
UTC +04:00 GEORGIAN_STANDARD_TIME “Hora Oficial da Geórgia”
UTC +04:00 CAUCASUS_STANDARD_TIME “Hora Oficial do Cáucaso”
UTC +04:30 AFGHANISTAN_STANDARD_TIME “Hora Oficial do Afeganistão”
UTC +05:00 WEST_ASIA_STANDARD_TIME “Hora Oficial do Oeste da Ásia”
UTC +05:00 EKATERINBURG_STANDARD_TIME “Hora Oficial de Ecaterimburgo”
UTC +05:00 PAKISTAN_STANDARD_TIME “Hora Oficial do Paquistão”
UTC +05:30 INDIA_STANDARD_TIME “Hora Oficial da Índia”
UTC +05:30 SRI_LANKA_STANDARD_TIME “Hora Oficial do Sri Lanka”
UTC +05:45 NEPAL_STANDARD_TIME “Hora Oficial do Nepal”
UTC +06:00 CENTRAL_ASIA_STANDARD_TIME “Hora Oficial da Ásia Central”
UTC +06:00 BANGLADESH_STANDARD_TIME “Hora Oficial de Bangladesh”
UTC +06:30 MYANMAR_STANDARD_TIME “Hora Oficial de Mianmar”
UTC +07:00 N_CENTRAL_ASIA_STANDARD_TIME "N. Hora Oficial do Centro-Norte da Ásia”
UTC +07:00 SE_ASIA_STANDARD_TIME “Hora Oficial do Sudeste da Ásia”
UTC +07:00 ALTAI_STANDARD_TIME “Hora Oficial de Altai”
UTC +07:00 W_MONGOLIA_STANDARD_TIME "W. “Hora Oficial da Mongólia Ocidental”
UTC +07:00 NORTH_ASIA_STANDARD_TIME “Hora Oficial do Norte da Ásia”
UTC +07:00 TOMSK_STANDARD_TIME “Hora Oficial de Tomsk”
UTC +08:00 CHINA_STANDARD_TIME “Hora Oficial da China”
UTC +08:00 NORTH_ASIA_EAST_STANDARD_TIME “Hora Oficial do Nordeste da Ásia”
UTC +08:00 SINGAPORE_STANDARD_TIME “Hora Oficial de Singapura”
UTC +08:00 W_AUSTRALIA_STANDARD_TIME "W. “Hora Oficial da Austrália Central”
UTC +08:00 TAIPEI_STANDARD_TIME “Hora Oficial de Taipé”
UTC +08:00 ULAANBAATAR_STANDARD_TIME “Hora Oficial de Ulan Bator”
UTC +08:45 AUS_CENTRAL_W_STANDARD_TIME “Hora Oficial do Centro-Oeste da Austrália”
UTC +09:00 NORTH_KOREA_STANDARD_TIME “Hora Oficial da Coreia do Norte”
UTC +09:00 TRANSBAIKAL_STANDARD_TIME “Hora Oficial de Transbaikal”
UTC +09:00 TOKYO_STANDARD_TIME “Hora Oficial de Tóquio”
UTC +09:00 KOREA_STANDARD_TIME “Hora Oficial da Coreia do Sul”
UTC +09:00 YAKUTSK_STANDARD_TIME “Hora Oficial de Yakutsk”
UTC +09:30 CEN_AUSTRALIA_STANDARD_TIME "Cen. Hora Oficial da Austrália Central”
UTC +09:30 AUS_CENTRAL_STANDARD_TIME “Hora Oficial da Austrália Central”
UTC +10:00 E_AUSTRALIAN_STANDARD_TIME “E. Hora Oficial da Austrália Central”
UTC +10:00 AUS_EASTERN_STANDARD_TIME “Hora Oficial do Leste da Austrália”
UTC +10:00 WEST_PACIFIC_STANDARD_TIME “Hora Oficial do Oeste do Pacífico”
UTC +10:00 TASMANIA_STANDARD_TIME “Hora Oficial da Tasmânia”
UTC +10:00 VLADIVOSTOK_STANDARD_TIME “Hora Oficial de Vladivostok”
UTC +10:30 LORD_HOWE_STANDARD_TIME “Hora Oficial de Lord Howe”
UTC +11:00 BOUGAINVILLE_STANDARD_TIME “Hora Oficial de Bougainville”
UTC +11:00 RUSSIA_TIME_ZONE_10 “Fuso Horário da Rússia 10”
UTC +11:00 MAGADAN_STANDARD_TIME “Hora Oficial de Magadan”
UTC +11:00 NORFOLK_STANDARD_TIME “Hora Oficial de Norfolk”
UTC +11:00 SAKHALIN_STANDARD_TIME “Hora Oficial de Sakhalin”
UTC +11:00 CENTRAL_PACIFIC_STANDARD_TIME “Hora Oficial do Pacífico Central”
UTC +12:00 RUSSIA_TIME_ZONE_11 “Fuso Horário da Rússia 11”
UTC +12:00 NEW_ZEALAND_STANDARD_TIME “Hora Oficial da Nova Zelândia”
UTC +12:00 UTC_12 "UTC+12"
UTC +12:00 FIJI_STANDARD_TIME “Hora Oficial de Fiji”
UTC +12:00 KAMCHATKA_STANDARD_TIME “Hora Oficial de Kamchatka”
UTC +12:45 CHATHAM_ISLANDS_STANDARD_TIME “Hora Oficial das Ilhas Chatham”
UTC +13:00 TONGA__STANDARD_TIME “Hora Oficial de Tonga”
UTC +13:00 SAMOA_STANDARD_TIME “Hora Oficial de Samoa”
UTC +14:00 LINE_ISLANDS_STANDARD_TIME “Hora Oficial das Ilhas Line”