Sdílet prostřednictvím


DataDriftDetector Třída

Definuje monitorování posunu dat, které lze použít ke spouštění úloh posunu dat ve službě Azure Machine Learning.

Třída DataDriftDetector umožňuje identifikovat posun mezi daným směrným plánem a cílovou datovou sadou. Objekt DataDriftDetector se vytvoří v pracovním prostoru tak, že buď přímo zadáte směrný plán a cílovou datovou sadu. Další informace naleznete v tématu https://aka.ms/datadrift.

Konstruktor Datadriftdetector.

Konstruktor DataDriftDetector se používá k načtení cloudové reprezentace objektu DataDriftDetector přidruženého k poskytnutému pracovnímu prostoru.

Dědičnost
builtins.object
DataDriftDetector

Konstruktor

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)

Parametry

Name Description
workspace
Vyžadováno

Pracovní prostor, ve kterém chcete vytvořit Objekt DataDriftDetector.

name
str

Jedinečný název dataDriftDetector objektu.

Default value: None
baseline_dataset

Datová sada, se kterou se má porovnat cílová datová sada.

Default value: None
target_dataset

Datová sada, pro kterou se budou spouštět adhocové nebo plánované úlohy DataDrift. Musí se jednat o časovou řadu.

Default value: None
compute_target

Volitelný název ComputeTarget nebo ComputeTarget služby Azure Machine Learning. DataDriftDetector vytvoří cílový výpočetní objekt, pokud není zadaný.

Default value: None
frequency
str

Volitelná frekvence označující, jak často se kanál spouští. Podporuje "Day", "Week" nebo "Month".

Default value: None
feature_list

Volitelné funkce na seznamu povolených pro spuštění detekce datových zápatí. Úlohy DataDriftDetector se spustí u všech funkcí, pokud feature_list není zadaný. Seznam funkcí může obsahovat znaky, čísla, pomlčky a prázdné znaky. Délka seznamu musí být menší než 200.

Default value: None
alert_config

Volitelný objekt konfigurace pro upozornění DataDriftDetector.

Default value: None
drift_threshold

Volitelná prahová hodnota pro povolení upozornění DataDriftDetector. Hodnota musí být mezi 0 a 1. Hodnota 0,2 se použije, pokud je zadána hodnota None (výchozí).

Default value: None
latency
int

Zpoždění v hodinách, než se data zobrazí v datové sadě.

Default value: None
workspace
Vyžadováno

Pracovní prostor, ve kterém chcete vytvořit Objekt DataDriftDetector.

name
Vyžadováno
str

Jedinečný název dataDriftDetector objektu.

baseline_dataset
Vyžadováno

Datová sada, se kterou se má porovnat cílová datová sada.

target_dataset
Vyžadováno

Datová sada, pro kterou se budou spouštět adhocové nebo plánované úlohy DataDrift. Musí se jednat o časovou řadu.

compute_target
Vyžadováno

Volitelný název ComputeTarget nebo ComputeTarget služby Azure Machine Learning. DataDriftDetector vytvoří cílový výpočetní objekt, pokud není zadaný.

frequency
Vyžadováno
str

Volitelná frekvence označující, jak často se kanál spouští. Podporuje "Day", "Week" nebo "Month".

feature_list
Vyžadováno

Volitelné funkce na seznamu povolených pro spuštění detekce datových zápatí. Úlohy DataDriftDetector se spustí u všech funkcí, pokud feature_list není zadaný. Seznam funkcí může obsahovat znaky, čísla, pomlčky a prázdné znaky. Délka seznamu musí být menší než 200.

alert_config
Vyžadováno

Volitelný objekt konfigurace pro upozornění DataDriftDetector.

drift_threshold
Vyžadováno

Volitelná prahová hodnota pro povolení upozornění DataDriftDetector. Hodnota musí být mezi 0 a 1. Hodnota 0,2 se použije, pokud je zadána hodnota None (výchozí).

latency
Vyžadováno
int

Zpoždění v hodinách, než se data zobrazí v datové sadě.

Poznámky

