Bagikan melalui


DataDriftDetector Kelas

Menentukan monitor penyimpangan data yang dapat digunakan untuk menjalankan pekerjaan penyimpangan data di Azure Machine Learning.

Kelas DataDriftDetector memungkinkan Anda mengidentifikasi penyimpangan antara garis besar dan himpunan data target tertentu. Objek DataDriftDetector dibuat di ruang kerja dengan menentukan himpunan data garis besar serta target secara langsung. Untuk informasi selengkapnya, lihat https://aka.ms/datadrift.

Konstruktor Datadriftdetector.

Konstruktor DataDriftDetector digunakan untuk mengambil representasi cloud objek DataDriftDetector yang terkait dengan ruang kerja yang disediakan.

Warisan
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)

Parameter

Nama Deskripsi
workspace
Diperlukan

Ruang kerja untuk membuat objek DataDriftDetector.

name
str

Nama unik untuk objek DataDriftDetector.

Nilai default: None
baseline_dataset

Himpunan data untuk membandingkan himpunan data target.

Nilai default: None
target_dataset

Himpunan data untuk menjalankan pekerjaan DataDrift adhoc atau terjadwal. Harus deret waktu.

Nilai default: None
compute_target

Nama ComputeTarget atau ComputeTarget Azure Machine Learning opsional. DataDriftDetector akan membuat target komputasi jika tidak ditentukan.

Nilai default: None
frequency
str

Frekuensi opsional yang menunjukkan seberapa sering alur dijalankan. Mendukung "Hari", "Minggu", atau "Bulan".

Nilai default: None
feature_list

Fitur daftar putih opsional untuk menjalankan deteksi penyimpangan data. Pekerjaan DataDriftDetector akan berjalan di semua fitur jika feature_list tidak ditentukan. Daftar fitur dapat berisi karakter, angka, tanda pisah, dan spasi. Panjang daftar harus kurang dari 200.

Nilai default: None
alert_config

Objek konfigurasi opsional untuk peringatan DataDriftDetector.

Nilai default: None
drift_threshold

Ambang opsional untuk mengaktifkan peringatan DataDriftDetector. Nilai harus antara 0 dan 1. Nilai 0,2 digunakan ketika Tidak ada yang ditentukan (default).

Nilai default: None
latency
int

Penundaan dalam beberapa jam hingga data muncul di himpunan data.

Nilai default: None
workspace
Diperlukan

Ruang kerja untuk membuat objek DataDriftDetector.

name
Diperlukan
str

Nama unik untuk objek DataDriftDetector.

baseline_dataset
Diperlukan

Himpunan data untuk membandingkan himpunan data target.

target_dataset
Diperlukan

Himpunan data untuk menjalankan pekerjaan DataDrift adhoc atau terjadwal. Harus deret waktu.

compute_target
Diperlukan

Nama ComputeTarget atau ComputeTarget Azure Machine Learning opsional. DataDriftDetector akan membuat target komputasi jika tidak ditentukan.

frequency
Diperlukan
str

Frekuensi opsional yang menunjukkan seberapa sering alur dijalankan. Mendukung "Hari", "Minggu", atau "Bulan".

feature_list
Diperlukan

Fitur daftar putih opsional untuk menjalankan deteksi penyimpangan data. Pekerjaan DataDriftDetector akan berjalan di semua fitur jika feature_list tidak ditentukan. Daftar fitur dapat berisi karakter, angka, tanda pisah, dan spasi. Panjang daftar harus kurang dari 200.

alert_config
Diperlukan

Objek konfigurasi opsional untuk peringatan DataDriftDetector.

drift_threshold
Diperlukan

Ambang opsional untuk mengaktifkan peringatan DataDriftDetector. Nilai harus antara 0 dan 1. Nilai 0,2 digunakan ketika Tidak ada yang ditentukan (default).

latency
Diperlukan
int

Penundaan dalam beberapa jam hingga data muncul di himpunan data.

Keterangan

Objek DataDriftDetector mewakili definisi pekerjaan penyimpangan data yang dapat digunakan untuk menjalankan tiga jenis pekerjaan eksekusi:

  • eksekusi adhoc untuk menganalisis data senilai hari tertentu; lihat metode run.

  • eksekusi terjadwal dalam alur; lihat metode enable_schedule.

  • eksekusi pengisian ulang untuk melihat bagaimana data berubah dari waktu ke waktu; lihat metode backfill.

