Mesin Vektor Dukungan Dua Kelas

Membuat model klasifikasi biner menggunakan algoritma Support Vector Machine

Kategori: Pembelajaran Mesin / Inisialisasi Model / Klasifikasi

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 Mesin Vektor Dukungan Dua Kelas di Pembelajaran Mesin Studio (klasik), untuk membuat model yang didasarkan pada algoritma mesin vektor pendukung.

Komputer vektor pendukung (SVM) adalah kelas metode pembelajaran yang diawasi dengan baik. Implementasi khusus ini cocok untuk prediksi dua kemungkinan hasil, berdasarkan variabel berkelanjutan atau kategoris.

Setelah menentukan parameter model, latih model dengan menggunakan salah satu modul pelatihan, dan berikan himpunan data yang ditandai yang menyertakan label atau kolom hasil.

Selengkapnya tentang mesin vektor dukungan

Komputer vektor pendukung adalah salah satu algoritma pembelajaran mesin paling awal, dan model SVM telah digunakan dalam banyak aplikasi, dari pengambilan informasi hingga klasifikasi teks dan gambar. SVM dapat digunakan untuk tugas klasifikasi dan regresi.

Model SVM ini adalah model pembelajaran yang diawasi yang membutuhkan data berlabel. Dalam proses pelatihan, algoritma menganalisis data input dan mengenali pola dalam ruang fitur multi-dimensi yang disebut hyperplane. Semua contoh input ditunjukkan sebagai titik-titik dalam ruang ini, dan dipetakan ke kategori output sedemikian rupa sehingga kategori dibagi dengan lebar dan menghapus celah mungkin.

Untuk prediksi, algoritma SVM menetapkan contoh baru ke dalam satu kategori atau yang lain, memetakannya ke dalam ruang yang sama.

Cara mengkonfigurasi Two-Class Support Vector Machine

Untuk jenis model ini, disarankan agar Anda menormalkan himpunan data sebelum menggunakannya untuk melatih pengklasifikasi.

  1. Tambahkan modul Mesin Vektor Dukungan Dua Kelas ke eksperimen Anda di Studio (klasik).

  2. Tentukan bagaimana Anda ingin modul ini akan dilatih, dengan mengatur opsi Buat mode pelatih.

    • Satu Parameter: Jika mengetahui bagaimana Anda ingin mengonfigurasikan model, Anda dapat menyediakan kumpulan nilai tertentu sebagai argumen.

    • Rentang Parameter: Jika Anda tidak yakin dengan parameter terbaik, Anda dapat menemukan parameter optimal dengan menentukan beberapa nilai dan menggunakan modul Tune Model Hyperparameters untuk menemukan konfigurasi optimal. Pelatih berulang lebih dari beberapa kombinasi pengaturan dan menentukan kombinasi nilai yang menghasilkan model terbaik.

  3. Untuk Jumlah perulangan, ketikkan angka yang menunjukkan jumlah pengulangan yang digunakan saat membuat model.

    Parameter ini dapat digunakan untuk mengontrol pertukaran antara kecepatan dan akurasi pelatihan.

  4. Untuk Lambda, ketik nilai untuk digunakan sebagai bobot regularisasi L1.

    Koefisien regularisasi ini dapat digunakan untuk menyetel model. Nilai yang lebih besar memengaruhi model yang lebih kompleks.

  5. Pilih opsi, Normalisasi fitur, jika Anda ingin menormalkan fitur sebelum pelatihan.

    Jika Anda menerapkan normalisasi, sebelum pelatihan, titik data dipusatkan pada rerata dan diskalakan untuk memiliki satu unit simpangan baku.

  6. Pilih opsi, Proyek ke lingkup unit, untuk menormalkan koefisien.

    Memproyeksikan nilai ke ruang unit berarti bahwa sebelum pelatihan, titik data berpusat pada 0 dan diskalakan untuk memiliki satu unit simpangan baku.

  7. Dalam Seed angka acak, ketikkan nilai bilangan bulat untuk digunakan sebagai seed jika Anda ingin memastikan reproduksi di seluruh eksekusi. Jika tidak, nilai jam sistem digunakan sebagai seed, yang dapat menghasilkan hasil yang sedikit berbeda di seluruh eksekusi.

  8. Pilih opsi, Izinkan kategori tidak dikenal, untuk membuat grup untuk nilai yang tidak diketahui dalam kumpulan pelatihan atau validasi. Dalam hal ini, model mungkin kurang tepat untuk nilai yang diketahui, tetapi dapat memberikan prediksi yang lebih baik untuk nilai baru (tidak diketahui).

    Jika Anda membatalkan pilihannya, model hanya dapat menerima nilai yang terkandung dalam data pelatihan.

  9. Koneksi dataset berlabel, dan salah satu modul pelatihan:

    Catatan

    Jika Anda meneruskan rentang parameter ke Train Model, itu hanya akan menggunakan nilai pertama dalam daftar rentang parameter.

    Jika Anda meneruskan satu set nilai parameter ke modul Tune Model Hyperparameters , ketika mengharapkan berbagai pengaturan untuk setiap parameter, ia mengabaikan nilai dan menggunakan nilai default untuk pelajar.

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

  10. Jalankan eksperimen.

