Melatih Model Vowpal Wabbit

Artikel ini menjelaskan cara menggunakan komponen Melatih Model Vowpal Wabbit di perancang Azure Machine Learning, untuk membuat model pembelajaran mesin dengan menggunakan Vowpal Wabbit.

Untuk menggunakan Vowpal Wabbit untuk pembelajaran mesin, format input Anda sesuai dengan persyaratan Vowpal Wabbit, dan siapkan data dalam format yang diperlukan. Gunakan komponen ini untuk menentukan argumen baris perintah Vowpal Wabbit.

Ketika alur dijalankan, instans Vowpal Wabbit dimuat ke dalam run-time eksperimen, bersama dengan data yang ditentukan. Ketika pelatihan selesai, model diserialisasikan kembali ke ruang kerja. Anda dapat menggunakan model segera untuk menilai data.

Untuk melatih model yang ada secara bertahap pada data baru, sambungkan model yang disimpan ke port input Model Vowpal Wabbit yang Terlatih dari Melatih Model Vowpal Wabbit, dan tambahkan data baru ke port input lainnya.

Apa itu Vowpal Wabbit?

Vowpal Wabbit (VW) adalah kerangka kerja pembelajaran mesin paralel cepat yang dikembangkan untuk komputasi terdistribusi oleh Yahoo! Penelitian. Kemudian model pembelajaran mesin ini disesuaikan ke Windows dan diadaptasi oleh John Langford (Microsoft Research) untuk komputasi ilmiah dalam arsitektur paralel.

Fitur Vowpal Wabbit yang penting untuk pembelajaran mesin meliputi pembelajaran berkelanjutan (pembelajaran online), pengurangan dimensi, dan pembelajaran interaktif. Vowpal Wabbit juga merupakan solusi masalah ketika Anda tidak dapat memasukkan data model ke dalam memori.

Pengguna utama Vowpal Wabbit adalah para ilmuwan data yang sebelumnya telah menggunakan kerangka kerja untuk tugas pembelajaran mesin seperti klasifikasi, regresi, pemodelan topik atau faktorisasi matriks. Pembungkus Azure untuk Vowpal Wabbit memiliki karakteristik performa yang sangat mirip dengan versi lokal, sehingga Anda dapat menggunakan fitur canggih dan performa asli Vowpal Wabbit, dan dengan mudah menerbitkan model terlatih sebagai layanan yang dioperasionalkan.

Komponen Hashing Fitur juga menyertakan fungsionalitas yang disediakan oleh Vowpal Wabbit, yang memungkinkan Anda mengubah himpunan data teks menjadi fitur biner menggunakan algoritme hashing.

Cara mengonfigurasikan Model Wabbit Vowpal

Bagian ini menjelaskan cara melatih model baru, dan cara menambahkan data baru ke model yang sudah ada.

Tidak seperti komponen lain dalam perancang, komponen ini menentukan parameter komponen, dan melatih model. Jika Anda sudah memiliki model saat ini, Anda dapat menambahkannya sebagai input opsional, untuk melatih model secara bertahap.

Menyiapkan data input

Untuk melatih model menggunakan komponen ini, himpunan data input harus terdiri dari satu kolom teks dalam salah satu dari dua format yang didukung: SVMLight atau VW. Ini tidak berarti bahwa Vowpal Wabbit hanya menganalisis data teks, hanya saja fitur dan nilai harus disiapkan dalam format file teks yang diperlukan.

Data dapat dibaca dari dua jenis himpunan data, himpunan data file, atau himpunan data tabular. Kedua himpunan data ini harus berada dalam format SVMLight atau VW. Format data Vowpal Wabbit memiliki keunggulan bahwa ia tidak memerlukan format kolom, yang menghemat ruang saat berhadapan dengan data yang jarang. Untuk informasi selengkapnya tentang format ini, lihat halaman Wiki Vowpal Wabbit.

Membuat dan melatih model Vowpal Wabbit

  1. Tambahkan komponen Melatih Model Vowpal Wabbit ke eksperimen Anda.

  2. Tambahkan kumpulan data pelatihan dan sambungkan ke Data pelatihan. Jika kumpulan data pelatihan adalah direktori, yang berisi file data pelatihan, tentukan nama file data pelatihan dengan Nama file data pelatihan. Jika himpunan data pelatihan adalah file tunggal, biarkan Nama file data pelatihan kosong.

  3. Dalam kotak teks argumen VW, ketik argumen baris perintah untuk Vowpal Wabbit yang dapat dieksekusi.

    Misalnya, Anda dapat menmbahkan –l untuk menentukan tingkat pembelajaran, atau -b untuk menunjukkan jumlah bit hashing.

    Untuk informasi selengkapnya, lihat bagian parameter Vowpal Wabbit.

  4. Nama file data pelatihan: Ketik nama file yang berisi data input. Argumen ini hanya digunakan ketika himpunan data pelatihan adalah direktori.

  5. Tentukan jenis file: Tunjukkan format mana yang digunakan oleh data pelatihan Anda. Vowpal Wabbit mendukung dua format file input berikut:

    • VW mewakili format internal yang digunakan oleh Vowpal Wabbit. Lihat halaman wiki Vowpal Wabbit untuk mengetahui detailnya.
    • SVMLight adalah format yang digunakan oleh beberapa alat pembelajaran mesin lainnya.
  6. File model output yang dapat dibaca: pilih opsi jika Anda ingin komponen menyimpan model yang dapat dibaca ke rekaman pekerjaan. Argumen ini sesuai dengan --readable_model parameter di baris perintah VW.

  7. Output file hash terbalik: pilih opsi jika Anda ingin komponen menyimpan algoritme hash terbalik ke satu file dalam rekaman pekerjaan. Argumen ini sesuai dengan --invert_hash parameter di baris perintah VW.

  8. Kirim alur.

