다음을 통해 공유


DataDriftDetector 클래스

Azure Machine Learning에서 데이터 드리프트 작업을 실행하는 데 사용할 수 있는 데이터 드리프트 모니터를 정의합니다.

DataDriftDetector 클래스를 사용하면 지정된 기준과 대상 데이터 세트 간의 드리프트를 식별할 수 있습니다. DataDriftDetector 개체는 기준 및 대상 데이터 세트를 직접 지정하여 작업 영역에서 만들어집니다. 자세한 내용은 https://aka.ms/datadrift참조하세요.

Datadriftdetector 생성자입니다.

DataDriftDetector 생성자는 제공된 작업 영역과 연결된 DataDriftDetector 개체의 클라우드 표현을 검색하는 데 사용됩니다.

상속
builtins.object
DataDriftDetector

생성자

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)

매개 변수

Name Description
workspace
필수

DataDriftDetector 개체를 만들 작업 영역입니다.

name
str

DataDriftDetector 개체의 고유한 이름입니다.

Default value: None
baseline_dataset

대상 데이터 세트를 비교할 데이터 세트입니다.

Default value: None
target_dataset

임시 또는 예약된 DataDrift 작업을 실행할 데이터 세트입니다. 시계열이어야 합니다.

Default value: None
compute_target

선택적 Azure Machine Learning ComputeTarget 또는 ComputeTarget 이름입니다. DataDriftDetector가 지정되지 않은 경우 컴퓨팅 대상을 만듭니다.

Default value: None
frequency
str

파이프라인 실행 빈도를 나타내는 선택적 빈도입니다. "Day", "Week" 또는 "Month"를 지원합니다.

Default value: None
feature_list

데이터 드리프트 검색을 실행하는 선택적 허용 목록에 추가된 기능입니다. feature_list 지정되지 않은 경우 DataDriftDetector 작업은 모든 기능에서 실행됩니다. 기능 목록에는 문자, 숫자, 대시 및 공백이 포함될 수 있습니다. 목록의 길이는 200보다 작아야 합니다.

Default value: None
alert_config

DataDriftDetector 경고에 대한 선택적 구성 개체입니다.

Default value: None
drift_threshold

DataDriftDetector 경고를 사용하도록 설정하는 선택적 임계값입니다. 값은 0에서 1 사이여야 합니다. None을 지정하면 값 0.2가 사용됩니다(기본값).

Default value: None
latency
int

데이터가 데이터 세트에 표시되는 시간(시간)입니다.

Default value: None
workspace
필수

DataDriftDetector 개체를 만들 작업 영역입니다.

name
필수
str

DataDriftDetector 개체의 고유한 이름입니다.

baseline_dataset
필수

대상 데이터 세트를 비교할 데이터 세트입니다.

target_dataset
필수

임시 또는 예약된 DataDrift 작업을 실행할 데이터 세트입니다. 시계열이어야 합니다.

compute_target
필수

선택적 Azure Machine Learning ComputeTarget 또는 ComputeTarget 이름입니다. DataDriftDetector가 지정되지 않은 경우 컴퓨팅 대상을 만듭니다.

frequency
필수
str

파이프라인 실행 빈도를 나타내는 선택적 빈도입니다. "Day", "Week" 또는 "Month"를 지원합니다.

feature_list
필수

데이터 드리프트 검색을 실행하는 선택적 허용 목록에 추가된 기능입니다. feature_list 지정되지 않은 경우 DataDriftDetector 작업은 모든 기능에서 실행됩니다. 기능 목록에는 문자, 숫자, 대시 및 공백이 포함될 수 있습니다. 목록의 길이는 200보다 작아야 합니다.

alert_config
필수

DataDriftDetector 경고에 대한 선택적 구성 개체입니다.

drift_threshold
필수

DataDriftDetector 경고를 사용하도록 설정하는 선택적 임계값입니다. 값은 0에서 1 사이여야 합니다. None을 지정하면 값 0.2가 사용됩니다(기본값).

latency
필수
int

데이터가 데이터 세트에 표시되는 시간(시간)입니다.

설명