Objekt DataDriftDetector představuje definici úlohy posunu dat, kterou lze použít ke spuštění tří typů spuštění úloh:

  • adhoc run pro analýzu dat za konkrétní den; podívejte se na metodurun.

  • plánované spuštění v kanálu; podívejte se na metodu enable_schedule .

  • spuštění zpětného vyplňování, abyste viděli, jak se data mění v průběhu času; podívejte se na metodu backfill .

Typický vzor pro vytvoření DataDriftDetectoru je:

  • Pokud chcete vytvořit objekt DataDriftDetector založený na datové sadě, použijte create_from_datasets

Následující příklad ukazuje, jak vytvořit objekt DataDriftDetector založený na datové sadě.


   from azureml.datadrift import DataDriftDetector, AlertConfiguration

   alert_config = AlertConfiguration(['user@contoso.com']) # replace with your email to recieve alerts from the scheduled pipeline after enabling

   monitor = DataDriftDetector.create_from_datasets(ws, 'weather-monitor', baseline, target,
                                                         compute_target='cpu-cluster',         # compute target for scheduled pipeline and backfills
                                                         frequency='Week',                     # how often to analyze target data
                                                         feature_list=None,                    # list of features to detect drift on
                                                         drift_threshold=None,                 # threshold from 0 to 1 for email alerting
                                                         latency=0,                            # SLA in hours for target data to arrive in the dataset
                                                         alert_config=alert_config)            # email addresses to send alert

Úplná ukázka je k dispozici od https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/work-with-data/datadrift-tutorial/datadrift-tutorial.ipynb

Konstruktor DataDriftDetector načte existující objekt posunu dat přidružený k pracovnímu prostoru.

Metody

backfill

Spusťte úlohu zpětného vyplňování v zadaném počátečním a koncovém datu.

Podrobnosti o spuštěních zpětného vyplňování posunu dat najdete v tématu https://aka.ms/datadrift .

POZNÁMKA: Zpětné vyplňování je podporováno pouze u objektů DataDriftDetector založených na datové sadě.

create_from_datasets

Vytvořte nový objekt DataDriftDetector z standardní tabulkové datové sady a cílové datové sady časové řady.

delete

Odstraňte plán objektu DataDriftDetector.

disable_schedule

Zakažte plán pro objekt DataDriftDetector.

enable_schedule

Vytvořte plán spuštění úlohy DataDriftDetector založené na datové sadě.

get_by_name

Načtěte jedinečný objekt DataDriftDetector pro daný pracovní prostor a název.

get_output

Získejte řazenou kolekci členů s výsledky posunu a metrikami pro konkrétní DataDriftDetector za dané časové období.

list

Získejte seznam objektů DataDriftDetector pro zadaný pracovní prostor a volitelnou datovou sadu.

POZNÁMKA: Předání pouze parametru workspace vrátí všechny objekty DataDriftDetector definované v pracovním prostoru.

run

Spusťte analýzu posunu dat k určitému bodu v čase.

show

Umožňuje zobrazit trend posunu dat v daném časovém rozsahu.

Ve výchozím nastavení tato metoda zobrazuje posledních 10 cyklů. Pokud je například frekvence den, bude to posledních 10 dnů. Pokud je četnost týdenní, bude to posledních 10 týdnů.

update

Aktualizujte plán přidružený k objektu DataDriftDetector.

Volitelné hodnoty parametrů je možné nastavit na Nonehodnotu , jinak mají výchozí hodnotu pro své stávající hodnoty.

backfill

Spusťte úlohu zpětného vyplňování v zadaném počátečním a koncovém datu.

Podrobnosti o spuštěních zpětného vyplňování posunu dat najdete v tématu https://aka.ms/datadrift .

POZNÁMKA: Zpětné vyplňování je podporováno pouze u objektů DataDriftDetector založených na datové sadě.

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

Parametry

Name Description
start_date
Vyžadováno

Počáteční datum úlohy zpětného vyplňování.

end_date
Vyžadováno

Koncové datum úlohy zpětného vyplňování (včetně).

compute_target

Volitelný název ComputeTarget nebo ComputeTarget služby Azure Machine Learning. DataDriftDetector vytvoří cílový výpočetní objekt, pokud není zadaný žádný.

Default value: None
create_compute_target

Označuje, jestli se automaticky vytvoří cílový výpočetní objekt služby Azure Machine Learning.