Melatih ulang model Vowpal Wabbit yang ada

Vowpal Wabbit mendukung pelatihan bertahap dengan menambahkan data baru ke model yang ada. Ada dua cara untuk mendapatkan model yang ada untuk pelatihan ulang:

  • Gunakan output dari komponen Melatih Model Vowpal Wabbit lainnya dalam alur yang sama.

  • Temukan model yang tersimpan di kategori Himpunan Data panel navigasi kiri perancang, dan seret ke dalam alur Anda.

  1. Tambahkan komponen Melatih Model Vowpal Wabbit ke alur Anda.

  2. Hubungkan model yang telah dilatih sebelumnya ke port input Model Vowpal Wabbit yang telah dilatih sebelumnya pada komponen.

  3. Hubungkan data pelatihan baru ke port input Data pelatihan komponen.

  4. Di panel parameter Melatih Model Vowpal Wabbit, tentukan format data pelatihan baru, dan juga nama file data pelatihan jika himpunan data input adalah direktori.

  5. Pilih opsi file model output yang dapat dibaca dan opsi Output file hash terbalik jika file yang sesuai perlu disimpan dalam rekaman pekerjaan.

  6. Kirim alur.

  7. Pilih komponen dan pilih Daftarkan himpunan data di bawah tab Outputs+logs di panel kanan, untuk mempertahankan model yang diperbarui di ruang kerja Azure Machine Learning Anda. Jika Anda tidak menentukan nama baru, model yang diperbarui akan menimpa model tersimpan yang sudah ada.

Hasil

Catatan

Jika Anda perlu menyebarkan model terlatih dalam perancang, pastikan bahwa Menilai Model Vowpal Wabbit bukan Model Skor terhubung ke input komponen Output Layanan Web dalam alur inferensi.

Catatan teknis

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

Keuntungan dari Vowpal Wabbit

Vowpal Wabbit memberikan pembelajaran yang sangat cepat melalui fitur non-linear seperti n-gram.

Vowpal Wabbit menggunakan teknik pembelajaran online seperti stochastic gradient descent (SGD) agar sesuai dengan model satu baris sekaligus. Dengan demikian model ini beriterasi sangat cepat atas data mentah dan dapat mengembangkan prediktor yang baik yang lebih cepat daripada kebanyakan model lainnya. Pendekatan ini juga menghindari harus membaca semua data pelatihan ke dalam memori.

Vowpal Wabbit mengonversi semua data menjadi hash, bukan hanya data teks tetapi variabel kategoris lainnya. Menggunakan hash membuat pencarian bobot regresi lebih efisien, yang sangat penting untuk penurunan gradien stokastik yang efektif.

Parameter yang didukung dan tidak didukung

Bagian ini menjelaskan dukungan untuk parameter baris perintah Vowpal Wabbit di perancang Azure Machine Learning.

Umumnya, semua kecuali set argumen terbatas didukung. Untuk daftar lengkap argumen, gunakan halaman wiki Vowpal Wabbit.

Parameter berikut ini tidak didukung:

  • Opsi input/output yang ditentukan dalam https://github.com/JohnLangford/vowpal_wabbit/wiki/Command-line-arguments

    Properti ini sudah dikonfigurasi secara otomatis oleh komponen.

  • Selain itu, opsi apa pun yang menghasilkan beberapa keluaran atau mengambil beberapa masukan tidak diizinkan. Ini termasuk --cbt , --lda , dan --wap .

  • Hanya algoritme pembelajaran yang diawasi yang didukung. Oleh karena itu, opsi ini tidak didukung: –active, --rank, --search etc.

Batasan

Karena tujuan layanan ini adalah untuk mendukung pengguna Vowpal Wabbit yang berpengalaman, data input harus disiapkan terlebih dahulu menggunakan format teks asli Vowpal Wabbit, daripada format himpunan data yang digunakan oleh komponen lain.

Langkah berikutnya

Lihat set komponen yang tersedia untuk Azure Machine Learning.