Partilhar via


DataDriftDetector Classe

Define um monitor de desvio de dados que pode ser usado para executar trabalhos de desvio de dados no Aprendizado de Máquina do Azure.

A classe DataDriftDetector permite identificar desvios entre uma determinada linha de base e um determinado conjunto de dados de destino. Um objeto DataDriftDetector é criado em um espaço de trabalho especificando diretamente os conjuntos de dados de linha de base e de destino. Para obter mais informações, consulte https://aka.ms/datadrift.

Datadriftdetector construtor.

O construtor DataDriftDetector é usado para recuperar uma representação em nuvem de um objeto DataDriftDetector associado ao espaço de trabalho fornecido.

Herança
builtins.object
DataDriftDetector

Construtor

DataDriftDetector(workspace, name=None, baseline_dataset=None, target_dataset=None, compute_target=None, frequency=None, feature_list=None, alert_config=None, drift_threshold=None, latency=None)

Parâmetros

Name Description
workspace
Necessário

O espaço de trabalho no qual criar o objeto DataDriftDetector.

name
str

Um nome exclusivo para o objeto DataDriftDetector.

Default value: None
baseline_dataset

Conjunto de dados para comparar o conjunto de dados de destino.

Default value: None
target_dataset

Conjunto de dados para executar adhoc ou trabalhos DataDrift agendados. Deve ser uma série temporal.

Default value: None
compute_target

Nome opcional do Azure Machine Learning ComputeTarget ou ComputeTarget. DataDriftDetector criará um destino de computação se um não for especificado.

Default value: None
frequency
str

Frequência opcional que indica a frequência com que o pipeline é executado. Suporta "Dia", "Semana" ou "Mês".

Default value: None
feature_list

Recursos opcionais na lista de permissões para executar a deteção de desvio de dados. Os trabalhos do DataDriftDetector serão executados em todos os recursos se feature_list não for especificado. A lista de recursos pode conter caracteres, números, traços e espaços em branco. O tamanho da lista deve ser inferior a 200.

Default value: None
alert_config

Objeto de configuração opcional para alertas DataDriftDetector.

Default value: None
drift_threshold

Limite opcional para ativar alertas DataDriftDetector em. O valor deve estar entre 0 e 1. Um valor de 0,2 é usado quando Nenhum é especificado (o padrão).

Default value: None
latency
int

Atraso de horas para que os dados apareçam no conjunto de dados.

Default value: None
workspace
Necessário

O espaço de trabalho no qual criar o objeto DataDriftDetector.

name
Necessário
str

Um nome exclusivo para o objeto DataDriftDetector.

baseline_dataset
Necessário

Conjunto de dados para comparar o conjunto de dados de destino.

target_dataset
Necessário

Conjunto de dados para executar adhoc ou trabalhos DataDrift agendados. Deve ser uma série temporal.

compute_target
Necessário

Nome opcional do Azure Machine Learning ComputeTarget ou ComputeTarget. DataDriftDetector criará um destino de computação se um não for especificado.

frequency
Necessário
str

Frequência opcional que indica a frequência com que o pipeline é executado. Suporta "Dia", "Semana" ou "Mês".

feature_list
Necessário

Recursos opcionais na lista de permissões para executar a deteção de desvio de dados. Os trabalhos do DataDriftDetector serão executados em todos os recursos se feature_list não for especificado. A lista de recursos pode conter caracteres, números, traços e espaços em branco. O tamanho da lista deve ser inferior a 200.

alert_config
Necessário

Objeto de configuração opcional para alertas DataDriftDetector.

drift_threshold
Necessário

Limite opcional para ativar alertas DataDriftDetector em. O valor deve estar entre 0 e 1. Um valor de 0,2 é usado quando Nenhum é especificado (o padrão).

latency
Necessário
int

Atraso de horas para que os dados apareçam no conjunto de dados.

Observações

Um objeto DataDriftDetector representa uma definição de trabalho de desvio de dados que pode ser usada para executar três tipos de execução de trabalho:

  • uma adhoc para analisar o valor de dados de um dia específico; Consulte o método run.

  • uma execução programada num gasoduto; Consulte o método enable_schedule.

  • uma execução de preenchimento para ver como os dados mudam ao longo do tempo; Consulte o método backfill.

O padrão típico para criar um DataDriftDetector é:

O construtor DataDriftDetector recupera um objeto de desvio de dados existente associado ao espaço de trabalho.

Métodos

backfill