DataDriftDetector 개체는 세 가지 작업 실행 형식을 실행하는 데 사용할 수 있는 데이터 드리프트 작업 정의를 나타냅니다.

  • 특정 날짜의 데이터를 분석하기 위해 실행되는 임시. run 메서드를 참조하세요.

  • 파이프라인에서 예약된 실행 enable_schedule 메서드를 참조하세요.

  • 백필을 실행하여 시간이 지남에 따라 데이터가 어떻게 변경되는지 확인합니다. backfill 메서드를 참조하세요.

DataDriftDetector를 만드는 일반적인 패턴은 다음과 같습니다.

DataDriftDetector 생성자는 작업 영역과 연결된 기존 데이터 드리프트 개체를 검색합니다.

메서드

backfill

지정된 시작 및 종료 날짜에 대해 백필 작업을 실행합니다.

데이터 드리프트 백필 실행에 대한 자세한 내용은 https://aka.ms/datadrift 참조하세요.

참고: 백필은 데이터 세트 기반 DataDriftDetector 개체에서만 지원됩니다.

create_from_datasets

기준 테이블 형식 데이터 세트 및 대상 시계열 데이터 세트에서 새 DataDriftDetector 개체를 만듭니다.

delete

DataDriftDetector 개체에 대한 일정을 삭제합니다.

disable_schedule

DataDriftDetector 개체에 대한 일정을 사용하지 않도록 설정합니다.

enable_schedule

데이터 세트 기반 DataDriftDetector 작업을 실행하는 일정을 만듭니다.

get_by_name

지정된 작업 영역 및 이름에 대한 고유한 DataDriftDetector 개체를 검색합니다.

get_output

지정된 기간 동안 특정 DataDriftDetector에 대한 드리프트 결과 및 메트릭의 튜플을 가져옵니다.

list

지정된 작업 영역 및 선택적 데이터 세트에 대한 DataDriftDetector 개체 목록을 가져옵니다.

참고:workspace 매개 변수만 전달하면 작업 영역에 정의된 모든 DataDriftDetector 개체가 반환됩니다.

run

단일 시점 데이터 드리프트 분석을 실행합니다.

show

지정된 시간 범위에서 데이터 드리프트 추세를 표시합니다.

기본적으로 이 메서드는 가장 최근의 10개 주기를 보여 줍니다. 예를 들어 빈도가 일인 경우 가장 최근 10일이 됩니다. 빈도가 주인 경우 가장 최근 10주가 됩니다.

update

DataDriftDetector 개체와 연결된 일정을 업데이트합니다.

선택적 매개 변수 값은 None설정할 수 있으며, 그렇지 않으면 기존 값으로 기본 설정됩니다.

backfill

지정된 시작 및 종료 날짜에 대해 백필 작업을 실행합니다.

데이터 드리프트 백필 실행에 대한 자세한 내용은 https://aka.ms/datadrift 참조하세요.

참고: 백필은 데이터 세트 기반 DataDriftDetector 개체에서만 지원됩니다.

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

매개 변수

Name Description
start_date
필수

백필 작업의 시작 날짜입니다.

end_date
필수

백필 작업의 종료 날짜(포함)입니다.

compute_target

선택적 Azure Machine Learning ComputeTarget 또는 ComputeTarget 이름입니다. DataDriftDetector는 지정되지 않은 경우 컴퓨팅 대상을 만듭니다.

Default value: None
create_compute_target

Azure Machine Learning 컴퓨팅 대상이 자동으로 생성되는지 여부를 나타냅니다.

Default value: False

반환

형식 Description
Run

DataDriftDetector가 실행됩니다.

create_from_datasets

기준 테이블 형식 데이터 세트 및 대상 시계열 데이터 세트에서 새 DataDriftDetector 개체를 만듭니다.

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)

매개 변수

Name Description
workspace
필수

DataDriftDetector를 만들 작업 영역입니다.

name
필수
str

DataDriftDetector 개체의 고유한 이름입니다.

baseline_dataset
필수

대상 데이터 세트를 비교할 데이터 세트입니다.

target_dataset
필수

임시 또는 예약된 DataDrift 작업을 실행할 데이터 세트입니다. 시계열이어야 합니다.

compute_target

선택적 Azure Machine Learning ComputeTarget 또는 ComputeTarget 이름입니다. DataDriftDetector가 지정되지 않은 경우 컴퓨팅 대상을 만듭니다.

Default value: None
frequency
str

