Bagikan melalui


Regresi Kuantil Hutan Cepat

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 regresi kuanttil

Kategori: Pembelajaran Mesin / Inisialisasi Model / Regresi

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 Regresi Kuanttil Hutan Cepat di Pembelajaran Mesin Studio (klasik), untuk membuat model regresi yang dapat memprediksi nilai untuk sejumlah kuanttil tertentu.

Regresi kuanttil berguna jika Anda ingin memahami lebih lanjut tentang distribusi nilai yang diprediksi, daripada mendapatkan nilai prediksi rata-rata tunggal. Metode ini memiliki banyak aplikasi, termasuk:

  • Memprediksi harga

  • Memperkirakan performa siswa atau menerapkan grafik pertumbuhan untuk menilai perkembangan anak

  • Menemukan hubungan prediktif dalam kasus di mana hanya ada hubungan lemah antar variabel

Algoritma regresi ini adalah metode pembelajaran yang diawasi, yang berarti ini memerlukan himpunan data dengan tag yang menyertakan kolom label. Karena ini adalah algoritma regresi, kolom label harus hanya berisi nilai numerik.

Lebih lanjut tentang regresi kuantil

Terdapat banyak jenis regresi yang berbeda. Dalam arti yang paling dasar, regresi berarti memasang model ke target yang dinyatakan sebagai vektor numerik. Namun, ahli statistik telah mengembangkan metode untuk regresi yang semakin maju.

Definisi paling sederhana dari kuantil adalah nilai yang membagi set data menjadi grup berukuran sama; dengan demikian, nilai kuantitatif menandai batas antar grup. Secara statistik, kuantil adalah nilai yang diambil pada interval berkala dari inversi fungsi distribusi kumulatif (CDF) dari variabel acak.

Sedangkan model regresi linear mencoba untuk memprediksi nilai variabel numerik menggunakan perkiraan tunggal, rata-rata, kadang-kadang Anda perlu memprediksi rentang atau seluruh distribusi variabel target. Teknik seperti regresi Bayesian dan regresi kuantil telah dikembangkan untuk tujuan ini.

Regresi kuantil membantu Anda memahami distribusi nilai yang diprediksi. Model regresi kuantil berbasis pohon, seperti yang digunakan dalam modul ini, memiliki keuntungan tambahan untuk dapat digunakan dalam memprediksi distribusi non-parametrik.

Untuk detail dan sumber daya implementasi tambahan, lihat bagian Catatan Teknis .

Cara mengonfigurasi Regresi Kuanttil Fast_Forest

Anda mengonfigurasi properti model regresi menggunakan modul ini, lalu melatihnya menggunakan salah satu modul pelatihan.

Langkah-langkah konfigurasi sangat berbeda tergantung pada apakah Anda menyediakan serangkaian parameter tetap, atau menyiapkan sapuan parameter.

Membuat model regresi kuanttil menggunakan parameter tetap