Execute um trabalho de preenchimento em uma determinada data de início e término especificada.

Consulte https://aka.ms/datadrift para obter detalhes sobre execuções de preenchimento de desvio de dados.

NOTA: Backfill só é suportado em objetos DataDriftDetector baseados em conjunto de dados.

create_from_datasets

Crie um novo objeto DataDriftDetector a partir de um conjunto de dados tabular de linha de base e um conjunto de dados de série temporal de destino.

delete

Exclua o agendamento para o objeto DataDriftDetector.

disable_schedule

Desative o agendamento para o objeto DataDriftDetector.

enable_schedule

Crie uma agenda para executar o trabalho DataDriftDetector baseado em conjunto de dados.

get_by_name

Recupere um objeto DataDriftDetector exclusivo para um determinado espaço de trabalho e nome.

get_output

Obtenha uma tupla dos resultados e métricas de desvio para um DataDriftDetector específico em uma determinada janela de tempo.

list

Obtenha uma lista de objetos DataDriftDetector para o espaço de trabalho especificado e o conjunto de dados opcional.

NOTA: Passar apenas o parâmetro workspace retornará todos os objetos DataDriftDetector, definidos no espaço de trabalho.

run

Execute uma única análise de desvio de dados point-in-time.

show

Mostrar tendência de desvio de dados em determinado intervalo de tempo.

Por padrão, esse método mostra os 10 ciclos mais recentes. Por exemplo, se a frequência for dia, então serão os 10 dias mais recentes. Se a frequência for semanal, então serão as 10 semanas mais recentes.

update

Atualize o agendamento associado ao objeto DataDriftDetector.

Os valores de parâmetros opcionais podem ser definidos como None, caso contrário, eles são padronizados para seus valores existentes.

backfill

Execute um trabalho de preenchimento em uma determinada data de início e término especificada.

Consulte https://aka.ms/datadrift para obter detalhes sobre execuções de preenchimento de desvio de dados.

NOTA: Backfill só é suportado em objetos DataDriftDetector baseados em conjunto de dados.

backfill(start_date, end_date, compute_target=None, create_compute_target=False)

Parâmetros

Name Description
start_date
Necessário

A data de início do trabalho de preenchimento.

end_date
Necessário

A data final do trabalho de preenchimento, inclusive.

compute_target

Nome opcional do Azure Machine Learning ComputeTarget ou ComputeTarget. DataDriftDetector criará um destino de computação se nenhum for especificado.

Default value: None
create_compute_target

Indica se um destino de computação do Azure Machine Learning é criado automaticamente.

Default value: False

Devoluções

Tipo Description
Run

Uma execução DataDriftDetector.

create_from_datasets

Crie um novo objeto DataDriftDetector a partir de um conjunto de dados tabular de linha de base e um conjunto de dados de série temporal de destino.

static create_from_datasets(workspace, name, baseline_dataset, target_dataset, compute_target=None, frequency=None, feature_list=None, alert_config=None, drift_threshold=None, latency=None)

Parâmetros

Name Description
workspace
Necessário

O espaço de trabalho para criar o DataDriftDetector em.

name
Necessário
str

Um nome exclusivo para o objeto DataDriftDetector.

baseline_dataset
Necessário

Conjunto de dados para comparar o conjunto de dados de destino.

target_dataset
Necessário

Conjunto de dados para executar adhoc ou trabalhos DataDrift agendados. Deve ser uma série temporal.

compute_target

Nome opcional do Azure Machine Learning ComputeTarget ou ComputeTarget. DataDriftDetector criará um destino de computação se um não for especificado.

Default value: None
frequency
str

Frequência opcional que indica a frequência com que o pipeline é executado. Suporta "Dia", "Semana" ou "Mês".

Default value: None
feature_list

Recursos opcionais na lista de permissões para executar a deteção de desvio de dados. Os trabalhos do DataDriftDetector serão executados em todos os recursos se feature_list não for especificado. A lista de recursos pode conter caracteres, números, traços e espaços em branco. O tamanho da lista deve ser inferior a 200.

Default value: None
alert_config

Objeto de configuração opcional para alertas DataDriftDetector.

Default value: None
drift_threshold

Limite opcional para ativar alertas DataDriftDetector em. O valor deve estar entre 0 e 1. Um valor de 0,2 é usado quando Nenhum é especificado (o padrão).

Default value: None
latency
int

Atraso de horas para que os dados apareçam no conjunto de dados.

Default value: None