Default value: False

Návraty

Typ Description
Run

Spuštění DataDriftDetector.

create_from_datasets

Vytvořte nový objekt DataDriftDetector z standardní tabulkové datové sady a cílové datové sady časové řady.

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)

Parametry

Name Description
workspace
Vyžadováno

Pracovní prostor pro vytvoření DataDriftDetector v.

name
Vyžadováno
str

Jedinečný název dataDriftDetector objektu.

baseline_dataset
Vyžadováno

Datová sada, se kterou se má porovnat cílová datová sada.

target_dataset
Vyžadováno

Datová sada, pro kterou se budou spouštět adhocové nebo plánované úlohy DataDrift. Musí se jednat o časovou řadu.

compute_target

Volitelný název ComputeTarget nebo ComputeTarget služby Azure Machine Learning. DataDriftDetector vytvoří cílový výpočetní objekt, pokud není zadaný.

Default value: None
frequency
str

Volitelná frekvence označující, jak často se kanál spouští. Podporuje "Day", "Week" nebo "Month".

Default value: None
feature_list

Volitelné funkce na seznamu povolených pro spuštění detekce zápatí dat Úlohy DataDriftDetector budou spuštěny u všech funkcí, pokud feature_list není zadaný. Seznam funkcí může obsahovat znaky, čísla, pomlčky a prázdné znaky. Délka seznamu musí být menší než 200.

Default value: None
alert_config

Volitelný objekt konfigurace pro upozornění DataDriftDetector.

Default value: None
drift_threshold

Volitelná prahová hodnota pro povolení upozornění DataDriftDetector. Hodnota musí být mezi 0 a 1. Hodnota 0,2 se použije, pokud je zadána hodnota None (výchozí).

Default value: None
latency
int

Zpoždění dat v hodinách, než se data zobrazí v datové sadě

Default value: None

Návraty

Typ Description

Objekt DataDriftDetector.

Výjimky

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

Poznámky

DataDriftDetectors založené na datové sadě umožňují vypočítat posun dat mezi základní datovou sadou, která musí být TabularDataset, a cílovou datovou sadou, což musí být datová sada časové řady. Datová sada časové řady je jednoduše TabularDataset s vlastností fine_grain_timestamp. DataDriftDetector pak může spustit adhoc nebo naplánované úlohy, aby zjistil, jestli se cílová datová sada odchylovala od standardní datové sady.


   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

Odstraňte plán objektu DataDriftDetector.

delete(wait_for_completion=True)

Parametry

Name Description
wait_for_completion

Jestli se má čekat na dokončení operace odstranění.

Default value: True

disable_schedule

Zakažte plán pro objekt DataDriftDetector.

disable_schedule(wait_for_completion=True)

Parametry

Name Description
wait_for_completion

Jestli se má čekat na dokončení operace zakázání.

Default value: True

enable_schedule

Vytvořte plán spuštění úlohy DataDriftDetector založené na datové sadě.

enable_schedule(create_compute_target=False, wait_for_completion=True)

Parametry

Name Description
create_compute_target

Označuje, jestli se cíl výpočetních prostředků služby Azure Machine Learning vytvoří automaticky.

Default value: False
wait_for_completion

Jestli se má čekat na dokončení operace povolení.

Default value: True

get_by_name

Načtěte jedinečný objekt DataDriftDetector pro daný pracovní prostor a název.

static get_by_name(workspace, name)

Parametry

Name Description
workspace
Vyžadováno

Pracovní prostor, ve kterém byl vytvořen DataDriftDetector.

name
Vyžadováno
str

Název objektu DataDriftDetector, který se má vrátit.

Návraty

Typ Description

Objekt DataDriftDetector.

get_output

Získejte řazenou kolekci členů s výsledky posunu a metrikami pro konkrétní DataDriftDetector za dané časové období.

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

Parametry

Name Description
start_time
datetime, <xref:optional>

Čas zahájení okna výsledků v UTC. Pokud je zadána hodnota None (výchozí), použijí se jako čas zahájení výsledky posledního 10. cyklu. Pokud je například frekvence plánu posunu dat den, pak start_time je 10 dnů. Pokud je frekvence týden, pak start_time je 10 týdnů.

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