Hasil

Setelah pelatihan selesai:

  • Untuk melihat ringkasan parameter model, bersama dengan bobot fitur yang dipelajari dari pelatihan, , klik kanan output Train Model atau Tune Model Hyperparameters, dan pilih Visualisasikan.

  • Untuk menggunakan model terlatih untuk membuat prediksi, hubungkan model terlatih ke modul Model Skor .

  • Untuk melakukan validasi silang terhadap kumpulan data berlabel, hubungkan model yang tidak dibatasi dan himpunan data ke Model Validasi Silang.

Contoh

Untuk contoh bagaimana algoritme pembelajaran ini digunakan, lihat Galeri AI Azure:

Catatan teknis

Bagian ini berisi detail implementasi, tips, dan jawaban terkait pertanyaan yang sering diajukan.

Tips penggunaan

Untuk jenis model ini, disarankan agar Anda menormalkan himpunan data sebelum menggunakannya untuk melatih pengklasifikasi.

Meskipun penelitian terbaru telah mengembangkan algoritma yang memiliki akurasi lebih tinggi, algoritma ini dapat bekerja dengan baik pada kumpulan data sederhana ketika tujuan Anda adalah kecepatan akurasi. Jika Anda tidak mendapatkan hasil yang diinginkan dengan menggunakan Model Vektor Dukungan Dua Kelas, cobalah salah satu metode klasifikasi ini:

Parameter modul

Nama Rentang Jenis Default Deskripsi
Jumlah iterasi >=1 Bilangan bulat 1 Jumlah iterasi
Lambda >=ganda. Epsilon Mengambang 0.001 Berat untuk regularisasi L1. Menggunakan nilai non-nol menghindari overfitting model ke dataset pelatihan.
Menormalkan fitur Apa pun Boolean True Jika Benar, normalkan fitur.
Project ke unit-sphere Apa pun Boolean Salah Jika Benar, proyeksikan fitur ke lingkaran unit.
Benih angka acak Apa pun Bilangan bulat Benih untuk generator angka acak yang digunakan oleh model. Biarkan kosong untuk default.
Izinkan level kategoris yang tidak diketahui Apa pun Boolean True Jika Benar, buat level tambahan untuk setiap kolom kategoris. Setiap level dalam himpunan data pengujian yang tidak tersedia dalam himpunan data pelatihan dipetakan ke tingkat tambahan ini.

Output

Nama Jenis Deskripsi
Model tak terlatih Tabel Data Model klasifikasi biner yang tidak terlatih.

Lihat juga

Klasifikasi
Daftar Modul A-Z