Multikelas Satu-vs-Semua

Artikel ini menjelaskan cara menggunakan komponen Multikelas Satu-vs-Semua di perancang Azure Machine Learning. Tujuan artikel ini adalah untuk membuat model klasifikasi yang dapat memprediksi beberapa kelas, dengan menggunakan pendekatan satu-versus-semua.

Komponen ini berguna untuk membuat model yang memprediksi tiga atau lebih hasil yang mungkin muncul, ketika hasilnya bergantung pada variabel prediktor berkelanjutan atau kategoris. Metode ini juga memungkinkan Anda menggunakan metode klasifikasi biner untuk masalah yang memerlukan beberapa kelas output.

Selengkapnya tentang model satu-versus-semua

Beberapa algoritma klasifikasi mengizinkan penggunaan lebih dari dua kelas berdasarkan desain. Beberapa algoritma lain membatasi kemungkinan hasil ke satu dari dua nilai (model biner atau dua kelas). Namun demikian, algoritma klasifikasi biner dapat diadaptasi untuk tugas klasifikasi multi-kelas melalui berbagai strategi.

Komponen ini mengimplementasikan metode satu vs semua, di mana model biner dibuat untuk masing-masing dari beberapa kelas output. Komponen menilai masing-masing model biner ini untuk masing-masing kelas terhadap pelengkapnya (semua kelas lain dalam model) seolah-olah itu adalah masalah klasifikasi biner. Selain efisiensi komputasinya (hanya pengklasifikasi n_classes yang diperlukan), salah satu keuntungan dari pendekatan ini adalah kemampuan interpretasinya. Karena setiap kelas diwakili oleh satu pengklasifikasi saja, Anda dapat memperoleh pengetahuan tentang kelas dengan memeriksa pengklasifikasi yang sesuai. Ini adalah strategi yang paling umum digunakan untuk klasifikasi multikelas dan pilihan default yang wajar. Komponen kemudian melakukan prediksi dengan menjalankan pengklasifikasi biner ini dan memilih prediksi dengan skor keyakinan tertinggi.

Intinya, komponen membuat ansambel masing-masing model dan kemudian menggabungkan hasilnya, untuk membuat model tunggal yang memprediksi semua kelas. Pengklasifikasi biner apa pun dapat digunakan sebagai dasar model satu-versus-semua.

Misalnya, Anda mengonfigurasi model Mesin Vektor Dukungan Dua Kelas dan menyediakannya sebagai input ke komponen Multikelas Satu-vs-Semua. Komponen akan membuat model mesin vektor dukungan dua kelas untuk semua anggota kelas output. Kemudian modul akan menerapkan metode satu-versus-semua untuk menggabungkan hasil dari semua kelas.

Komponen menggunakan OneVsRestClassifier dari sklearn, dan Anda dapat mempelajari detail selengkapnya di sini.

Cara mengonfigurasi pengklasifikasi Multikelas Satu-vs-Semua

Komponen ini membuat ansambel model klasifikasi biner untuk menganalisis beberapa kelas. Untuk menggunakan komponen ini, Anda harus mengonfigurasi dan melatih model klasifikasi biner terlebih dahulu.

Anda menghubungkan model biner ke komponen Multikelas Satu-vs-Semua. Latih kumpulan model menggunakan Latih Model dengan himpunan data pelatihan berlabel.

Saat Anda menggabungkan model, Multikelas Satu-vs-Semua membuat beberapa model klasifikasi biner, mengoptimalkan algoritma untuk setiap kelas, dan kemudian menggabungkan model. Komponen melakukan tugas ini meskipun himpunan data pelatihan mungkin memiliki beberapa nilai kelas.

  1. Tambahkan komponen Multikelas Satu-vs-Semua ke alur Anda di perancang. Anda dapat menemukan komponen ini pada Pembelajaran Mesin - Inisialisasi, dalam kategori Klasifikasi.

    Pengklasifikasi Multikelas Satu-vs-Semua tidak memiliki parameter yang dapat dikonfigurasi dengan sendirinya. Penyesuaian apa pun harus dilakukan dalam model klasifikasi biner yang disediakan sebagai input.

  2. Tambahkan model klasifikasi biner ke alur, lalu konfigurasikan model tersebut. Misalnya, Anda dapat menggunakan Mesin Vektor Dukungan Dua Kelas atau Pohon Keputusan Dua Kelas yang Ditingkatkan.

  3. Tambahkan komponen Latih Model ke alur Anda. Sambungkan pengklasifikasi tidak terlatih yang merupakan output dari Multikelas Satu-vs-Semua.

  4. Pada input Latih Model lain, sambungkan himpunan data terlatih berlabel yang memiliki beberapa nilai kelas.

  5. Kirimkan alur.

Hasil

Setelah pelatihan selesai, Anda dapat menggunakan model ini untuk membuat prediksi multikelas.

Atau, Anda dapat meneruskan pengklasifikasi tidak terlatih ke Model Validasi Silang untuk validasi silang dengan himpunan data validasi berlabel.

Langkah berikutnya

Lihat set komponen yang tersedia untuk Azure Machine Learning.