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.objectDataDriftDetector
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
|
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
|
ComputeTarget atau
str
Nama ComputeTarget atau ComputeTarget Azure Machine Learning opsional. DataDriftDetector akan membuat target komputasi jika tidak ditentukan. Nilai default: None
|
frequency
|
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 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
|
Penundaan dalam beberapa jam hingga data muncul di himpunan data. Nilai default: None
|
workspace
Diperlukan
|
Ruang kerja untuk membuat objek DataDriftDetector. |
name
Diperlukan
|
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
|
ComputeTarget atau
str
Nama ComputeTarget atau ComputeTarget Azure Machine Learning opsional. DataDriftDetector akan membuat target komputasi jika tidak ditentukan. |
frequency
Diperlukan
|
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 |
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
|
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:
- Untuk membuat objek DataDriftDetector berbasis himpunan data, gunakan create_from_datasets
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 |
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 |
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
|
ComputeTarget atau
str
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 |
---|---|
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
|
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
|
ComputeTarget atau
str
Nama ComputeTarget atau ComputeTarget Azure Machine Learning opsional. DataDriftDetector akan membuat target komputasi jika tidak ditentukan. Nilai default: None
|
frequency
|
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 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
|
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
|
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 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 menetapkanstart_time
dan/atauend_time
tertentu (inklusif) sambil mempertahankanrun_id
sebagai Tidak ada.Jika
run_id
,start_time
, danend_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
|
ComputeTarget atau
str
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 |
---|---|
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
|
ComputeTarget atau
str
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 |
---|---|
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 |
---|---|
Untai "Hari", "Minggu", atau "Bulan" |
interval
Dapatkan interval jadwal DataDriftDetector.
Mengembalikan
Jenis | Deskripsi |
---|---|
Nilai bilangan bulat dari satuan waktu. |
latency
Dapatkan latensi pekerjaan jadwal DataDriftDetector (dalam jam).
Mengembalikan
Jenis | Deskripsi |
---|---|
Jumlah jam yang mewakili latensi. |
name
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 |
---|---|
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. |