Pola khas untuk membuat DataDriftDetector adalah:

Contoh berikut menunjukkan cara membuat objek DataDriftDetector berbasis himpunan data.


   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

Sampel lengkap tersedia dari https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/work-with-data/datadrift-tutorial/datadrift-tutorial.ipynb

Konstruktor DataDriftDetector mengambil objek penyimpangan data yang ada terkait dengan ruang kerja.

Metode

backfill

Jalankan pekerjaan pengisian ulang pada tanggal mulai dan tanggal selesai yang ditentukan.

Lihat https://aka.ms/datadrift untuk detail tentang eksekusi pengisian ulang penyimpangan data.

CATATAN: Isi ulang hanya didukung pada objek DataDriftDetector berbasis himpunan data.

create_from_datasets

Buat objek DataDriftDetector baru dari himpunan data tabular garis besar dan himpunan data deret waktu target.

delete

Hapus jadwal untuk objek DataDriftDetector.

disable_schedule

Nonaktifkan jadwal untuk objek DataDriftDetector.

enable_schedule

Buat jadwal untuk menjalankan pekerjaan DataDriftDetector berbasis himpunan data.

get_by_name

Ambil objek DataDriftDetector unik untuk ruang kerja dan nama tertentu.

get_output

Dapatkan tuple hasil penyimpangan dan metrik untuk DataDriftDetector tertentu selama jangka waktu tertentu.

list

Dapatkan daftar objek DataDriftDetector untuk ruang kerja yang ditentukan dan himpunan data opsional.

CATATAN: Hanya meneruskan parameter workspace akan mengembalikan semua objek DataDriftDetector, yang ditentukan di ruang kerja.

run

Jalankan analisis penyimpangan data satu titik dalam waktu.

show

Menampilkan tren penyimpangan data dalam rentang waktu tertentu.

Secara default, metode ini menunjukkan 10 siklus terbaru. Misalnya, jika frekuensi adalah hari, maka frekuensinya akan menjadi 10 hari terakhir. Jika frekuensi adalah minggu, maka frekuensinya akan menjadi 10 minggu terakhir.

update

Perbarui jadwal yang terkait dengan objek DataDriftDetector.

Nilai parameter opsional dapat diatur ke None, jika tidak, nilai default ke nilai yang ada.

backfill

Jalankan pekerjaan pengisian ulang pada tanggal mulai dan tanggal selesai yang ditentukan.

Lihat https://aka.ms/datadrift untuk detail tentang eksekusi pengisian ulang penyimpangan data.

CATATAN: Isi ulang hanya didukung pada objek DataDriftDetector berbasis himpunan data.

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

Parameter

Nama Deskripsi
start_date
Diperlukan

Tanggal mulai pekerjaan pengisian ulang.

end_date
Diperlukan

Tanggal selesai pekerjaan pengisian ulang, inklusif.

compute_target

Nama ComputeTarget atau ComputeTarget Azure Machine Learning opsional. DataDriftDetector akan membuat target komputasi jika tidak ada yang ditentukan.

Nilai default: None
create_compute_target

Menunjukkan apakah target komputasi Azure Machine Learning dibuat secara otomatis.

Nilai default: False

Mengembalikan

Jenis Deskripsi
Run

Eksekusi DataDriftDetector.

create_from_datasets

Buat objek DataDriftDetector baru dari himpunan data tabular garis besar dan himpunan data deret waktu target.

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)

Parameter

Nama Deskripsi
workspace
Diperlukan

Ruang kerja untuk membuat DataDriftDetector.

name
Diperlukan
str

Nama unik untuk objek DataDriftDetector.

baseline_dataset
Diperlukan

Himpunan data untuk membandingkan himpunan data target.

target_dataset
Diperlukan

Himpunan data untuk menjalankan pekerjaan DataDrift adhoc atau terjadwal. Harus deret waktu.

compute_target

Nama ComputeTarget atau ComputeTarget Azure Machine Learning opsional. DataDriftDetector akan membuat target komputasi jika tidak ditentukan.

Nilai default: None
frequency
str

Frekuensi opsional yang menunjukkan seberapa sering alur dijalankan. Mendukung "Hari", "Minggu", atau "Bulan".

Nilai default: None
feature_list