파이프라인 실행 빈도를 나타내는 선택적 빈도입니다. "Day", "Week" 또는 "Month"를 지원합니다.

Default value: None
feature_list

데이터 드리프트 검색을 실행하는 선택적 허용 목록에 추가된 기능입니다. feature_list 지정되지 않은 경우 DataDriftDetector 작업은 모든 기능에서 실행됩니다. 기능 목록에는 문자, 숫자, 대시 및 공백이 포함될 수 있습니다. 목록의 길이는 200보다 작아야 합니다.

Default value: None
alert_config

DataDriftDetector 경고에 대한 선택적 구성 개체입니다.

Default value: None
drift_threshold

DataDriftDetector 경고를 사용하도록 설정하는 선택적 임계값입니다. 값은 0에서 1 사이여야 합니다. None을 지정하면 값 0.2가 사용됩니다(기본값).

Default value: None
latency
int

데이터가 데이터 세트에 표시되는 시간(시간)입니다.

Default value: None

반환

형식 Description

DataDriftDetector 개체입니다.

예외

형식 Description
<xref:KeyError>, <xref:TypeError>, <xref:ValueError>

설명

데이터 세트 기반 DataDriftDetectors를 사용하면 TabularDataset기준 데이터 세트와 시계열 데이터 세트여야 하는 대상 데이터 세트 간의 데이터 드리프트를 계산할 수 있습니다. 시계열 데이터 세트는 단순히 fine_grain_timestamp 속성이 있는 TabularDataset. 그런 다음 DataDriftDetector는 임시 또는 예약된 작업을 실행하여 대상 데이터 세트가 기준 데이터 세트에서 드리프트되었는지 확인할 수 있습니다.


   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

DataDriftDetector 개체에 대한 일정을 삭제합니다.

delete(wait_for_completion=True)

매개 변수

Name Description
wait_for_completion

삭제 작업이 완료되기를 기다릴지 여부입니다.

Default value: True

disable_schedule

DataDriftDetector 개체에 대한 일정을 사용하지 않도록 설정합니다.

disable_schedule(wait_for_completion=True)

매개 변수

Name Description
wait_for_completion

사용 안 함 작업이 완료되기를 기다릴지 여부입니다.

Default value: True

enable_schedule

데이터 세트 기반 DataDriftDetector 작업을 실행하는 일정을 만듭니다.

enable_schedule(create_compute_target=False, wait_for_completion=True)

매개 변수

Name Description
create_compute_target

Azure Machine Learning 컴퓨팅 대상이 자동으로 생성되는지 여부를 나타냅니다.

Default value: False
wait_for_completion

사용 작업이 완료되기를 기다릴지 여부입니다.

Default value: True

get_by_name

지정된 작업 영역 및 이름에 대한 고유한 DataDriftDetector 개체를 검색합니다.

static get_by_name(workspace, name)

매개 변수

Name Description
workspace
필수

DataDriftDetector가 만들어진 작업 영역입니다.

name
필수
str

반환할 DataDriftDetector 개체의 이름입니다.

반환

형식 Description

DataDriftDetector 개체입니다.

get_output

지정된 기간 동안 특정 DataDriftDetector에 대한 드리프트 결과 및 메트릭의 튜플을 가져옵니다.

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

매개 변수

Name Description
start_time
datetime, <xref:optional>

결과 창의 시작 시간(UTC)입니다. None(기본값)을 지정하면 가장 최근의 10번째 주기 결과가 시작 시간으로 사용됩니다. 예를 들어 데이터 드리프트 일정의 빈도가 일인 경우 start_time 10일입니다. 빈도가 주인 경우 start_time 10주입니다.

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

결과 창의 종료 시간(UTC)입니다. None(기본값)을 지정하면 현재 날짜 UTC가 종료 시간으로 사용됩니다.

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

특정 실행 ID입니다.

Default value: None

반환

형식 Description

드리프트 결과 목록과 개별 데이터 세트 및 열 형식 메트릭 목록의 튜플입니다.

설명

