Bagikan melalui


Regresi Pohon Keputusan Yang Ditingkatkan

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 menggunakan algoritma Boosted Decision Tree

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 Pohon Keputusan yang Ditingkatkan di Pembelajaran Mesin Studio (klasik), untuk membuat ansambel pohon regresi menggunakan peningkatan. Meningkatkan berarti bahwa setiap pohon bergantung pada pohon sebelumnya. Algoritma belajar dengan memasang sisa pohon yang mendahuluinya. Dengan demikian, peningkatan dalam ansambel pohon keputusan cenderung meningkatkan akurasi dengan beberapa risiko cakupan kecil yang lebih sedikit.

Klasifikasi menggunakan regresi logistik adalah metode pembelajaran yang diawasi, dan karenanya memerlukan himpunan data berlabel. Kolom label harus berisi nilai numerik.

Catatan

Gunakan modul ini hanya dengan himpunan data yang menggunakan variabel numerik.

Setelah Anda menentukan model, latih dengan menggunakan modul Train Model atau Tune Model Hyperparameters .

Tip

Ingin tahu lebih banyak tentang pohon-pohon yang diciptakan? Setelah model dilatih, klik kanan output modul Train Model (atau modul Tune Model Hyperparameters ) dan pilih Visualisasikan untuk melihat pohon yang dibuat pada setiap iterasi. Anda dapat menelusuri perpecahan untuk setiap pohon dan melihat aturan untuk setiap node.

Lebih lanjut tentang pohon regresi yang ditingkatkan

Boosting adalah salah satu dari beberapa metode klasik untuk membuat model ansambel, bersama dengan bagging, hutan acak, dan sebagainya. Di Pembelajaran Mesin Studio (klasik), pohon keputusan yang didorong menggunakan implementasi yang efisien dari algoritma peningkatan gradien MART. Peningkatan gradien adalah teknik pembelajaran mesin untuk masalah regresi. Peningkatan itu membangun setiap pohon regresi dengan cara langkah-bijaksana, menggunakan fungsi kerugian yang telah ditentukan untuk mengukur kesalahan di setiap langkah dan memperbaikinya di langkah berikutnya. Dengan demikian model prediksi sebenarnya adalah ansambel model prediksi yang lebih lemah.

Dalam masalah regresi, boosting membangun serangkaian pohon secara bertahap, dan kemudian memilih pohon optimal menggunakan fungsi kerugian terdiferensiasi yang berubah-ubah.

Untuk informasi selengkapnya, lihat artikel berikut ini:

Metode peningkatan gradien juga dapat digunakan untuk masalah klasifikasi dengan menguranginya ke regresi dengan fungsi kehilangan yang sesuai. Untuk informasi selengkapnya tentang implementasi pohon yang ditingkatkan untuk tugas klasifikasi, lihat Pohon Keputusan Dua Kelas yang Ditingkatkan.

Cara mengonfigurasi Regresi Pohon Keputusan Yang Ditingkatkan

  1. Tambahkan modul Boosted Decision Tree ke eksperimen Anda. Anda dapat menemukan modul ini di bawah Azure Machine Learning, Berinisial, dalam kategori Regresi.

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

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

    • Rentang Parameter: Pilih opsi ini jika Anda tidak yakin dengan parameter terbaik, dan ingin menjalankan sapuan parameter. Pilih rentang nilai yang akan diulang, dan Tune Model Hyperparameters mengulangi semua kemungkinan kombinasi pengaturan yang Anda berikan untuk menentukan hyperparameter yang menghasilkan hasil optimal.

  3. Jumlah maksimum daun per pohon: Menunjukkan jumlah maksimum simpul terminal (daun) yang dapat dibuat di pohon mana pun.

    Dengan meningkatkan nilai ini, Anda berpotensi meningkatkan ukuran pohon dan mencapai presisi yang lebih tinggi, dengan risiko overfitting dan waktu pelatihan yang lebih lama.

  4. Jumlah minimum sampel per simpul daun: Menandakan jumlah minimum kasus yang diperlukan untuk membuat setiap simpul (daun) terminal di pohon.

    Dengan meningkatkan nilai ini, Anda meningkatkan ambang batas 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.

  5. Laju pembelajaran: Ketikkan angka antara 0 dan 1 yang menentukan ukuran langkah saat belajar. Tingkat pembelajaran menentukan seberapa cepat atau lambat pelajar menemukan solusi yang optimal. Jika ukuran langkah terlalu besar, Anda mungkin melampaui solusi optimal. Jika ukuran langkah terlalu kecil, pelatihan membutuhkan waktu lebih lama untuk bertemu dengan solusi terbaik.

  6. Jumlah pohon yang dibangun: menunjukkan jumlah total pohon keputusan untuk dibuat di ansambel. Dengan membuat lebih banyak pohon keputusan, Anda berpotensi mendapatkan cakupan yang lebih baik, tetapi waktu pelatihan akan meningkat.

    Nilai ini juga mengontrol jumlah pohon yang ditampilkan saat memvisualisasikan model terlatih. jika Anda ingin melihat atau mencetak pohon ingle, Anda dapat mengatur nilainya menjadi 1; namun, ini berarti bahwa hanya satu pohon yang diproduksi (pohon dengan set parameter awal) dan tidak ada iterasi lebih lanjut yang dilakukan.

  7. Seed angka acak: secara opsional menetapkan bilangan bulat non-negatif untuk digunakan sebagai nilai seed acak. Menentukan seed memastikan reproduksi di seluruh eksekusi yang memiliki data dan parameter yang sama.

    Nilai awal acak diatur secara default ke 0, yang berarti nilai awal diperoleh dari jam sistem.

  8. Izinkan level kategoris yang tidak diketahui: Pilih opsi ini untuk membuat grup untuk nilai yang tidak diketahui dalam kumpulan pelatihan dan validasi. Jika Anda membatalkan pilihan ini, model hanya dapat menerima nilai yang terdapat dalam data pelatihan. Model mungkin kurang tepat untuk nilai yang diketahui, tetapi dapat memberikan prediksi yang lebih baik untuk nilai baru (tidak diketahui).

  9. Tambahkan himpunan data pelatihan, dan salah satu modul pelatihan:

    • Jika Anda mengatur opsi Buat mode pelatih ke Parameter Tunggal, gunakan modul Model Kereta Api.

    • Jika Anda mengatur Buat mode pelatih ke Rentang Parameter, gunakan modul Tune Model Hyperparameters.

    Catatan

    Jika Anda meneruskan rentang parameter ke Model Kereta Api, ini 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.

  10. Jalankan eksperimen.