Devoluções

Tipo Description

Um objeto DataDriftDetector.

Exceções

Tipo Description
<xref:KeyError>, <xref:TypeError>, <xref:ValueError>

Observações

DataDriftDetectors baseados em conjunto de dados permitem calcular o desvio de dados entre um conjunto de dados de linha de base, que deve ser um TabularDataset, e um conjunto de dados de destino, que deve ser um conjunto de dados de série temporal. Um conjunto de dados de série temporal é simplesmente uma TabularDataset com a propriedade fine_grain_timestamp. O DataDriftDetector pode então executar adhoc ou trabalhos agendados para determinar se o conjunto de dados de destino se desviou do conjunto de dados de linha de base.


   from azureml.core import Workspace, Dataset
   from azureml.datadrift import DataDriftDetector

   ws = Workspace.from_config()
   baseline = Dataset.get_by_name(ws, 'my_baseline_dataset')
   target = Dataset.get_by_name(ws, 'my_target_dataset')

   detector = DataDriftDetector.create_from_datasets(workspace=ws,
                                                     name="my_unique_detector_name",
                                                     baseline_dataset=baseline,
                                                     target_dataset=target,
                                                     compute_target_name='my_compute_target',
                                                     frequency="Day",
                                                     feature_list=['my_feature_1', 'my_feature_2'],
                                                     alert_config=AlertConfiguration(email_addresses=['user@contoso.com']),
                                                     drift_threshold=0.3,
                                                     latency=1)

delete

Exclua o agendamento para o objeto DataDriftDetector.

delete(wait_for_completion=True)

Parâmetros

Name Description
wait_for_completion

Se deve aguardar a conclusão da operação de exclusão.

Default value: True

disable_schedule

Desative o agendamento para o objeto DataDriftDetector.

disable_schedule(wait_for_completion=True)

Parâmetros

Name Description
wait_for_completion

Se deve aguardar a conclusão da operação de desativação.

Default value: True

enable_schedule

Crie uma agenda para executar o trabalho DataDriftDetector baseado em conjunto de dados.

enable_schedule(create_compute_target=False, wait_for_completion=True)

Parâmetros

Name Description
create_compute_target

Indica se um destino de computação do Azure Machine Learning é criado automaticamente.

Default value: False
wait_for_completion

Se deve aguardar a conclusão da operação de habilitação.

Default value: True

get_by_name

Recupere um objeto DataDriftDetector exclusivo para um determinado espaço de trabalho e nome.

static get_by_name(workspace, name)

Parâmetros

Name Description
workspace
Necessário

O espaço de trabalho onde o DataDriftDetector foi criado.

name
Necessário
str

O nome do objeto DataDriftDetector a ser retornado.

Devoluções

Tipo Description

Um objeto DataDriftDetector.

get_output

Obtenha uma tupla dos resultados e métricas de desvio para um DataDriftDetector específico em uma determinada janela de tempo.

get_output(start_time=None, end_time=None, run_id=None)

Parâmetros

Name Description
start_time
datetime, <xref:optional>

A hora de início da janela de resultados em UTC. Se Nenhum (o padrão) for especificado, os resultados mais recentes do 10º ciclo serão usados como a hora de início. Por exemplo, se a frequência do cronograma de desvio de dados for dia, start_time será de 10 dias. Se a frequência é semanal, então start_time é de 10 semanas.

Default value: None
end_time
datetime, <xref:optional>

A hora de término da janela de resultados em UTC. Se Nenhum (o padrão) for especificado, o dia atual UTC será usado como a hora de término.

Default value: None
run_id
int, <xref:optional>

Um ID de execução específico.

Default value: None

Devoluções

Tipo Description

Uma tupla de uma lista de resultados de desvio e uma lista de conjuntos de dados individuais e métricas colunares.

Observações

Esse método retorna uma tupla de resultados e métricas de desvio para uma janela de tempo ou ID de execução com base no tipo de execução: uma execução adhoc, uma execução agendada e uma execução de backfill.

  • Para recuperar resultados adhoc executar, há apenas uma maneira: run_id deve ser um GUID válido.

  • Para recuperar execuções agendadas e resultados de execução de backfill, há duas maneiras diferentes: atribuir um GUID válido a run_id ou atribuir um start_time específico e/ou end_time (inclusive), mantendo run_id como Nenhum.

  • Se run_id, start_timee end_time não forem Nenhum na mesma chamada de método, uma exceção de validação de parâmetro será gerada.