이 메서드는 실행 유형(임시 실행, 예약된 실행 및 백필 실행)에 따라 시간 창 또는 실행 ID에 대한 드리프트 결과 및 메트릭의 튜플을 반환합니다.

  • 임시 실행 결과를 검색하려면 한 가지 방법만 있습니다. 유효한 GUID여야 합니다.

  • 예약된 실행을 검색하고 실행 결과를 백필하려면 유효한 GUID를 run_id 할당하거나 특정 start_time 및/또는 end_time(포함)를 할당하는 동시에 run_id 없음으로 유지하는 두 가지 방법이 있습니다.

  • run_id, start_timeend_time 동일한 메서드 호출에서 None이 아니면 매개 변수 유효성 검사 예외가 발생합니다.

참고:start_time 매개 변수와 end_time 매개 변수 또는 run_id 매개 변수 중 하나를 지정하지만 둘 다 지정하지는 않습니다.

동일한 대상 날짜에 대해 여러 결과가 있을 수 있습니다(대상 날짜는 데이터 세트 기반 드리프트의 대상 데이터 세트 시작 날짜를 의미). 따라서 중복 결과를 식별하고 처리해야 합니다. 데이터 세트 기반 드리프트의 경우 결과가 동일한 대상 날짜에 대한 경우 중복된 결과입니다. get_output 메서드는 중복된 결과를 항상 최신 생성된 결과를 선택하는 규칙으로 중복된 결과를 제거합니다.

get_output 메서드는 start_timeend_time(경계 포함) 사이의 특정 시간 범위에서 예약된 실행의 모든 출력 또는 부분 출력을 검색하는 데 사용할 수 있습니다. run_id지정하여 개별 임시 결과를 제한할 수도 있습니다.

다음 지침을 사용하여 get_output 메서드에서 반환된 결과를 해석할 수 있습니다.

  • 필터링 원칙은 "겹침"입니다. 실제 결과 시간(데이터 세트 기반: 대상 데이터 세트 [시작 날짜, 종료 날짜])과 지정된 [start_time, end_time] 사이에 겹치는 경우 결과가 선택됩니다.

  • 드리프트 계산이 해당 날짜에 대해 여러 번 실행되었기 때문에 한 대상 날짜에 대해 여러 출력이 있는 경우 기본적으로 최신 출력만 선택됩니다.

  • 여러 형식의 데이터 드리프트 인스턴스가 있는 경우 결과 내용이 다양할 수 있습니다.

데이터 세트 기반 결과의 경우 출력은 다음과 같습니다.


   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

지정된 작업 영역 및 선택적 데이터 세트에 대한 DataDriftDetector 개체 목록을 가져옵니다.

참고:workspace 매개 변수만 전달하면 작업 영역에 정의된 모든 DataDriftDetector 개체가 반환됩니다.

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

매개 변수

Name Description
workspace
필수

DataDriftDetector 개체가 만들어진 작업 영역입니다.

baseline_dataset

반환 목록을 필터링하는 기준 데이터 세트입니다.

Default value: None
target_dataset

반환 목록을 필터링할 대상 데이터 세트입니다.

Default value: None

반환

형식 Description

DataDriftDetector 개체의 목록입니다.

run

단일 시점 데이터 드리프트 분석을 실행합니다.

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

매개 변수

Name Description
target_date
필수

UTC의 점수 매기기 데이터의 대상 날짜입니다.

compute_target

선택적 Azure Machine Learning ComputeTarget 또는 ComputeTarget 이름입니다. 지정하지 않으면 컴퓨팅 대상이 자동으로 만들어집니다.

Default value: None
create_compute_target

Azure Machine Learning 컴퓨팅 대상이 자동으로 생성되는지 여부를 나타냅니다.

Default value: False
feature_list

데이터 드리프트 검색을 실행하는 선택적 허용 목록에 추가된 기능입니다.

Default value: None
drift_threshold

DataDriftDetector 경고를 사용하도록 설정하는 선택적 임계값입니다.

Default value: None

반환

형식 Description
Run

DataDriftDetector가 실행됩니다.

show

지정된 시간 범위에서 데이터 드리프트 추세를 표시합니다.

기본적으로 이 메서드는 가장 최근의 10개 주기를 보여 줍니다. 예를 들어 빈도가 일인 경우 가장 최근 10일이 됩니다. 빈도가 주인 경우 가장 최근 10주가 됩니다.

show(start_time=None, end_time=None)

매개 변수

Name Description
start_time
datetime, <xref:optional>

