Bagikan melalui


Mesin Vektor Dukungan One-Class

Penting

Dukungan untuk Studio Azure Machine Learning (klasik) akan berakhir pada 31 Agustus 2024. Sebaiknya Anda transisi ke Azure Machine Learning sebelum tanggal tersebut.

Mulai 1 Desember 2021, Anda tidak akan dapat membuat sumber daya Studio Azure Machine Learning (klasik) baru. Hingga 31 Agustus 2024, Anda dapat terus menggunakan sumber daya Pembelajaran Mesin Studio (klasik) yang ada.

ML Dokumentasi Studio (klasik) sedang berhenti dan mungkin tidak diperbarui di masa mendatang.

Membuat model Mesin Vektor Dukungan satu kelas untuk deteksi anomali

Kategori: Deteksi Anomali

Catatan

Berlaku untuk: Pembelajaran Mesin Studio (klasik) saja

Modul drag-and-drop serupa tersedia di Azure Machine Learning desainer.

Ringkasan Modul

Artikel ini menjelaskan cara menggunakan modul Model Vektor Dukungan Satu Kelas di Pembelajaran Mesin Studio (klasik), untuk membuat model deteksi anomali.

Modul ini sangat berguna dalam skenario di mana Anda memiliki banyak data "normal" dan tidak banyak kasus anomali yang Anda coba deteksi. Misalnya, jika Anda perlu mendeteksi transaksi penipuan, Anda mungkin tidak memiliki banyak contoh penipuan yang dapat Anda gunakan untuk melatih model klasifikasi yang khas, tetapi Anda mungkin memiliki banyak contoh transaksi yang baik.

Anda menggunakan modul Model Vektor Dukungan Satu Kelas untuk membuat model, lalu melatih model menggunakan Model Deteksi Anomali Kereta. Himpunan data yang Anda gunakan untuk pelatihan dapat berisi semua atau sebagian besar kasus normal.

Anda kemudian dapat menerapkan metrik yang berbeda untuk mengidentifikasi potensi anomali. Misalnya, Anda dapat menggunakan kumpulan besar transaksi yang baik untuk mengidentifikasi kasus yang mungkin mewakili transaksi penipuan.

Lebih lanjut tentang SVM satu kelas

Mesin vektor pendukung (SVM) adalah model pembelajaran yang diawasi yang menganalisis data dan mengenali pola, dan yang dapat digunakan untuk tugas klasifikasi dan regresi.

Biasanya, algoritma SVM diberi satu set contoh pelatihan berlabel milik salah satu dari dua kelas. Model SVM didasarkan pada pembagian titik sampel pelatihan ke dalam kategori terpisah dengan celah selebar mungkin, sambil menghukum sampel pelatihan yang jatuh di sisi yang salah dari kesenjangan. Model SVM kemudian membuat prediksi dengan menetapkan titik ke satu sisi celah atau yang lain.

Terkadang oversampling digunakan untuk mereplikasi sampel yang ada sehingga Anda dapat membuat model dua kelas, tetapi tidak mungkin untuk memprediksi semua pola penipuan atau kesalahan sistem baru dari contoh terbatas. Selain itu, koleksi bahkan contoh terbatas bisa mahal.

Oleh karena itu, dalam SVM satu kelas, model vektor dukungan dilatih pada data yang hanya memiliki satu kelas, yang merupakan kelas "normal". Ini menyimpulkan sifat-sifat kasus normal dan dari sifat-sifat ini dapat memprediksi contoh mana yang tidak seperti contoh normal. Ini berguna untuk deteksi anomali karena kelangkaan contoh pelatihan adalah apa yang mendefinisikan anomali: yaitu, biasanya ada sangat sedikit contoh intrusi jaringan, penipuan, atau perilaku anomali lainnya.

Untuk informasi lebih lanjut, termasuk tautan ke penelitian dasar, lihat bagian Catatan teknis .

Catatan

Modul Model Vektor Dukungan Satu Kelas membuat model kernel-SVM, yang berarti tidak terlalu terukur. Jika waktu pelatihan terbatas, atau Anda memiliki terlalu banyak data, Anda dapat menggunakan metode lain untuk detektor anomali, seperti Deteksi Anomali Berbasis PCA.