Hasil

Setelah pelatihan selesai:

  • Untuk melihat pohon yang dibuat pada setiap iterasi, klik kanan modul Train Model dan pilih Model terlatih untuk memvisualisasikan. Jika Anda menggunakan Tune Model Hyperparameters, klik kanan modul dan pilih Model terbaik terlatih untuk memvisualisasikan model terbaik.

    Klik setiap pohon untuk menelusuri ke dalam perpecahan dan melihat aturan untuk setiap node.

  • Untuk menggunakan model untuk penilaian, hubungkan ke Model Skor, untuk memprediksi nilai untuk contoh input baru.

  • Untuk menyimpan snapshot dari model terlatih, klik kanan output model terlatih dari modul pelatihan dan pilih Simpan Sebagai. Salinan model terlatih yang Anda simpan tidak diperbarui pada percobaan berturut-turut.

Contoh

Untuk contoh bagaimana pohon yang digenjot digunakan dalam pembelajaran mesin, lihat Galeri AI Azure:

  • Estimasi permintaan: Menggunakan Regresi Pohon Keputusan yang Ditingkatkan untuk memprediksi jumlah penyewaan untuk waktu tertentu.

  • Analisis sentimen Twitter: Menggunakan regresi untuk menghasilkan peringkat yang diprediksi.

Catatan teknis

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

Tip

Secara umum, pohon keputusan menghasilkan hasil yang lebih baik ketika fitur agak terkait. Jika fitur memiliki tingkat entropi yang besar (yaitu, mereka tidak terkait), mereka berbagi sedikit atau tidak ada informasi bersama, dan memesannya di pohon tidak akan menghasilkan banyak signifikansi prediktif.

Detail implementasi

Ansambel pohon dihasilkan oleh komputasi, pada setiap langkah, pohon regresi yang mendekati gradien fungsi kehilangan, dan menambahkannya ke pohon sebelumnya dengan koefisien yang meminimalkan hilangnya pohon baru. Output dari ensemble yang dihasilkan oleh MART pada contoh tertentu adalah jumlah output pohon.

  • Untuk masalah klasifikasi biner, output diubah menjadi probabilitas dengan menggunakan beberapa bentuk kalibrasi.

  • Untuk masalah regresi, output adalah nilai yang diprediksi dari fungsi.

  • Untuk masalah peringkat, instans dipesan oleh nilai output ansambel.

Parameter modul

Nama Rentang Jenis Default Deskripsi
Jumlah maksimum daun per pohon >=1 Bilangan bulat 20 Tentukan jumlah maksimum daun per pohon
Jumlah minimum sampel per simpul daun >=1 Bilangan bulat 10 Tentukan jumlah minimum kasus yang diperlukan untuk membentuk simpul daun
Tingkat pembelajaran [ganda. Epsilon;1.0] Mengambang 0.2 Tentukan tingkat pembelajaran awal
Jumlah total pohon yang dibangun >=1 Bilangan bulat 100 Tentukan jumlah maksimum pohon yang dapat dibuat selama pelatihan
Benih angka acak apa pun Bilangan bulat Sediakan benih untuk generator nomor 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. Level dalam himpunan data pengujian yang tidak tersedia dalam himpunan data pelatihan dipetakan ke tingkat tambahan ini.

Output

Nama Jenis Deskripsi
Model tak terlatih Antarmuka ILearner Model regresi yang tidak terlatih

Lihat juga

Daftar Modul A-Z
Regresi