Fitur daftar putih opsional untuk menjalankan deteksi penyimpangan data. Pekerjaan DataDriftDetector akan berjalan di semua fitur jika feature_list tidak ditentukan. Daftar fitur dapat berisi karakter, angka, tanda pisah, dan spasi. Panjang daftar harus kurang dari 200.

Nilai default: None
alert_config

Objek konfigurasi opsional untuk peringatan DataDriftDetector.

Nilai default: None
drift_threshold

Ambang opsional untuk mengaktifkan peringatan DataDriftDetector. Nilai harus antara 0 dan 1. Nilai 0,2 digunakan ketika Tidak ada yang ditentukan (default).

Nilai default: None
latency
int

Penundaan dalam beberapa jam hingga data muncul di himpunan data.

Nilai default: None

Mengembalikan

Jenis Deskripsi

Objek DataDriftDetector.

Pengecualian

Jenis Deskripsi
<xref:KeyError>, <xref:TypeError>, <xref:ValueError>

Keterangan

DataDriftDetecors berbasis himpunan data memungkinkan Anda menghitung penyimpangan data antara himpunan data garis besar, yang harus berupa TabularDataset, dan himpunan data target, yang harus berupa himpunan data deret waktu. Himpunan data deret waktu hanyalah TabularDataset dengan properti fine_grain_timestamp. DataDriftDetector kemudian dapat menjalankan pekerjaan adhoc atau terjadwal untuk menentukan apakah himpunan data target telah menyimpang dari himpunan data garis besar.


   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

Hapus jadwal untuk objek DataDriftDetector.

delete(wait_for_completion=True)

Parameter

Nama Deskripsi
wait_for_completion

Apakah akan menunggu hingga operasi penghapusan selesai.

Nilai default: True

disable_schedule

Nonaktifkan jadwal untuk objek DataDriftDetector.

disable_schedule(wait_for_completion=True)

Parameter

Nama Deskripsi
wait_for_completion

Apakah akan menunggu hingga operasi penonaktifan selesai.

Nilai default: True

enable_schedule

Buat jadwal untuk menjalankan pekerjaan DataDriftDetector berbasis himpunan data.

enable_schedule(create_compute_target=False, wait_for_completion=True)

Parameter

Nama Deskripsi
create_compute_target

Menunjukkan apakah target komputasi Azure Machine Learning dibuat secara otomatis.

Nilai default: False
wait_for_completion

Apakah akan menunggu hingga operasi pengaktifan selesai.

Nilai default: True

get_by_name

Ambil objek DataDriftDetector unik untuk ruang kerja dan nama tertentu.

static get_by_name(workspace, name)

Parameter

Nama Deskripsi
workspace
Diperlukan

Ruang kerja tempat DataDriftDetector dibuat.

name
Diperlukan
str

Nama objek DataDriftDetector yang akan dikembalikan.

Mengembalikan

Jenis Deskripsi

Objek DataDriftDetector.

get_output

Dapatkan tuple hasil penyimpangan dan metrik untuk DataDriftDetector tertentu selama jangka waktu tertentu.

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

Parameter

Nama Deskripsi
start_time
datetime, <xref:optional>

Waktu mulai jendela hasil di UTC. Jika Tidak ada (default) ditentukan, maka hasil siklus ke-10 terbaru digunakan sebagai waktu mulai. Misalnya, jika frekuensi jadwal penyimpangan data adalah hari, maka start_time adalah 10 hari. Jika frekuensi adalah minggu, maka start_time adalah 10 minggu.

Nilai default: None
end_time
datetime, <xref:optional>

Waktu akhir jendela hasil di UTC. Jika Tidak ada (default) ditentukan, maka UTC hari ini digunakan sebagai waktu akhir.

Nilai default: None
run_id
int, <xref:optional>

ID eksekusi tertentu.

Nilai default: None

Mengembalikan

Jenis Deskripsi

Tuple daftar hasil penyimpangan dan daftar himpunan data individual dan metrik kolom.

Keterangan

