Pemantauan model Azure Pembelajaran Mesin
Pemantauan model adalah langkah terakhir dalam siklus hidup end-to-end pembelajaran mesin. Langkah ini melacak performa model dalam produksi dan menganalisis performa dari ilmu data dan perspektif operasional. Dalam artikel ini, Anda mempelajari tentang pemantauan model di Azure Pembelajaran Mesin, sinyal dan metrik yang dapat Anda pantau, dan praktik yang direkomendasikan untuk pemantauan model.
Tidak seperti sistem perangkat lunak tradisional, perilaku sistem pembelajaran mesin tidak hanya bergantung pada aturan yang ditentukan dalam kode, tetapi juga dipelajari dari data. Perubahan distribusi data, kecondongan penyajian pelatihan, masalah kualitas data, pergeseran lingkungan, dan perubahan perilaku konsumen semuanya dapat menyebabkan model menjadi basi.
Ketika model menjadi basi, performanya dapat menurun ke titik bahwa model gagal menambahkan nilai bisnis atau mulai menyebabkan masalah kepatuhan serius di lingkungan yang sangat diatur. Oleh karena itu, penting untuk memantau performa model.
Cara kerja pemantauan model Azure Pembelajaran Mesin
Untuk menerapkan pemantauan, Azure Pembelajaran Mesin memperoleh sinyal pemantauan dengan melakukan komputasi statistik pada data inferensi produksi yang dialirkan dan data referensi. Data inferensi produksi mengacu pada data input dan output model yang dikumpulkan dalam produksi. Data referensi dapat berupa data pelatihan historis, validasi, atau kebenaran dasar.
Penting
Pemantauan model Azure Pembelajaran Mesin hanya mendukung autentikasi berbasis kredensial, seperti token Tanda Tangan Akses Bersama (SAS), untuk mengakses data yang terkandung dalam penyimpanan data. Untuk mempelajari selengkapnya tentang penyimpanan data dan mode autentikasi, lihat Administrasi data.
Setiap sinyal pemantauan memiliki satu atau beberapa metrik. Anda dapat mengatur ambang batas untuk metrik ini untuk memicu pemberitahuan tentang anomali model atau data melalui Azure Pembelajaran Mesin atau Azure Event Grid. Saat menerima pemberitahuan, Anda dapat menggunakan studio Azure Pembelajaran Mesin untuk menganalisis atau memecahkan masalah sinyal pemantauan untuk peningkatan kualitas model berkelanjutan.
Azure Pembelajaran Mesin menggunakan proses berikut untuk menangani sinyal pemantauan bawaan, seperti penyimpangan data, untuk model dalam produksi:
Pertama, Azure Pembelajaran Mesin menghitung distribusi statistik nilai fitur dalam data pelatihan. Distribusi ini adalah distribusi dasar untuk fitur tersebut.
Selanjutnya, Azure Pembelajaran Mesin menghitung distribusi statistik nilai terbaru fitur yang dicatat dalam produksi.
Azure Pembelajaran Mesin kemudian melakukan pengujian statistik atau menghitung skor jarak untuk membandingkan distribusi nilai terbaru fitur dalam produksi dengan distribusi garis besar. Jika statistik pengujian atau skor jarak antara kedua distribusi melebihi ambang batas yang ditentukan pengguna, Azure Pembelajaran Mesin mengidentifikasi anomali dan memberi tahu pengguna.
Menyiapkan dan menggunakan pemantauan model
Untuk menggunakan pemantauan model di Azure Pembelajaran Mesin:
Pertama, aktifkan pengumpulan data inferensi produksi.
- Jika Anda menyebarkan model ke titik akhir online Azure Pembelajaran Mesin, Anda dapat mengaktifkan pengumpulan data inferensi produksi dengan menggunakan pengumpulan data model Azure Pembelajaran Mesin.
- Jika Anda menyebarkan model di luar Azure Pembelajaran Mesin atau ke titik akhir batch Azure Pembelajaran Mesin, Anda bertanggung jawab untuk mengumpulkan data inferensi produksi yang kemudian dapat Anda gunakan untuk pemantauan model Azure Pembelajaran Mesin.
Selanjutnya, siapkan pemantauan model. Anda dapat menggunakan Azure Pembelajaran Mesin SDK/CLI 2.0 atau UI studio untuk menyiapkan pemantauan model dengan mudah. Selama penyiapan, Anda dapat menentukan sinyal pemantauan pilihan Anda dan menyesuaikan metrik dan ambang batas untuk setiap sinyal.
Terakhir, lihat dan analisis hasil pemantauan model. Setelah Anda menyiapkan pemantauan model, Azure Pembelajaran Mesin menjalankan pekerjaan pemantauan pada jadwal yang Ditentukan. Setiap eksekusi menghitung dan mengevaluasi metrik untuk semua sinyal pemantauan yang dipilih dan memicu pemberitahuan pemberitahuan ketika ambang batas yang ditentukan terlampaui. Anda dapat mengikuti tautan di pemberitahuan pemberitahuan untuk melihat dan menganalisis hasil pemantauan di ruang kerja Azure Pembelajaran Mesin Anda.
Kemampuan pemantauan model
Azure Pembelajaran Mesin menyediakan kemampuan berikut untuk pemantauan model berkelanjutan:
- Sinyal pemantauan bawaan untuk data tabular, termasuk penyimpangan data, penyimpangan prediksi, kualitas data, penyimpangan atribusi fitur, dan performa model.
- Pemantauan model siap pakai untuk titik akhir online. Jika Anda menyebarkan model ke produksi di titik akhir online, Azure Pembelajaran Mesin mengumpulkan data inferensi produksi secara otomatis dan menggunakannya untuk pemantauan berkelanjutan.
- Beberapa sinyal pemantauan dalam satu penyiapan pemantauan. Untuk setiap sinyal pemantauan, Anda dapat memilih metrik dan ambang pemberitahuan pilihan Anda.
- Pilihan data referensi untuk perbandingan. Untuk sinyal pemantauan, Anda dapat mengatur data referensi menggunakan data pelatihan atau data produksi sebelumnya.
- Fitur N teratas untuk penyimpangan data atau pemantauan kualitas data. Jika Anda menggunakan data pelatihan sebagai data referensi, Anda dapat menentukan penyimpangan data atau sinyal kualitas data yang berlapis atas kepentingan fitur.
- Kemampuan untuk menentukan sinyal pemantauan kustom. Jika sinyal pemantauan bawaan tidak cocok untuk skenario bisnis Anda, Anda dapat menentukan sinyal pemantauan Anda sendiri dengan komponen sinyal pemantauan kustom.
- Fleksibilitas untuk menggunakan data inferensi produksi dari sumber apa pun. Jika Anda menyebarkan model di luar Azure Pembelajaran Mesin atau menyebarkan model ke titik akhir batch, Anda masih dapat mengumpulkan data inferensi produksi sendiri untuk digunakan dalam pemantauan model Azure Pembelajaran Mesin.
Praktik terbaik untuk pemantauan model
Setiap model pembelajaran mesin dan kasus penggunaannya unik. Oleh karena itu, pemantauan model unik untuk setiap situasi. Daftar berikut ini menjelaskan praktik terbaik yang direkomendasikan untuk pemantauan model.
- Mulai pemantauan model segera setelah Anda menyebarkan model ke produksi.
- Bekerja dengan ilmuwan data yang terbiasa dengan model untuk menyiapkan pemantauan. Ilmuwan data yang memiliki wawasan tentang model dan kasus penggunaannya dapat merekomendasikan sinyal dan metrik pemantauan dan mengatur ambang pemberitahuan yang tepat untuk setiap metrik untuk menghindari kelelahan pemberitahuan.
- Sertakan beberapa sinyal pemantauan dalam penyiapan Anda. Dengan beberapa sinyal pemantauan, Anda mendapatkan tampilan pemantauan yang luas dan terperinci. Misalnya, Anda dapat menggabungkan drift data dan sinyal penyimpangan atribusi fitur untuk mendapatkan peringatan dini tentang masalah performa model.
- Gunakan data referensi yang sesuai sebagai garis besar perbandingan. Untuk data referensi yang digunakan sebagai garis besar perbandingan, Anda dapat menggunakan data produksi atau data historis sebelumnya baru-baru ini, seperti data pelatihan atau validasi. Untuk perbandingan yang lebih bermakna, gunakan data pelatihan sebagai garis besar perbandingan untuk penyimpangan data dan kualitas data. Gunakan data validasi sebagai garis besar perbandingan untuk penyimpangan prediksi.
- Tentukan frekuensi pemantauan berdasarkan pertumbuhan data produksi dari waktu ke waktu. Misalnya, jika model produksi Anda memiliki lalu lintas harian yang padat dan akumulasi data harian cukup, atur frekuensi pemantauan ke harian. Jika tidak, pertimbangkan frekuensi pemantauan mingguan atau bulanan berdasarkan pertumbuhan data produksi Anda dari waktu ke waktu.
- Pantau fitur N teratas atau subset fitur. Jika Anda menggunakan data pelatihan sebagai garis besar perbandingan, Anda dapat dengan mudah mengonfigurasi pemantauan penyimpangan data atau pemantauan kualitas data untuk fitur penting N teratas. Untuk model yang memiliki sejumlah besar fitur, pertimbangkan untuk memantau subset fitur tersebut untuk mengurangi biaya komputasi dan memantau kebisingan.
- Gunakan sinyal performa model saat Anda memiliki akses ke data kebenaran dasar. Jika Anda memiliki akses ke data kebenaran dasar, juga disebut aktual, berdasarkan aplikasi pembelajaran mesin Anda, gunakan sinyal performa model untuk membandingkan data kebenaran dasar dengan output model. Perbandingan ini memberikan tampilan objektif performa model dalam produksi.
Ukuran dan offset jendela lookback
Ukuran jendela lookback adalah durasi waktu dalam format ISO 8601 untuk jendela data produksi atau referensi Anda. Offset jendela lookback adalah durasi waktu untuk mengimbangi akhir jendela data Anda sejak tanggal eksekusi pemantauan Anda.
Misalnya, model Anda dalam produksi memiliki monitor yang diatur untuk berjalan pada 31 Januari pukul 15.15 UTC. Ukuran P7D
jendela lookback data produksi atau tujuh hari dan offset P0D
jendela lookback data atau nol hari berarti monitor menggunakan data produksi dari 24 Januari pukul 15.15 UTC hingga 31 Januari pukul 15.15 UTC, waktu monitor Anda berjalan.
Untuk data referensi, jika Anda mengatur offset jendela lookback ke P7D
atau tujuh hari, jendela data referensi berakhir tepat sebelum jendela data produksi dimulai, sehingga tidak ada tumpang tindih. Anda kemudian dapat mengatur ukuran jendela lookback data referensi Anda menjadi sebesar yang Anda inginkan.
Misalnya, jika Anda mengatur ukuran jendela lookback data referensi ke P24D
atau 24 hari, jendela data referensi menyertakan data dari 1 Januari pukul 15.15 UTC hingga 24 Januari pukul 15.15 UTC. Diagram berikut mengilustrasikan contoh ini.
Dalam beberapa kasus, mungkin berguna untuk mengatur offset jendela lookback untuk data produksi Anda ke angka yang lebih besar dari nol hari. Misalnya, jika monitor Anda dijadwalkan untuk berjalan setiap minggu pada hari Senin pukul 15.15 UTC, tetapi Anda tidak ingin menggunakan data dari akhir pekan dalam eksekusi pemantauan, Anda dapat menggunakan ukuran P5D
jendela lookback atau lima hari dan offset jendela lookback selama P2D
atau dua hari. Jendela data Anda kemudian dimulai pada hari Senin sebelumnya pada pukul 15.15 UTC dan berakhir pada hari Jumat pukul 15.15 UTC.
Dalam praktiknya, Anda harus memastikan bahwa jendela data referensi dan jendela data produksi tidak tumpang tindih. Seperti yang ditunjukkan pada gambar berikut, Anda dapat memastikan jendela yang tidak tumpang tindih dengan memastikan bahwa offset jendela lookback data referensi, P10D
atau 10 hari dalam contoh ini, lebih besar atau sama dengan jumlah ukuran jendela lookback data produksi dan offset jendela lookback-nya, total tujuh hari dalam contoh ini.
Dengan pemantauan model Azure Pembelajaran Mesin, Anda dapat menggunakan default cerdas untuk ukuran jendela lookback dan offset jendela lookback, atau Anda dapat menyesuaikannya untuk memenuhi kebutuhan Anda. Jendela bergulir dan jendela tetap didukung.
Menyesuaikan ukuran jendela lookback
Anda memiliki fleksibilitas untuk memilih ukuran jendela lookback untuk data produksi dan data referensi.
Secara default, ukuran jendela lookback untuk data produksi adalah frekuensi pemantauan Anda. Semua data yang dikumpulkan dalam periode pemantauan sebelum pekerjaan pemantauan berjalan disertakan dalam jendela lookback. Anda dapat menggunakan
production_data.data_window.lookback_window_size
properti untuk menyesuaikan jendela data bergulir untuk data produksi.Secara default, jendela lookback untuk data referensi adalah himpunan data lengkap. Anda dapat menggunakan
reference_data.data_window.lookback_window_size
properti untuk menyesuaikan ukuran jendela lookback referensi.
Untuk menentukan jendela data tetap untuk data referensi, gunakan properti reference_data.data_window.window_start_date
dan reference_data.data_window.window_end_date
.
Mengkustomisasi offset jendela lookback
Anda memiliki fleksibilitas untuk memilih offset jendela lookback untuk jendela data Anda untuk data produksi dan data referensi. Anda dapat menggunakan offset untuk kontrol terperinci atas data yang digunakan monitor Anda. Offset hanya berlaku untuk jendela data bergulir.
Secara default, offset untuk data produksi adalah
P0D
atau nol hari. Anda dapat mengubah offset ini denganproduction_data.data_window.lookback_window_offset
properti .Secara default, offset untuk data referensi adalah dua kali lipat
production_data.data_window.lookback_window_size
. Pengaturan ini memastikan bahwa ada cukup data referensi untuk hasil pemantauan yang bermakna secara statistik. Anda dapat mengubah offset ini denganreference_data.data_window.lookback_window_offset
properti .
Memantau sinyal dan metrik
Pemantauan model Azure Pembelajaran Mesin mendukung sinyal dan metrik pemantauan berikut.
Penting
Item yang ditandai (pratinjau) dalam artikel ini sedang dalam pratinjau publik. Versi pratinjau disediakan tanpa perjanjian tingkat layanan, dan tidak disarankan untuk beban kerja produksi. Fitur tertentu mungkin tidak didukung atau mungkin memiliki kemampuan terbatas. Untuk mengetahui informasi selengkapnya, lihat Ketentuan Penggunaan Tambahan untuk Pratinjau Microsoft Azure.
Sinyal pemantauan | Deskripsi | Metrik | Tugas model atau format data yang didukung | Data produksi | Data referensi |
---|---|---|---|---|---|
Penyimpangan data | Melacak perubahan dalam distribusi data input model dengan membandingkan distribusi dengan data pelatihan model atau data produksi terbaru. | Jarak Jensen-Shannon, Indeks Stabilitas Populasi, Jarak Wasserstein Yang Dinormalisasi, Uji Kolmogorov-Smirnov Dua Sampel, Uji Chi-Squared Pearson | Klasifikasi (data tabular), Regresi (data tabular) | Data produksi: Input model | Data produksi atau data pelatihan terbaru |
Penyimpangan prediksi | Melacak perubahan dalam distribusi output model yang diprediksi dengan membandingkan distribusi dengan data validasi, data pengujian berlabel, atau data produksi terbaru. | Jarak Jensen-Shannon, Indeks Stabilitas Populasi, Jarak Wasserstein yang Dinormalisasi, Jarak Chebyshev, Uji Kolmogorov-Smirnov Dua Sampel, Tes Chi-Squared Pearson | Klasifikasi (data tabular), Regresi (data tabular) | Data produksi: Output model | Data produksi atau data validasi terbaru |
Kualitas data | Melacak integritas data input model dengan membandingkannya dengan data pelatihan model atau data produksi terbaru. Pemeriksaan kualitas data termasuk memeriksa nilai null, ketidakcocokan jenis, atau nilai di luar batas. | Tingkat nilai null, Tingkat kesalahan jenis data, Tingkat di luar batas | Klasifikasi (data tabular), Regresi (data tabular) | Data produksi: Input model | Data produksi atau data pelatihan terbaru |
Penyimpangan atribusi fitur (pratinjau) | Berdasarkan kontribusi fitur terhadap prediksi, juga dikenal sebagai kepentingan fitur. Penyimpangan atribusi fitur melacak kepentingan fitur selama produksi dengan membandingkannya dengan kepentingan fitur selama pelatihan. | Keuntungan kumulatif diskon yang dinormalisasi | Klasifikasi (data tabular), Regresi (data tabular) | Data produksi: Input dan output model | Data pelatihan (diperlukan) |
Performa model: Klasifikasi (pratinjau) | Melacak performa objektif output model dalam produksi dengan membandingkannya dengan data kebenaran dasar yang dikumpulkan. | Akurasi, Presisi, dan Pengenalan | Klasifikasi (data tabular) | Data produksi: Output model | Data kebenaran dasar (diperlukan) |
Performa model: Regresi (pratinjau) | Melacak performa objektif output model dalam produksi dengan membandingkannya dengan data kebenaran dasar yang dikumpulkan. | Kesalahan Absolut Rata-Rata (MAE), Kesalahan Kuadrat Rata-Rata (MSE), Kesalahan Kuadrat Rata-Rata Akar (RMSE) | Regresi (data tabular) | Data produksi: Output model | Data kebenaran dasar (diperlukan) |
AI Generatif: Keamanan dan kualitas generasi (pratinjau) | Mengevaluasi aplikasi AI generatif untuk keamanan dan kualitas, menggunakan metrik yang dibantu GPT. | Groundedness, Relevansi, Kefasihan, Kesamaan, Koherensi | Pertanyaan & Jawaban | Templat perintah, penyelesaian, konteks, dan anotasi | T/A |
Metrik kualitas data
Sinyal pemantauan kualitas data melacak integritas data input model dengan menghitung tiga metrik berikut:
- Laju nilai null
- Tingkat kesalahan jenis data
- Laju di luar batas
Pemantauan model Azure Pembelajaran Mesin mendukung presisi hingga 0,00001 untuk perhitungan tingkat nilai null, tingkat kesalahan jenis data, dan tingkat di luar batas.
Laju nilai null
Laju nilai null adalah laju nilai null dalam input model untuk setiap fitur. Misalnya, jika jendela data produksi pemantauan berisi 100 baris, dan nilai untuk temperature
fitur tersebut null untuk 10 baris tersebut, tingkat nilai null adalah temperature
10%.
Azure Pembelajaran Mesin mendukung pengkalkulasian laju nilai null untuk semua jenis data fitur.
Tingkat kesalahan jenis data
Selama setiap pemantauan berjalan, pemantauan model Azure Pembelajaran Mesin menyimpulkan jenis data untuk setiap fitur dari data referensi. Tingkat kesalahan jenis data adalah tingkat perbedaan jenis data antara jendela data produksi saat ini dan data referensi.
Misalnya, jika jenis data untuk temperature
fitur disimpulkan berasal IntegerType
dari data referensi, tetapi di jendela data produksi, 10 dari 100 nilai untuk temperature
bukan IntegerType
tetapi merupakan string, tingkat kesalahan jenis data adalah temperature
10%.
Azure Pembelajaran Mesin mendukung pengkalkulasian tingkat kesalahan jenis data untuk jenis data berikut yang tersedia di PySpark: ShortType
, , , BooleanType
BinaryType
DoubleType
, TimestampType
, StringType
, IntegerType
, , FloatType
, ByteType
, , LongType
, dan .DateType
Jika jenis data untuk fitur tidak ada dalam daftar ini, pemantauan model Azure Pembelajaran Mesin masih berjalan, tetapi tidak menghitung tingkat kesalahan jenis data untuk fitur tersebut.
Laju di luar batas
Selama setiap pemantauan berjalan, pemantauan model Azure Pembelajaran Mesin menentukan rentang yang dapat diterima atau diatur untuk setiap fitur dari data referensi. Laju di luar batas adalah laju nilai untuk setiap fitur yang berada di luar rentang atau set yang sesuai yang ditentukan oleh data referensi.
- Untuk fitur numerik, rentang yang sesuai adalah interval numerik antara nilai minimum dan maksimum dalam himpunan data referensi, seperti
[0, 100]
. - Untuk fitur kategoris, seperti
color
, rentang yang sesuai adalah sekumpulan semua nilai yang terkandung dalam himpunan data referensi, seperti[red, yellow, green]
.
Misalnya, jika Anda memiliki fitur numerik temperature
di mana semua nilai dalam himpunan data referensi berada dalam rentang [37, 77]
, tetapi 10 dari 100 nilai untuk temperature
di jendela data produksi berada di luar rentang [37, 77]
, tingkat di luar batas untuk temperature
adalah 10%.
Azure Pembelajaran Mesin mendukung pengkalkulasian laju di luar batas untuk jenis data berikut yang tersedia di PySpark: StringType
, , IntegerType
DoubleType
, ByteType
, LongType
, dan FloatType
. Jika jenis data untuk fitur tidak ada dalam daftar ini, pemantauan model Azure Pembelajaran Mesin masih berjalan, tetapi tidak menghitung laju di luar batas untuk fitur tersebut.
Integrasi pemantauan model dengan Azure Event Grid
Anda dapat menggunakan peristiwa yang dihasilkan oleh Azure Pembelajaran Mesin model pemantauan berjalan untuk menyiapkan aplikasi berbasis peristiwa, proses, atau alur kerja integrasi berkelanjutan/pengiriman berkelanjutan (CI/CD) dengan Azure Event Grid. Saat pemantau model mendeteksi penyimpangan, masalah kualitas data, atau penurunan performa model, Anda dapat melacak peristiwa ini dengan Event Grid dan mengambil tindakan secara terprogram.
Misalnya, jika akurasi model klasifikasi Anda dalam penurunan produksi di bawah ambang batas tertentu, Anda dapat menggunakan Event Grid untuk memulai pekerjaan pelatihan ulang yang menggunakan data kebenaran dasar yang dikumpulkan. Untuk mempelajari cara mengintegrasikan Azure Pembelajaran Mesin dengan Event Grid, lihat Memantau performa model yang disebarkan ke produksi.