Dengan asumsi Anda tahu bagaimana Anda ingin mengkonfigurasi model, Anda dapat memberikan seperangkat nilai tertentu sebagai argumen. Saat Anda melatih model, gunakan Model Kereta Api.

  1. Tambahkan modul Regresi Kuanttil Hutan Cepat ke eksperimen Anda di Studio (klasik).

  2. Atur opsi Buat mode pelatih ke Parameter Tunggal.

  3. Untuk Jumlah Pohon, ketik jumlah maksimum pohon yang dapat dibuat dalam ansambel. Jika Anda membuat lebih banyak pohon, umumnya mengarah pada akurasi yang lebih besar, tetapi dengan waktu pelatihan yang lebih lama.

  4. Untuk Jumlah Daun, ketik jumlah maksimum daun, atau node terminal, yang dapat dibuat di pohon mana pun.

  5. Untuk jumlah minimum instans pelatihan yang diperlukan untuk membentuk daun , tentukan jumlah minimum contoh yang diperlukan untuk membuat simpul terminal (daun) di pohon.

    Dengan meningkatkan nilai ini, Anda meningkatkan ambang untuk membuat aturan baru. Misalnya, dengan nilai default 1, bahkan satu kasus dapat menyebabkan aturan baru dibuat. Jika Anda meningkatkan nilai menjadi 5, data pelatihan harus berisi setidaknya 5 kasus yang memenuhi kondisi yang sama.

  6. Untuk Fraksi Bagging, tentukan angka antara 0 dan 1 yang mewakili fraksi sampel yang akan digunakan saat membangun setiap kelompok kuantisasi. Sampel dipilih secara acak, dengan penggantian.

  7. Untuk Pecahan fitur, ketik angka antara 0 dan 1 yang menunjukkan sebagian kecil dari total fitur yang akan digunakan saat membangun pohon tertentu. Fitur selalu dipilih secara acak.

  8. Untuk pecahan Split, ketik angka antara 0 dan 1 yang mewakili pecahan fitur untuk digunakan di setiap bagian pohon. Fitur yang digunakan selalu dipilih secara acak.

  9. Untuk jumlah sampel Kuanttil, ketik jumlah kasus yang harus dievaluasi saat memperkirakan kuanttil.

  10. Agar Quantiles diperkirakan, ketik daftar kuanttil yang dipisahkan koma yang Anda inginkan model untuk melatih dan membuat prediksi.

    Misalnya, jika Anda ingin membuat model yang memperkirakan kuartil, Anda akan mengetik 0.25, 0.5, 0.75.

  11. Secara opsional, ketik nilai untuk Biji angka acak untuk menyemai generator angka acak yang digunakan oleh model. Defaultnya adalah 0, yang berarti benih acak dipilih.

    Anda harus memberikan nilai jika Anda perlu mereproduksi hasil di seluruh eksekusi berturut-turut pada data yang sama.

  12. Pilih opsi Izinkan level kategoris yang tidak diketahui untuk membuat grup untuk nilai yang tidak diketahui.

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

    Jika Anda memilih opsi ini, model mungkin kurang tepat untuk nilai yang diketahui, tetapi dapat memberikan prediksi yang lebih baik untuk nilai baru (tidak diketahui).

  13. Koneksi himpunan data pelatihan, pilih satu kolom label, dan hubungkan Train Model.

  14. Jalankan eksperimen.

Gunakan sapuan parameter untuk membuat model regresi kuanttil