Metode ini mengembalikan tuple hasil penyimpangan dan metrik untuk jendela waktu atau ID eksekusi berdasarkan jenis eksekusi: eksekusi adhoc, eksekusi terjadwal, dan eksekusi pengisian ulang.

  • Untuk mengambil hasil eksekusi adhoc, hanya ada satu cara: run_id harus berupa GUID yang valid.

  • Untuk mengambil hasil eksekusi terjadwal dan eksekusi pengisian ulang, ada dua cara berbeda: menetapkan GUID yang valid ke run_id atau menetapkan start_time dan/atau end_time tertentu (inklusif) sambil mempertahankan run_id sebagai Tidak ada.

  • Jika run_id, start_time, dan end_time bukan Tidak ada dalam pemanggilan metode yang sama, pengecualian validasi parameter akan muncul.

CATATAN: Tentukan parameter start_time dan end_time atau parameter run_id, tetapi tidak keduanya.

Ada kemungkinan bahwa ada beberapa hasil untuk tanggal target yang sama (tanggal target berarti tanggal mulai himpunan data target untuk penyimpangan berbasis himpunan data). Oleh karena itu, perlu untuk mengidentifikasi dan menangani hasil duplikat. Untuk penyimpangan berbasis himpunan data, jika hasilnya untuk tanggal target yang sama, maka hasil tersebut merupakan hasil duplikat. Metode get_output akan menghapus hasil duplikat dengan satu aturan: selalu ambil hasil terbaru yang dihasilkan.

Metode get_output dapat digunakan untuk mengambil semua output atau sebagian output dari eksekusi terjadwal dalam rentang waktu tertentu antara start_time dan end_time (termasuk batas). Anda juga dapat membatasi hasil adhoc individu dengan menentukan run_id.

Gunakan panduan berikut untuk membantu menginterpretasikan hasil yang dikembalikan dari metode get_output:

  • Prinsip pemfilteran adalah "tumpang tindih": selama ada tumpang tindih antara waktu hasil aktual (berbasis himpunan data: himpunan data target [tanggal mulai, tanggal selesai]) dan [start_time, end_time] yang diberikan, maka hasilnya akan diambil.

  • Jika ada beberapa output untuk satu tanggal target karena penghitungan penyimpangan dijalankan beberapa kali terhadap hari itu, maka hanya output terbaru yang akan dipilih secara default.

  • Mengingat ada beberapa jenis instans penyimpangan data, konten hasil dapat beragam.

Untuk hasil berbasis himpunan data, output akan terlihat seperti:


   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

Dapatkan daftar objek DataDriftDetector untuk ruang kerja yang ditentukan dan himpunan data opsional.

CATATAN: Hanya meneruskan parameter workspace akan mengembalikan semua objek DataDriftDetector, yang ditentukan di ruang kerja.

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

Parameter

Nama Deskripsi
workspace
Diperlukan

Ruang kerja tempat objek DataDriftDetector dibuat.

baseline_dataset

Himpunan data garis besar untuk memfilter daftar kembali.

Nilai default: None
target_dataset

Himpunan data target untuk memfilter daftar kembali.

Nilai default: None

Mengembalikan

Jenis Deskripsi

Daftar objek DataDriftDetector.

run

Jalankan analisis penyimpangan data satu titik dalam waktu.

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

Parameter

Nama Deskripsi
target_date
Diperlukan

Tanggal target penilaian data di UTC.

compute_target

Nama ComputeTarget atau ComputeTarget Azure Machine Learning opsional. Jika tidak ditentukan, target komputasi dibuat secara otomatis.

Nilai default: None
create_compute_target

Menunjukkan apakah target komputasi Azure Machine Learning dibuat secara otomatis.

Nilai default: False
feature_list

Fitur daftar putih opsional untuk menjalankan deteksi penyimpangan data.

Nilai default: None
drift_threshold

Ambang opsional untuk mengaktifkan peringatan DataDriftDetector.

Nilai default: None

Mengembalikan

Jenis Deskripsi
Run

Eksekusi DataDriftDetector.

show

Menampilkan tren penyimpangan data dalam rentang waktu tertentu.

Secara default, metode ini menunjukkan 10 siklus terbaru. Misalnya, jika frekuensi adalah hari, maka frekuensinya akan menjadi 10 hari terakhir. Jika frekuensi adalah minggu, maka frekuensinya akan menjadi 10 minggu terakhir.

show(start_time=None, end_time=None)

Parameter

Nama Deskripsi
start_time
datetime, <xref:optional>

Awal dari jendela waktu presentasi di UTC. Default Tidak ada berarti mengambil hasil siklus ke-10 terbaru.