프레젠테이션 시간 창의 시작 부분(UTC)입니다. 기본 없음은 가장 최근 10번째 주기의 결과를 선택하는 것을 의미합니다.

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

프레젠테이션 데이터 시간 창의 끝(UTC)입니다. 기본 없음은 현재 일을 의미합니다.

Default value: None

반환

형식 Description
dict()

모든 그림의 사전입니다. 키는 service_name.

update

DataDriftDetector 개체와 연결된 일정을 업데이트합니다.

선택적 매개 변수 값은 None설정할 수 있으며, 그렇지 않으면 기존 값으로 기본 설정됩니다.

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

매개 변수

Name Description
compute_target

선택적 Azure Machine Learning ComputeTarget 또는 ComputeTarget 이름입니다. 이 매개 변수를 지정하지 않으면 DataDriftDetector가 컴퓨팅 대상을 만듭니다.

Default value: Ellipsis
feature_list

데이터 드리프트 검색을 실행하는 허용 목록에 추가된 기능입니다.

Default value: Ellipsis
schedule_start

데이터 드리프트 일정의 시작 시간(UTC)입니다.

Default value: Ellipsis
alert_config

DataDriftDetector 경고에 대한 선택적 구성 개체입니다.

Default value: Ellipsis
drift_threshold

DataDriftDetector 경고를 사용하도록 설정하는 임계값입니다.

Default value: Ellipsis
wait_for_completion

사용/사용 안 함/삭제 작업이 완료되기를 기다릴지 여부입니다.

Default value: True

반환

형식 Description

자신

특성

alert_config

DataDriftDetector 개체에 대한 경고 구성을 가져옵니다.

반환

형식 Description

AlertConfiguration 개체입니다.

baseline_dataset

DataDriftDetector 개체와 연결된 기준 데이터 세트를 가져옵니다.

반환

형식 Description

기준 데이터 세트의 데이터 세트 형식입니다.

compute_target

DataDriftDetector 개체에 연결된 컴퓨팅 대상을 가져옵니다.

반환

형식 Description

컴퓨팅 대상입니다.

drift_threshold

DataDriftDetector 개체의 드리프트 임계값을 가져옵니다.

반환

형식 Description

드리프트 임계값입니다.

drift_type

DataDriftDetector의 형식을 가져옵니다. 'DatasetBased'는 현재 지원되는 유일한 값입니다.

반환

형식 Description
str

DataDriftDetector 개체의 형식입니다.

enabled

DataDriftDetector 개체를 사용할 수 있는지 여부를 나타내는 부울 값을 가져옵니다.

반환

형식 Description

부울 값입니다. True이면 사용할 수 있습니다.

feature_list

DataDriftDetector 개체에 대해 허용 목록에 추가된 기능 목록을 가져옵니다.

반환

형식 Description

기능 이름 목록입니다.

frequency

DataDriftDetector 일정의 빈도를 가져옵니다.

반환

형식 Description
str

"Day", "Week" 또는 "Month"의 문자열입니다.

interval

DataDriftDetector 일정의 간격을 가져옵니다.

반환

형식 Description
int

시간 단위의 정수 값입니다.

latency

DataDriftDetector 일정 작업의 대기 시간을 시간 단위로 가져옵니다.

반환

형식 Description
int

대기 시간을 나타내는 시간 수입니다.

name

DataDriftDetector 개체의 이름을 가져옵니다.

반환

형식 Description
str

DataDriftDetector 이름입니다.

schedule_start

일정의 시작 시간을 가져옵니다.

반환

형식 Description

UTC의 일정 시작 시간의 datetime 개체입니다.

state

DataDriftDetector 일정의 상태를 표시합니다.

반환

형식 Description
str

'Disabled', 'Enabled', 'Deleted', 'Disabling', 'Enabling', 'Deleting', 'Failed', 'DisableFailed', 'EnableFailed', 'DeleteFailed' 중 하나입니다.

target_dataset

DataDriftDetector 개체와 연결된 대상 데이터 세트를 가져옵니다.

반환

형식 Description

기준 데이터 세트의 데이터 세트 형식입니다.

workspace

DataDriftDetector 개체의 작업 영역을 가져옵니다.

반환

형식 Description

DataDriftDetector 개체가 만들어진 작업 영역입니다.