Jika Anda tidak yakin dengan parameter optimal untuk model, Anda dapat mengonfigurasi sapuan parameter, dan memberikan berbagai nilai sebagai argumen. Saat Anda melatih model, gunakan modul Tune Model Hyperparameters .

  1. Tambahkan modul Regresi Kuanttil Hutan Cepat ke eksperimen Anda di Studio (klasik).

  2. Atur opsi Buat mode pelatih ke Rentang Parameter.

    Sapuan parameter direkomendasikan jika Anda tidak yakin dengan parameter terbaik. Dengan menentukan beberapa nilai dan menggunakan modul Tune Model Hyperparameters untuk melatih model, Anda dapat menemukan kumpulan parameter optimal untuk data Anda.

    Setelah memilih sapuan parameter, untuk setiap properti yang dapat disetel, Anda dapat mengatur satu nilai, atau beberapa nilai. Misalnya, Anda mungkin memutuskan untuk memperbaiki jumlah pohon, tetapi secara acak mengubah nilai lain yang mengontrol cara setiap pohon dibangun.

    • Jika Anda mengetik satu nilai, nilai tersebut digunakan di semua iterasi sapuan, bahkan jika nilai lainnya berubah.

    • Ketik daftar nilai diskrit yang dipisahkan koma untuk digunakan. Nilai-nilai ini digunakan dalam kombinasi dengan properti lain.

    • Gunakan Range Builder untuk menentukan rentang nilai kontinu.

    Selama proses pelatihan, modul Tune Model Hyperparameters berulang melalui berbagai kombinasi nilai untuk membangun model terbaik.

  3. Untuk Jumlah maksimum daun per pohon, ketik jumlah total daun, atau node terminal, untuk memungkinkan di setiap pohon.

  4. Untuk Jumlah pohon yang dibangun, ketik jumlah iterasi yang harus dilakukan saat membangun ansambel. Dengan membuat lebih banyak pohon, Anda berpotensi mendapatkan cakupan yang lebih baik, dengan mengorbankan peningkatan waktu pelatihan.

  5. Untuk Jumlah minimum sampel per simpul daun, tunjukkan berapa banyak kasus yang diperlukan untuk membuat simpul daun.

    Dengan meningkatkan nilai ini, Anda meningkatkan ambang untuk membuat aturan baru. Misalnya, dengan nilai default 1, bahkan satu kasus dapat menyebabkan aturan baru dibuat. Jika Anda meningkatkan nilai menjadi 5, data pelatihan harus berisi setidaknya 5 kasus yang memenuhi kondisi yang sama.

  6. Dalam Rentang untuk mengantongi pecahan, ketik fraksi sampel untuk digunakan saat membangun setiap kelompok kuanttil. Sampel dipilih secara acak, dengan penggantian.

    Setiap pecahan harus menjadi angka antara 0 dan 1. Pisahkan beberapa pecahan, dengan menggunakan koma.

  7. Dalam Rentang untuk pecahan fitur, ketik pecahan total fitur yang akan digunakan saat membangun setiap kelompok kuanttil. Fitur dipilih secara acak.

    Setiap pecahan harus menjadi angka antara 0 dan 1; pisahkan beberapa pecahan dengan menggunakan koma.

  8. Dalam Rentang untuk pecahan terpisah, tentukan beberapa pecahan fitur yang akan digunakan di setiap kelompok kuanttil. Fitur aktual yang digunakan dipilih secara acak.

    Setiap pecahan harus menjadi angka antara 0 dan 1; pisahkan beberapa pecahan dengan menggunakan koma.

  9. Dalam hitungan sampel yang digunakan untuk memperkirakan kuanttil, tunjukkan berapa banyak sampel yang harus dievaluasi saat memperkirakan kuanttil. Jika Anda mengetik angka yang lebih besar dari jumlah sampel yang tersedia, semua sampel digunakan.

  10. Dalam Nilai kuanttil yang diperlukan, ketik daftar kuanttil yang dipisahkan koma tempat Anda ingin model dilatih. Misalnya, jika Anda ingin membangun model yang memperkirakan kuartil, Anda akan mengetik '0.25, 0.5, 0.75

  11. Dalam Benih angka acak, ketik nilai untuk menyemai generator angka acak yang digunakan oleh model. Penggunaan benih berguna untuk mereproduksi duplikat berjalan.

    Defaultnya adalah 0, yang berarti benih acak dipilih.

  12. Pilih opsi Izinkan nilai yang tidak diketahui untuk fitur kategoris guna membuat grup untuk nilai yang tidak diketahui dalam set pelatihan atau validasi.

    Jika Anda membatalkan pilihan ini, model hanya dapat menerima nilai yang terdapat dalam data pelatihan.

    Jika Anda memilih opsi ini, model mungkin kurang tepat untuk nilai yang diketahui, tetapi dapat memberikan prediksi yang lebih baik untuk nilai baru (tidak diketahui).

  13. Koneksi himpunan data pelatihan, pilih kolom label, dan hubungkan modul Tune Model Hyperparameters.

    Catatan

    Jangan gunakan model kereta api. Jika Anda mengonfigurasi rentang parameter tetapi melatih menggunakan Model Kereta Api, ia hanya menggunakan nilai pertama dalam daftar rentang parameter.

  14. Jalankan eksperimen.

Hasil

Setelah pelatihan selesai:

  • Untuk melihat hiperparameter akhir dari model yang dioptimalkan, klik kanan output Tune Model Hyperparameters dan pilih Visualisasikan.

Contoh

Untuk contoh cara menggunakan modul ini, lihat Galeri AI Azure:

  • Regresi Kuanttil: Menunjukkan cara membangun dan menafsirkan model regresi kuanttil, menggunakan himpunan data harga otomatis.

Catatan teknis

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

Detail implementasi

Modul Regresi Kuanttil Hutan Cepat dalam Pembelajaran Mesin adalah implementasi regresi kuanttil hutan acak menggunakan pohon keputusan. Hutan acak dapat membantu untuk menghindari overfitting yang dapat terjadi dengan pohon keputusan. Pohon keputusan adalah bagan aliran seperti pohon biner, di mana di setiap simpul interior, seseorang memutuskan mana dari dua node anak yang akan terus berlanjut, berdasarkan nilai salah satu fitur input.

Di setiap simpul daun, nilai dikembalikan. Di node interior, keputusan didasarkan pada tes ''x≤v', di mana x adalah nilai fitur dalam sampel input dan v adalah salah satu nilai yang mungkin dari fitur ini. Fungsi yang dapat dihasilkan oleh pohon regresi adalah semua fungsi konstan sepotong-bijaksana.

Di hutan acak, ansambel pohon dibuat dengan menggunakan bagging untuk memilih subset sampel acak dan fitur data pelatihan, dan kemudian sesuai dengan pohon keputusan untuk setiap subset data. Berbeda dengan algoritma hutan acak, yang rata-rata keluar output dari semua pohon, Fast Forest Quantile Regression menyimpan semua label yang diprediksi di pohon yang ditentukan oleh parameter jumlah sampel Quantile dan output distribusi, sehingga pengguna dapat melihat nilai kuanttil untuk contoh yang diberikan.

