DataDriftDetector Classe
Define um monitor de descompasso de dados que pode ser usado para executar trabalhos de descompasso de dados no Azure Machine Learning.
A classe DataDriftDetector permite identificar o descompasso entre uma determinada linha de base e um conjunto de dados de destino. Um objeto DataDriftDetector é criado em um workspace especificando diretamente os conjuntos de dados de linha de base e de destino. Para obter mais informações, consulte https://aka.ms/datadrift.
Construtor datadriftdetector.
O construtor DataDriftDetector é usado para recuperar uma representação na nuvem de um objeto DataDriftDetector associado ao workspace fornecido.
- Herança
-
builtins.objectDataDriftDetector
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
Nome | Description |
---|---|
workspace
Obrigatório
|
O workspace no qual criar o objeto DataDriftDetector. |
name
|
Um nome exclusivo para o objeto DataDriftDetector. Valor padrão: None
|
baseline_dataset
|
Conjunto de dados com o qual comparar o conjunto de dados de destino. Valor padrão: None
|
target_dataset
|
Conjunto de dados para o qual executar de adesivo ou trabalhos agendados do DataDrift. Deve ser uma série temporal. Valor padrão: None
|
compute_target
|
ComputeTarget ou
str
Nome opcional de ComputeTarget ou ComputeTarget do Azure Machine Learning. DataDriftDetector criará um destino de computação se um não for especificado. Valor padrão: None
|
frequency
|
Frequência opcional que indica a frequência com que o pipeline é executado. Dá suporte a "Dia", "Semana" ou "Mês". Valor padrão: None
|
feature_list
|
Recursos opcionais na lista de permissões para executar a detecção de derivação de dados. Os trabalhos do DataDriftDetector serão executados em todos os recursos se Valor padrão: None
|
alert_config
|
Objeto de configuração opcional para alertas DataDriftDetector. Valor padrão: None
|
drift_threshold
|
Limite opcional para habilitar alertas DataDriftDetector. O valor deve estar entre 0 e 1. Um valor de 0,2 é usado quando None é especificado (o padrão). Valor padrão: None
|
latency
|
Atraso em horas para que os dados apareçam no conjunto de dados. Valor padrão: None
|
workspace
Obrigatório
|
O workspace no qual criar o objeto DataDriftDetector. |
name
Obrigatório
|
Um nome exclusivo para o objeto DataDriftDetector. |
baseline_dataset
Obrigatório
|
Conjunto de dados com o qual comparar o conjunto de dados de destino. |
target_dataset
Obrigatório
|
Conjunto de dados para o qual executar de adesivo ou trabalhos agendados do DataDrift. Deve ser uma série temporal. |
compute_target
Obrigatório
|
ComputeTarget ou
str
Nome opcional de ComputeTarget ou ComputeTarget do Azure Machine Learning. DataDriftDetector criará um destino de computação se um não for especificado. |
frequency
Obrigatório
|
Frequência opcional que indica a frequência com que o pipeline é executado. Dá suporte a "Dia", "Semana" ou "Mês". |
feature_list
Obrigatório
|
Recursos opcionais na lista de permissões para executar a detecção de derivação de dados. Os trabalhos do DataDriftDetector serão executados em todos os recursos se |
alert_config
Obrigatório
|
Objeto de configuração opcional para alertas DataDriftDetector. |
drift_threshold
Obrigatório
|
Limite opcional para habilitar alertas DataDriftDetector. O valor deve estar entre 0 e 1. Um valor de 0,2 é usado quando None é especificado (o padrão). |
latency
Obrigatório
|
Atraso em horas para que os dados apareçam no conjunto de dados. |
Comentários
Um objeto DataDriftDetector representa uma definição de trabalho de descompasso de dados que pode ser usada para executar três tipos de execução de trabalho:
um de adesivo para analisar dados de um dia específico; consulte o método run.
uma execução agendada em um pipeline; consulte o método enable_schedule.
uma execução de backfill para ver como os dados são alterados ao longo do tempo; consulte o método backfill.
O padrão típico para criar um DataDriftDetector é:
- Para criar um objeto DataDriftDetector baseado em conjunto de dados, use create_from_datasets
O construtor DataDriftDetector recupera um objeto de descompasso de dados existente associado ao workspace.
Métodos
backfill |
Execute um trabalho de backfill em uma determinada data de início e término especificada. Consulte https://aka.ms/datadrift para obter detalhes sobre execuções de backfill de descompasso de dados. OBSERVAÇÃO: Backfill só tem suporte em objetos DataDriftDetector baseados em conjunto de dados. |
create_from_datasets |
Crie um novo objeto DataDriftDetector 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 do objeto DataDriftDetector. |
disable_schedule |
Desabilite o agendamento do objeto DataDriftDetector. |
enable_schedule |
Crie um agendamento para executar o trabalho DataDriftDetector baseado em conjunto de dados. |
get_by_name |
Recupere um objeto DataDriftDetector exclusivo para um determinado workspace e nome. |
get_output |
Obtenha uma tupla dos resultados e das métricas de descompasso para um DataDriftDetector específico em uma determinada janela de tempo. |
list |
Obtenha uma lista de objetos DataDriftDetector para o workspace especificado e o conjunto de dados opcional.
OBSERVAÇÃO: Passar apenas o parâmetro |
run |
Execute uma única análise de descompasso de dados de ponto no tempo. |
show |
Mostrar tendência de descompasso 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, serão os 10 dias mais recentes. Se a frequência for semana, serão as 10 semanas mais recentes. |
update |
Atualize o agendamento associado ao objeto DataDriftDetector. Os valores de parâmetro opcionais podem ser definidos como |
backfill
Execute um trabalho de backfill em uma determinada data de início e término especificada.
Consulte https://aka.ms/datadrift para obter detalhes sobre execuções de backfill de descompasso de dados.
OBSERVAÇÃO: Backfill só tem suporte em objetos DataDriftDetector baseados em conjunto de dados.
backfill(start_date, end_date, compute_target=None, create_compute_target=False)
Parâmetros
Nome | Description |
---|---|
start_date
Obrigatório
|
A data de início do trabalho de backfill. |
end_date
Obrigatório
|
A data de término do trabalho de backfill, inclusive. |
compute_target
|
ComputeTarget ou
str
Nome opcional de ComputeTarget ou ComputeTarget do Azure Machine Learning. DataDriftDetector criará um destino de computação se nenhum for especificado. Valor padrão: None
|
create_compute_target
|
Indica se um destino de computação do Azure Machine Learning é criado automaticamente. Valor padrão: False
|
Retornos
Tipo | Description |
---|---|
Uma execução do DataDriftDetector. |
create_from_datasets
Crie um novo objeto DataDriftDetector 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
Nome | Description |
---|---|
workspace
Obrigatório
|
O workspace no qual criar o DataDriftDetector. |
name
Obrigatório
|
Um nome exclusivo para o objeto DataDriftDetector. |
baseline_dataset
Obrigatório
|
Conjunto de dados com o qual comparar o conjunto de dados de destino. |
target_dataset
Obrigatório
|
Conjunto de dados para o qual executar de adesivo ou trabalhos agendados do DataDrift. Deve ser uma série temporal. |
compute_target
|
ComputeTarget ou
str
Nome opcional de ComputeTarget ou ComputeTarget do Azure Machine Learning. DataDriftDetector criará um destino de computação se um não for especificado. Valor padrão: None
|
frequency
|
Frequência opcional que indica a frequência com que o pipeline é executado. Dá suporte a "Dia", "Semana" ou "Mês". Valor padrão: None
|
feature_list
|
Recursos opcionais na lista de permissões para executar a detecção de derivação de dados. Os trabalhos do DataDriftDetector serão executados em todos os recursos se Valor padrão: None
|
alert_config
|
Objeto de configuração opcional para alertas DataDriftDetector. Valor padrão: None
|
drift_threshold
|
Limite opcional para habilitar alertas DataDriftDetector. O valor deve estar entre 0 e 1. Um valor de 0,2 é usado quando None é especificado (o padrão). Valor padrão: None
|
latency
|
Atraso em horas para que os dados apareçam no conjunto de dados. Valor padrão: None
|
Retornos
Tipo | Description |
---|---|
Um objeto DataDriftDetector. |
Exceções
Tipo | Description |
---|---|
<xref:KeyError>, <xref:TypeError>, <xref:ValueError>
|
Comentários
DataDriftDetectors baseados em conjunto de dados permitem calcular a descompasso de dados entre um conjunto de dados de linha de base, que deve ser um TabularDatasete 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 um TabularDataset com a propriedade fine_grain_timestamp. O DataDriftDetector pode executar trabalhos de ou agendados de adesivo para determinar se o conjunto de dados de destino 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 do objeto DataDriftDetector.
delete(wait_for_completion=True)
Parâmetros
Nome | Description |
---|---|
wait_for_completion
|
Se deve aguardar a conclusão da operação de exclusão. Valor padrão: True
|
disable_schedule
Desabilite o agendamento do objeto DataDriftDetector.
disable_schedule(wait_for_completion=True)
Parâmetros
Nome | Description |
---|---|
wait_for_completion
|
Se deve aguardar a conclusão da operação de desabilitação. Valor padrão: True
|
enable_schedule
Crie um agendamento para executar o trabalho DataDriftDetector baseado em conjunto de dados.
enable_schedule(create_compute_target=False, wait_for_completion=True)
Parâmetros
Nome | Description |
---|---|
create_compute_target
|
Indica se um destino de computação do Azure Machine Learning é criado automaticamente. Valor padrão: False
|
wait_for_completion
|
Se é necessário aguardar a conclusão da operação de habilitação. Valor padrão: True
|
get_by_name
Recupere um objeto DataDriftDetector exclusivo para um determinado workspace e nome.
static get_by_name(workspace, name)
Parâmetros
Nome | Description |
---|---|
workspace
Obrigatório
|
O workspace em que o DataDriftDetector foi criado. |
name
Obrigatório
|
O nome do objeto DataDriftDetector a ser retornado. |
Retornos
Tipo | Description |
---|---|
Um objeto DataDriftDetector. |
get_output
Obtenha uma tupla dos resultados e das métricas de descompasso para um DataDriftDetector específico em uma determinada janela de tempo.
get_output(start_time=None, end_time=None, run_id=None)
Parâmetros
Nome | 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 do 10º ciclo mais recentes serão usados como a hora de início. Por exemplo, se a frequência do agendamento de descompasso de dados for dia, Valor padrão: None
|
end_time
|
datetime, <xref:optional>
A hora de término da janela de resultados em UTC. Se None (o padrão) for especificado, o UTC atual será usado como a hora de término. Valor padrão: None
|
run_id
|
int, <xref:optional>
Uma ID de execução específica. Valor padrão: None
|
Retornos
Tipo | Description |
---|---|
Uma tupla de uma lista de resultados de descompasso e uma lista de métricas de conjunto de dados individuais e colunas. |
Comentários
Esse método retorna uma tupla de resultados e métricas de descompasso para uma janela de tempo ou ID de execução com base no tipo de execução: um executar, uma execução agendada e uma execução de backfill.
Para recuperar resultados de execução de de adesivo, 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 para
run_id
ou atribuir umstart_time
específico e/ouend_time
(inclusivo) mantendorun_id
como Nenhum.Se
run_id
,start_time
eend_time
não forem Nenhum na mesma chamada de método, uma exceção de validação de parâmetro será gerada.
OBSERVAÇÃO: especificar 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 descompasso baseado em conjunto de dados). Portanto, é necessário identificar e lidar com resultados duplicados.
Para descompasso baseado em conjunto de dados, se os resultados forem para a mesma data de destino, eles serão resultados duplicados.
O método get_output
deduirá todos os resultados duplicados por uma regra: sempre selecione os resultados mais recentes gerados.
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 um de adesivo individual
Use as seguintes diretrizes para ajudar a interpretar os resultados retornados do método get_output
:
O princípio para filtragem é "sobreposição": desde que haja uma sobreposição entre o tempo de resultado real (baseado em conjunto de dados: conjunto de dados de destino [data de início, data de término]) e o determinado [
start_time
,end_time
], o resultado será coletado.Se houver várias saídas para uma data de destino porque o cálculo de descompasso foi executado várias vezes em relação a esse dia, apenas a saída mais recente será escolhida por padrão.
Dado que há vários tipos de uma instância de descompasso de dados, o conteúdo do resultado pode ser vários.
Para resultados baseados em conjunto de dados, a saída terá a seguinte aparência:
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 workspace especificado e o conjunto de dados opcional.
OBSERVAÇÃO: Passar apenas o parâmetro workspace
retornará todos os objetos DataDriftDetector, definidos no workspace.
static list(workspace, baseline_dataset=None, target_dataset=None)
Parâmetros
Nome | Description |
---|---|
workspace
Obrigatório
|
O workspace em que os objetos DataDriftDetector foram criados. |
baseline_dataset
|
Conjunto de dados de linha de base para filtrar a lista de retorno. Valor padrão: None
|
target_dataset
|
Conjunto de dados de destino para filtrar a lista de retorno. Valor padrão: None
|
Retornos
Tipo | Description |
---|---|
Uma lista de objetos DataDriftDetector. |
run
Execute uma única análise de descompasso de dados de ponto no tempo.
run(target_date, compute_target=None, create_compute_target=False, feature_list=None, drift_threshold=None)
Parâmetros
Nome | Description |
---|---|
target_date
Obrigatório
|
A data de destino dos dados de pontuação em UTC. |
compute_target
|
ComputeTarget ou
str
Nome opcional de ComputeTarget ou ComputeTarget do Azure Machine Learning. Se não for especificado, um destino de computação será criado automaticamente. Valor padrão: None
|
create_compute_target
|
Indica se um destino de computação do Azure Machine Learning é criado automaticamente. Valor padrão: False
|
feature_list
|
Recursos opcionais na lista de permissões para executar a detecção de derivação de dados. Valor padrão: None
|
drift_threshold
|
Limite opcional para habilitar alertas DataDriftDetector. Valor padrão: None
|
Retornos
Tipo | Description |
---|---|
Uma execução do DataDriftDetector. |
show
Mostrar tendência de descompasso 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, serão os 10 dias mais recentes. Se a frequência for semana, serão as 10 semanas mais recentes.
show(start_time=None, end_time=None)
Parâmetros
Nome | Description |
---|---|
start_time
|
datetime, <xref:optional>
O início da janela de tempo da apresentação em UTC. O padrão None significa obter os resultados mais recentes do 10º ciclo. Valor padrão: None
|
end_time
|
datetime, <xref:optional>
O fim da janela de tempo de dados da apresentação em UTC. O padrão None significa o dia atual. Valor padrão: None
|
Retornos
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âmetro opcionais podem ser definidos como None
, caso contrário, eles são padrão 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
Nome | Description |
---|---|
compute_target
|
ComputeTarget ou
str
Nome opcional de ComputeTarget ou ComputeTarget do Azure Machine Learning. DataDriftDetector criará um destino de computação se esse parâmetro não for especificado. Valor padrão: Ellipsis
|
feature_list
|
Recursos na lista de permissões para executar a detecção de derivação de dados. Valor padrão: Ellipsis
|
schedule_start
|
A hora de início do agendamento de descompasso de dados em UTC. Valor padrão: Ellipsis
|
alert_config
|
Objeto de configuração opcional para alertas DataDriftDetector. Valor padrão: Ellipsis
|
drift_threshold
|
O limite para habilitar alertas DataDriftDetector. Valor padrão: Ellipsis
|
wait_for_completion
|
Se deve aguardar a conclusão das operações de habilitação/desabilitação/exclusão. Valor padrão: True
|
Retornos
Tipo | Description |
---|---|
eu |
Atributos
alert_config
Obtenha a configuração de alerta para o objeto DataDriftDetector.
Retornos
Tipo | Description |
---|---|
Um objeto AlertConfiguration. |
baseline_dataset
Obtenha o conjunto de dados de linha de base associado ao objeto DataDriftDetector.
Retornos
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.
Retornos
Tipo | Description |
---|---|
O destino de computação. |
drift_threshold
Obtenha o limite de descompasso para o objeto DataDriftDetector.
Retornos
Tipo | Description |
---|---|
O limite de descompasso. |
drift_type
Obtenha o tipo do DataDriftDetector, 'DatasetBased' é o único valor com suporte por enquanto.
Retornos
Tipo | Description |
---|---|
O tipo de objeto DataDriftDetector. |
enabled
Obtenha o valor booliano que indica se o objeto DataDriftDetector está habilitado.
Retornos
Tipo | Description |
---|---|
Um valor booliano; True para habilitado. |
feature_list
Obtenha a lista de recursos na lista de permissões para o objeto DataDriftDetector.
Retornos
Tipo | Description |
---|---|
Uma lista de nomes de recursos. |
frequency
Obtenha a frequência do agendamento DataDriftDetector.
Retornos
Tipo | Description |
---|---|
Uma cadeia de caracteres de "Dia", "Semana" ou "Mês" |
interval
Obtenha o intervalo da agenda DataDriftDetector.
Retornos
Tipo | Description |
---|---|
Um valor inteiro da unidade de tempo. |
latency
Obtenha a latência dos trabalhos de agendamento do DataDriftDetector (em horas).
Retornos
Tipo | Description |
---|---|
O número de horas que representa a latência. |
name
schedule_start
Obtenha a hora de início da agenda.
Retornos
Tipo | Description |
---|---|
Um objeto datetime da hora de início do agendamento em UTC. |
state
Denota o estado do agendamento DataDriftDetector.
Retornos
Tipo | Description |
---|---|
Um de 'Desabilitado', 'Habilitado', 'Excluído', 'Desabilitando', 'Habilitando', 'Excluindo', 'Falha', 'Desabilitado', 'EnableFailed', 'DeleteFailed'. |
target_dataset
Obtenha o conjunto de dados de destino associado ao objeto DataDriftDetector.
Retornos
Tipo | Description |
---|---|
O tipo de conjunto de dados do conjunto de dados de linha de base. |
workspace
Obtenha o workspace do objeto DataDriftDetector.
Retornos
Tipo | Description |
---|---|
O workspace no qual o objeto DataDriftDetector foi criado. |