Nilai default: None
end_time
datetime, <xref:optional>

Akhir dari jendela waktu data presentasi di UTC. Default Tidak ada berarti hari ini.

Nilai default: None

Mengembalikan

Jenis Deskripsi
dict()

Kamus semua angka. Kuncinya adalah service_name.

update

Perbarui jadwal yang terkait dengan objek DataDriftDetector.

Nilai parameter opsional dapat diatur ke None, jika tidak, nilai default ke nilai yang ada.

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

Parameter

Nama Deskripsi
compute_target

Nama ComputeTarget atau ComputeTarget Azure Machine Learning opsional. DataDriftDetector akan membuat target komputasi jika parameter ini tidak ditentukan.

Nilai default: Ellipsis
feature_list

Fitur yang masuk daftar putih untuk menjalankan deteksi penyimpangan data.

Nilai default: Ellipsis
schedule_start

Waktu mulai jadwal penyimpangan data di UTC.

Nilai default: Ellipsis
alert_config

Objek konfigurasi opsional untuk peringatan DataDriftDetector.

Nilai default: Ellipsis
drift_threshold

Ambang untuk mengaktifkan peringatan DataDriftDetector.

Nilai default: Ellipsis
wait_for_completion

Apakah akan menunggu operasi aktifkan/nonaktifkan/hapus selesai.

Nilai default: True

Mengembalikan

Jenis Deskripsi

self

Atribut

alert_config

Dapatkan konfigurasi peringatan untuk objek DataDriftDetector.

Mengembalikan

Jenis Deskripsi

Objek AlertConfiguration.

baseline_dataset

Dapatkan himpunan data garis besar yang terkait dengan objek DataDriftDetector.

Mengembalikan

Jenis Deskripsi

Jenis himpunan data dari himpunan data garis besar.

compute_target

Dapatkan target komputasi yang dilampirkan ke objek DataDriftDetector.

Mengembalikan

Jenis Deskripsi

Target komputasi.

drift_threshold

Dapatkan ambang penyimpangan untuk objek DataDriftDetector.

Mengembalikan

Jenis Deskripsi

Ambang penyimpangan.

drift_type

Dapatkan jenis DataDriftDetector, 'DatasetBased' adalah satu-satunya nilai yang didukung untuk saat ini.

Mengembalikan

Jenis Deskripsi
str

Jenis objek DataDriftDetector.

enabled

Dapatkan nilai boolean yang menunjukkan apakah objek DataDriftDetector diaktifkan.

Mengembalikan

Jenis Deskripsi

Nilai boolean; True untuk diaktifkan.

feature_list

Dapatkan daftar fitur yang masuk daftar putih untuk objek DataDriftDetector.

Mengembalikan

Jenis Deskripsi

Daftar nama fitur.

frequency

Dapatkan frekuensi jadwal DataDriftDetector.

Mengembalikan

Jenis Deskripsi
str

Untai "Hari", "Minggu", atau "Bulan"

interval

Dapatkan interval jadwal DataDriftDetector.

Mengembalikan

Jenis Deskripsi
int

Nilai bilangan bulat dari satuan waktu.

latency

Dapatkan latensi pekerjaan jadwal DataDriftDetector (dalam jam).

Mengembalikan

Jenis Deskripsi
int

Jumlah jam yang mewakili latensi.

name

Dapatkan nama objek DataDriftDetector.

Mengembalikan

Jenis Deskripsi
str

Nama DataDriftDetector.

schedule_start

Dapatkan waktu mulai dari jadwal.

Mengembalikan

Jenis Deskripsi

Objek tanggalwaktu dari jadwal waktu mulai di UTC.

state

Menunjukkan status jadwal DataDriftDetector.

Mengembalikan

Jenis Deskripsi
str

Salah satu dari 'Disabled', 'Enabled', 'Deleted', 'Disabling', 'Enabling', 'Deleting', 'Failed', 'DisableFailed', 'EnableFailed', 'DeleteFailed'.

target_dataset

Dapatkan himpunan data target yang terkait dengan objek DataDriftDetector.

Mengembalikan

Jenis Deskripsi

Jenis himpunan data dari himpunan data garis besar.

workspace

Dapatkan ruang kerja objek DataDriftDetector.

Mengembalikan

Jenis Deskripsi

Ruang kerja tempat objek DataDriftDetector dibuat.