Koncový čas okna výsledků v UTC. Pokud je zadána hodnota None (výchozí), použije se jako koncový čas aktuální den UTC.

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

Konkrétní ID spuštění.

Default value: None

Návraty

Typ Description

Řazená kolekce členů se seznamem výsledků posunu a seznamem jednotlivých datových sad a sloupcových metrik.

Poznámky

Tato metoda vrací kolekci členů výsledků posunu a metrik pro časové okno nebo ID spuštění na základě typu běhu: adhoc run, plánovaného spuštění a běhu zpětného vyplňování.

  • Pokud chcete načíst výsledky adhoc spuštění, existuje jenom jeden způsob: run_id měl by být platný identifikátor GUID.

  • Pokud chcete načíst naplánovaná spuštění a výsledky zásypového spuštění, existují dva různé způsoby: buď přiřadit platný identifikátor GUID, run_id nebo přiřadit konkrétní start_time a/nebo end_time (včetně), přičemž se zachová run_id jako Žádný.

  • Pokud run_id, start_timea end_time nejsou none ve stejném volání metody, je vyvolána výjimka ověření parametru.

POZNÁMKA: Zadejte parametry a start_timeend_time nebo run_id parametr, ale ne oba parametry.

Je možné, že pro stejné cílové datum existuje více výsledků (cílové datum znamená počáteční datum cílové datové sady pro posun na základě datové sady). Proto je nutné identifikovat a zpracovat duplicitní výsledky. Pro posun na základě datové sady platí, že pokud jsou výsledky pro stejné cílové datum, jsou to duplicitní výsledky. Metoda get_output dedupuje všechny duplicitní výsledky podle jednoho pravidla: vždy si vyzvedne nejnovější vygenerované výsledky.

Metodu get_output lze použít k načtení všech výstupů nebo částečných výstupů plánovaných spuštění v určitém časovém rozsahu mezi start_time a end_time (včetně hranice). Můžete také omezit výsledky jednotlivých adhoc zadáním run_id.

Při interpretaci výsledků vrácených metodou využijte get_output následující pokyny:

  • Principem filtrování je "překrývající se": pokud dojde k překrývání mezi skutečným časem výsledku (na základě datové sady: cílová datová sada [počáteční datum, koncové datum]) a daným [start_time, end_time], pak se výsledek vyzvedne.

  • Pokud existuje více výstupů pro jedno cílové datum, protože výpočet posunu byl proveden několikrát proti danému dni, bude ve výchozím nastavení vybrán pouze nejnovější výstup.

  • Vzhledem k tomu, že existuje více typů instancí posunu dat, může být obsah výsledku různý.

U výsledků založených na datové sadě bude výstup vypadat takto:


   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

Získejte seznam objektů DataDriftDetector pro zadaný pracovní prostor a volitelnou datovou sadu.

POZNÁMKA: Předání pouze parametru workspace vrátí všechny objekty DataDriftDetector definované v pracovním prostoru.

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

Parametry

Name Description
workspace
Vyžadováno

Pracovní prostor, ve kterém byly vytvořeny objekty DataDriftDetector.

baseline_dataset

Standardní datová sada pro filtrování návratového seznamu.

Default value: None
target_dataset

Cílová datová sada pro filtrování návratového seznamu.

Default value: None

Návraty

Typ Description

Seznam objektů DataDriftDetector.

run

Spusťte analýzu posunu dat k určitému bodu v čase.

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

Parametry

Name Description
target_date
Vyžadováno

Cílové datum bodování dat v UTC.

compute_target

Volitelný název ComputeTarget nebo ComputeTarget služby Azure Machine Learning. Pokud není zadaný, cíl výpočetních prostředků se vytvoří automaticky.

Default value: None
create_compute_target

Označuje, jestli se cíl výpočetních prostředků služby Azure Machine Learning vytvoří automaticky.

Default value: False
feature_list

Volitelné funkce na seznamu povolených pro spuštění detekce zápatí dat

Default value: None
drift_threshold

Volitelná prahová hodnota pro povolení upozornění DataDriftDetector.

Default value: None

Návraty

Typ Description
Run

Spuštění DataDriftDetector.

show

Umožňuje zobrazit trend posunu dat v daném časovém rozsahu.