Untuk informasi selengkapnya tentang regresi kuanttil, lihat buku dan artikel berikut:

Parameter modul

Nama Jenis Rentang Opsional Deskripsi Default
Membuat mode pelatih CreateLearnerMode Daftar:Parameter Tunggal| Rentang Parameter Diperlukan Parameter Tunggal Membuat opsi pelajar tingkat lanjut
Jumlah Pohon Bilangan bulat mode:Parameter Tunggal 100 Tentukan jumlah pohon yang akan dibangun
Jumlah Daun Bilangan bulat mode:Parameter Tunggal 20 Tentukan jumlah maksimum daun per pohon. Nomor default adalah 20
Jumlah minimum instans pelatihan yang diperlukan untuk membentuk daun Bilangan bulat mode:Parameter Tunggal 10 Menunjukkan jumlah minimum instans pelatihan yang diperlukan untuk membentuk daun
Fraksi bagging Mengambang mode:Parameter Tunggal 0.7 Menentukan fraksi data pelatihan yang akan digunakan untuk setiap pohon
Pecahan fitur Mengambang mode:Parameter Tunggal 0.7 Menentukan pecahan fitur (dipilih secara acak) untuk digunakan untuk setiap pohon
Pecahan terpisah Mengambang mode:Parameter Tunggal 0.7 Menentukan pecahan fitur (dipilih secara acak) untuk digunakan untuk setiap split
Jumlah sampel kuanttil Bilangan bulat Maks: 2147483647 mode:Parameter Tunggal 100 Menentukan jumlah instans yang digunakan di setiap node untuk memperkirakan kuanttil
Kuanttil yang akan diperkirakan String mode:Parameter Tunggal "0.25;0.5;0.75" Menentukan kuanttil yang akan diperkirakan
Benih angka acak Bilangan bulat Opsional Sediakan benih untuk generator nomor acak yang digunakan oleh model. Biarkan kosong untuk default.
Izinkan level kategoris yang tidak diketahui Boolean Diperlukan true Jika benar, buat level tambahan untuk setiap kolom kategoris. Level dalam himpunan data pengujian yang tidak tersedia dalam himpunan data pelatihan dipetakan ke tingkat tambahan ini.
Jumlah maksimum daun per pohon ParameterRangeSettings [16;128] mode:Rentang Parameter 16; 32; 64 Tentukan rentang untuk jumlah maksimum daun yang diizinkan per pohon
Jumlah pohon yang dibangun ParameterRangeSettings [1;256] mode:Rentang Parameter 16; 32; 64 Tentukan rentang untuk jumlah maksimum pohon yang dapat dibuat selama pelatihan
Jumlah minimum sampel per simpul daun ParameterRangeSettings [1;10] mode:Rentang Parameter 1; 5; 10 Tentukan rentang untuk jumlah minimum kasus yang diperlukan untuk membentuk daun
Rentang untuk mengantongi pecahan ParameterRangeSettings [0.25;1.0] mode:Rentang Parameter 0.25; 0.5; 0.75 Menentukan rentang untuk fraksi data pelatihan yang akan digunakan untuk setiap pohon
Rentang untuk pecahan fitur ParameterRangeSettings [0.25;1.0] mode:Rentang Parameter 0.25; 0.5; 0.75 Menentukan rentang untuk sebagian kecil fitur (dipilih secara acak) untuk digunakan untuk setiap pohon
Rentang untuk pecahan terpisah ParameterRangeSettings [0.25;1.0] mode:Rentang Parameter 0.25; 0.5; 0.75 Menentukan rentang untuk pecahan fitur (dipilih secara acak) untuk digunakan untuk setiap split
Jumlah sampel yang digunakan untuk memperkirakan kuanttil Bilangan bulat mode:Rentang Parameter 100 Jumlah sampel yang digunakan untuk memperkirakan kuanttil
Nilai kuantisasi yang diperlukan String mode:Rentang Parameter "0.25;0.5;0.75" Nilai kuanttil yang diperlukan yang digunakan selama sapuan parameter

Output

Nama Jenis Deskripsi
Model tak terlatih Antarmuka ILearner Model regresi kuanttil yang tidak terlatih yang dapat dihubungkan ke modul Train Generic Model atau Cross Validate Model.

Lihat juga

Regresi