NOTA: Especifique os parâmetros start_time e end_time ou o parâmetro run_id, mas não ambos.

É possível que haja vários resultados para a mesma data de destino (data de destino significa data de início do conjunto de dados de destino para desvio baseado em conjunto de dados). Portanto, é necessário identificar e lidar com resultados duplicados. Para desvio baseado em conjunto de dados, se os resultados forem para a mesma data-alvo, então eles são resultados duplicados. O método get_output eliminará quaisquer resultados duplicados por uma regra: sempre pegue os resultados gerados mais recentes.

O método get_output pode ser usado para recuperar todas as saídas ou saídas parciais de execuções agendadas em um intervalo de tempo específico entre start_time e end_time (limite incluído). Você também pode limitar os resultados de uma individual adhoc especificando o .

Use as seguintes diretrizes para ajudar a interpretar os resultados retornados do método get_output:

  • O princípio da filtragem é a "sobreposição": enquanto houver uma sobreposição entre o tempo real do resultado (baseado no conjunto de dados: conjunto de dados de destino [data de início, data de fim]) e o dado [start_time, end_time], então o resultado será recolhido.

  • Se houver várias saídas para uma data de destino porque o cálculo de desvio foi executado várias vezes em relação a esse dia, somente a saída mais recente será escolhida por padrão.

  • Dado que existem vários tipos de uma instância de desvio de dados, o conteúdo do resultado pode ser variado.

Para resultados baseados em conjunto de dados, a saída será semelhante a:


   results : [{'drift_type': 'DatasetBased',
               'result':[{'has_drift': True, 'drift_threshold': 0.3,
                          'start_date': '2019-04-03', 'end_date': '2019-04-04',
                          'base_dataset_id': '4ac144ef-c86d-4c81-b7e5-ea6bbcd2dc7d',
                          'target_dataset_id': '13445141-aaaa-bbbb-cccc-ea23542bcaf9'}]}]
   metrics : [{'drift_type': 'DatasetBased',
               'metrics': [{'schema_version': '0.1',
                            'start_date': '2019-04-03', 'end_date': '2019-04-04',
                            'baseline_dataset_id': '4ac144ef-c86d-4c81-b7e5-ea6bbcd2dc7d',
                            'target_dataset_id': '13445141-aaaa-bbbb-cccc-ea23542bcaf9'
                            'dataset_metrics': [{'name': 'datadrift_coefficient', 'value': 0.53459}],
                            'column_metrics': [{'feature1': [{'name': 'datadrift_contribution',
                                                              'value': 288.0},
                                                             {'name': 'wasserstein_distance',
                                                              'value': 4.858040000000001},
                                                             {'name': 'energy_distance',
                                                              'value': 2.7204799576545313}]}]}]}]

list

Obtenha uma lista de objetos DataDriftDetector para o espaço de trabalho especificado e o conjunto de dados opcional.

NOTA: Passar apenas o parâmetro workspace retornará todos os objetos DataDriftDetector, definidos no espaço de trabalho.

static list(workspace, baseline_dataset=None, target_dataset=None)

Parâmetros

Name Description
workspace
Necessário

O espaço de trabalho onde os objetos DataDriftDetector foram criados.

baseline_dataset

Conjunto de dados da linha de base para filtrar a lista de retorno.

Default value: None
target_dataset

Conjunto de dados de destino para filtrar a lista de retorno.

Default value: None

Devoluções

Tipo Description

Uma lista de objetos DataDriftDetector.

run

Execute uma única análise de desvio de dados point-in-time.

run(target_date, compute_target=None, create_compute_target=False, feature_list=None, drift_threshold=None)

Parâmetros

Name Description
target_date
Necessário

A data alvo dos dados de pontuação em UTC.

compute_target

Nome opcional do Azure Machine Learning ComputeTarget ou ComputeTarget. Se não for especificado, um destino de computação será criado automaticamente.

Default value: None
create_compute_target

Indica se um destino de computação do Azure Machine Learning é criado automaticamente.

Default value: False
feature_list

Recursos opcionais na lista de permissões para executar a deteção de desvio de dados.

Default value: None
drift_threshold

Limite opcional para ativar alertas DataDriftDetector em.

Default value: None

Devoluções

Tipo Description
Run

Uma execução DataDriftDetector.

show

Mostrar tendência de desvio de dados em determinado intervalo de tempo.