Ve výchozím nastavení tato metoda zobrazuje posledních 10 cyklů. Pokud je například frekvence den, bude to posledních 10 dnů. Pokud je četnost týdenní, bude to posledních 10 týdnů.

show(start_time=None, end_time=None)

Parametry

Name Description
start_time
datetime, <xref:optional>

Začátek časového okna prezentace v UTC. Výchozí hodnota None znamená, že chcete získat nejnovější výsledky z 10. cyklu.

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

Konec časového okna dat prezentace v UTC. Výchozí hodnota None znamená aktuální den.

Default value: None

Návraty

Typ Description
dict()

Slovník všech čísel. Klíč je service_name.

update

Aktualizujte plán přidružený k objektu DataDriftDetector.

Volitelné hodnoty parametrů je možné nastavit na Nonehodnotu , jinak mají výchozí hodnotu pro své stávající hodnoty.

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

Parametry

Name Description
compute_target

Volitelný název ComputeTarget nebo ComputeTarget služby Azure Machine Learning. DataDriftDetector vytvoří cílový výpočetní objekt, pokud tento parametr není zadaný.

Default value: Ellipsis
feature_list

Funkce na seznamu povolených pro spuštění detekce dat.

Default value: Ellipsis
schedule_start

Počáteční čas plánu posunu dat v UTC.

Default value: Ellipsis
alert_config

Volitelný objekt konfigurace pro upozornění DataDriftDetector.

Default value: Ellipsis
drift_threshold

Prahová hodnota pro povolení upozornění DataDriftDetector.

Default value: Ellipsis
wait_for_completion

Jestli se mají čekat na dokončení operací povolení, zakázání nebo odstranění.

Default value: True

Návraty

Typ Description

Vlastní

Atributy

alert_config

Získejte konfiguraci upozornění pro objekt DataDriftDetector.

Návraty

Typ Description

Objekt AlertConfiguration.

baseline_dataset

Získejte základní datovou sadu přidruženou k objektu DataDriftDetector.

Návraty

Typ Description

Typ datové sady základní datové sady.

compute_target

Získejte cílový výpočetní objekt připojený k objektu DataDriftDetector.

Návraty

Typ Description

Cílové výpočetní prostředí.

drift_threshold

Získejte prahovou hodnotu posunu dataDriftDetector objektu.

Návraty

Typ Description

Prahová hodnota posunu.

drift_type

Získejte typ DataDriftDetector. V současné chvíli je jedinou podporovanou hodnotou DatasetBased.

Návraty

Typ Description
str

Typ Objektu DataDriftDetector.

enabled

Získejte logickou hodnotu označující, zda je objekt DataDriftDetector povolen.

Návraty

Typ Description

Logická hodnota; Hodnota True pro povoleno

feature_list

Získejte seznam povolených funkcí pro objekt DataDriftDetector.

Návraty

Typ Description

Seznam názvů funkcí.

frequency

Získejte frekvenci plánu DataDriftDetector.

Návraty

Typ Description
str

Řetězec "Day", "Week" nebo "Month"

interval

Získejte interval plánu DataDriftDetector.

Návraty

Typ Description
int

Celočíselná hodnota časové jednotky.

latency

Získejte latenci úloh plánu DataDriftDetector (v hodinách).

Návraty

Typ Description
int

Počet hodin představující latenci.

name

Získejte název objektu DataDriftDetector.

Návraty

Typ Description
str

Název DataDriftDetector.

schedule_start

Získejte čas zahájení plánu.

Návraty

Typ Description

Objekt datetime počátečního času plánu v UTC.

state

Označuje stav plánu DataDriftDetector.

Návraty

Typ Description
str

Jedna z hodnot Zakázáno, Povoleno, Odstraněno, Zakázání, Povolení, Odstraňování, Selhání, DisableFailed, EnableFailed, EnableFailed, DeleteFailed.

target_dataset

Získejte cílovou datovou sadu přidruženou k objektu DataDriftDetector.

Návraty

Typ Description

Typ základní datové sady.

workspace

Získejte pracovní prostor objektu DataDriftDetector.

Návraty

Typ Description

Pracovní prostor objektu DataDriftDetector byl vytvořen.