Cara mengonfigurasi One-Class SVM

  1. Tambahkan modul Model Vektor Dukungan Satu Kelas ke eksperimen Anda di Studio (klasik). Anda dapat menemukan modul di bawah Pembelajaran Mesin - Inisialisasi, dalam kategori Deteksi Anomali.

  2. Klik ganda modul Model Vektor Dukungan Satu Kelas untuk membuka panel Properti .

  3. Untuk Membuat mode pelatih, pilih opsi yang menunjukkan bagaimana model harus dilatih:

    • Parameter Tunggal: Gunakan opsi ini jika Anda tahu bagaimana Anda ingin mengonfigurasi model, dan memberikan set nilai tertentu sebagai argumen.

    • Rentang Parameter: Gunakan opsi ini jika Anda tidak yakin dengan parameter terbaik, dan ingin melakukan sapuan parameter untuk menemukan konfigurasi optimal.

  4. η: Ketik nilai yang mewakili batas atas pada pecahan outlier. Parameter ini sesuai dengan properti nu yang dijelaskan dalam makalah ini. Properti nu memungkinkan Anda mengontrol trade-off antara outlier dan kasus normal.

  5. ε (epsilon): Ketik nilai yang akan digunakan sebagai toleransi berhenti. Toleransi berhenti, mempengaruhi jumlah iterasi yang digunakan saat mengoptimalkan model, dan tergantung pada nilai kriteria berhenti. Ketika nilai terlampaui, pelatih berhenti mengulangi pada solusi.

  6. Koneksi himpunan data pelatihan, dan salah satu modul pelatihan:

    Catatan

    Jika Anda melewati rentang parameter ke Train Anomaly Detection Model, ia hanya menggunakan nilai pertama dalam daftar rentang parameter.

    Jika Anda meneruskan satu set nilai parameter ke modul Tune Model Hyperparameters, saat mengharapkan rentang pengaturan untuk setiap parameter, ini mengabaikan nilai dan menggunakan nilai default untuk orang yang belajar.

    Jika Anda memilih opsi Rentang Parameter dan memasukkan satu nilai untuk parameter apa pun, nilai tunggal itu digunakan sepanjang sapuan, bahkan jika parameter lain berubah di berbagai nilai.

  7. Jalankan eksperimen.

Hasil

Modul mengembalikan model deteksi anomali terlatih. Anda dapat menyimpan model di ruang kerja Anda, atau Anda dapat menghubungkan modul Model Skor dan menggunakan model terlatih untuk mendeteksi kemungkinan anomali.

Jika Anda melatih model menggunakan sapuan parameter, catat pengaturan parameter optimal yang akan digunakan saat mengonfigurasi model untuk digunakan dalam produksi.

Contoh

Untuk contoh bagaimana modul ini digunakan dalam deteksi anomali, lihat Galeri AI Azure:

  • Deteksi Anomali: Risiko Kredit: Sampel ini menggambarkan cara mengetahui outlier dalam data, menggunakan sapuan parameter untuk menemukan model yang optimal. Kemudian menerapkan model itu ke data baru untuk mengidentifikasi transaksi berisiko yang mungkin mewakili penipuan, membandingkan dua model deteksi anomali yang berbeda.

Catatan teknis

Prediksi dari SVM Satu Kelas adalah skor yang tidak dikalibrasi yang mungkin tidak terbatas. Seperti yang ditunjukkan oleh contoh di Galeri Intelijen Cortana, pastikan untuk menormalkan skor jika Anda membandingkan model berdasarkan algoritma yang berbeda.

Penelitian

Implementasi ini membungkus perpustakaan untuk mesin vektor pendukung bernama libsvm. Teori umum yang libsvm didasarkan, dan pendekatan terhadap mesin vektor pendukung satu kelas, dijelaskan dalam makalah ini oleh B. Schӧlkopf et al.

Parameter modul

Nama Jenis Rentang Opsional Deskripsi Default
Membuat mode pelatih Buat Mode Pelatih Daftar:Parameter Tunggal| Rentang Parameter Diperlukan Parameter Tunggal Tentukan opsi pelajar.

Gunakan opsi SingleParameter untuk menentukan semua nilai secara manual.

Gunakan opsi ParameterRange untuk menyapu parameter yang dapat disetel.
Nu Mengambang >=ganda. Epsilon mode:Parameter Tunggal 0.1 Parameter ini (diwakili oleh huruf Yunani nu) menentukan trade-off antara fraksi outlier dan jumlah vektor pendukung.
Epsilon Mengambang >=ganda. Epsilon mode:Parameter Tunggal 0.001 Menentukan toleransi berhenti.
psnu ParameterRangeSettings [0.001;1.0] mode:Rentang Parameter 0.001; 0.01; 0.1 Menentukan kisaran untuk trade-off antara fraksi outlier dan jumlah vektor dukungan.
psEpsilon ParameterRangeSettings [1e-6;1.0] mode:Rentang Parameter 0.001; 0.01; 0.1 Menentukan rentang untuk menghentikan toleransi.

Output

Nama Jenis Deskripsi
Model tak terlatih Antarmuka ILearner Model deteksi anomali yang tidak terlatih

Lihat juga

Klasifikasi
Melatih Model Deteksi Anomali