Por padrão, esse método mostra os 10 ciclos mais recentes. Por exemplo, se a frequência for dia, então serão os 10 dias mais recentes. Se a frequência for semanal, então serão as 10 semanas mais recentes.

show(start_time=None, end_time=None)

Parâmetros

Name Description
start_time
datetime, <xref:optional>

O início da janela de tempo de apresentação em UTC. O padrão Nenhum significa pegar os resultados mais recentes do 10º ciclo.

Default value: None
end_time
datetime, <xref:optional>

O final da janela de tempo de dados de apresentação em UTC. O padrão Nenhum significa o dia atual.

Default value: None

Devoluções

Tipo Description
dict()

Um dicionário de todas as figuras. A chave é service_name.

update

Atualize o agendamento associado ao objeto DataDriftDetector.

Os valores de parâmetros opcionais podem ser definidos como None, caso contrário, eles são padronizados para seus valores existentes.

update(compute_target=Ellipsis, feature_list=Ellipsis, schedule_start=Ellipsis, alert_config=Ellipsis, drift_threshold=Ellipsis, wait_for_completion=True)

Parâmetros

Name Description
compute_target

Nome opcional do Azure Machine Learning ComputeTarget ou ComputeTarget. DataDriftDetector criará um destino de computação se esse parâmetro não for especificado.

Default value: Ellipsis
feature_list

Recursos permitidos para executar a deteção de desvio de dados.

Default value: Ellipsis
schedule_start

A hora de início do cronograma de desvio de dados em UTC.

Default value: Ellipsis
alert_config

Objeto de configuração opcional para alertas DataDriftDetector.

Default value: Ellipsis
drift_threshold

O limite para ativar alertas DataDriftDetector em.

Default value: Ellipsis
wait_for_completion

Se deve aguardar a conclusão das operações de ativação/desativação/exclusão.

Default value: True

Devoluções

Tipo Description

Eu mesmo

Atributos

alert_config

Obtenha a configuração de alerta para o objeto DataDriftDetector.

Devoluções

Tipo Description

Um objeto AlertConfiguration.

baseline_dataset

Obtenha o conjunto de dados de linha de base associado ao objeto DataDriftDetector.

Devoluções

Tipo Description

Tipo de conjunto de dados do conjunto de dados de linha de base.

compute_target

Obtenha o destino de computação anexado ao objeto DataDriftDetector.

Devoluções

Tipo Description

O destino de computação.

drift_threshold

Obtenha o limite de desvio para o objeto DataDriftDetector.

Devoluções

Tipo Description

O limiar de deriva.

drift_type

Obtenha o tipo de DataDriftDetector, 'DatasetBased' é o único valor suportado por enquanto.

Devoluções

Tipo Description
str

O tipo de objeto DataDriftDetector.

enabled

Obtenha o valor booleano que indica se o objeto DataDriftDetector está habilitado.

Devoluções

Tipo Description

Um valor booleano; True para habilitado.

feature_list

Obtenha a lista de recursos permitidos para o objeto DataDriftDetector.

Devoluções

Tipo Description

Uma lista de nomes de recursos.

frequency

Obtenha a frequência da programação do DataDriftDetector.

Devoluções

Tipo Description
str

Uma sequência de "Dia", "Semana" ou "Mês"

interval

Obtenha o intervalo da programação do DataDriftDetector.

Devoluções

Tipo Description
int

Um valor inteiro de unidade de tempo.

latency

Obtenha a latência dos trabalhos de agendamento do DataDriftDetector (em horas).

Devoluções

Tipo Description
int

O número de horas que representa a latência.

name

Obtenha o nome do objeto DataDriftDetector.

Devoluções

Tipo Description
str

O nome DataDriftDetector.

schedule_start

Obtenha a hora de início da programação.

Devoluções

Tipo Description

Um objeto datetime da hora de início da agenda em UTC.

state

Indica o estado da programação DataDriftDetector.

Devoluções

Tipo Description
str

Um de 'Disabled', 'Enabled', 'Deleted', 'Disableling', 'Enableling', 'Excluting', 'Failed', 'DisableFailed', 'EnableFailed', 'DeleteFailed'.

target_dataset

Obtenha o conjunto de dados de destino associado ao objeto DataDriftDetector.

Devoluções

Tipo Description

O tipo de conjunto de dados do conjunto de dados da linha de base.

workspace

Obtenha o espaço de trabalho do objeto DataDriftDetector.

Devoluções

Tipo Description

O espaço de trabalho no qual o objeto DataDriftDetector foi criado.