Algoritma Hutan Acak: Kapan Digunakan & Bagaimana Cara Menggunakannya? [Dengan Pro & Kontra]

Diterbitkan: 2020-12-24

Ilmu Data mencakup berbagai algoritma yang mampu memecahkan masalah yang berkaitan dengan klasifikasi. Hutan acak biasanya ada di bagian atas hierarki klasifikasi. Algoritme lain termasuk- Mendukung mesin vektor, pengklasifikasi Naive Bias, dan Pohon Keputusan.

Sebelum mempelajari tentang algoritma Random forest, mari kita pahami terlebih dahulu cara kerja dasar dari pohon Keputusan dan bagaimana mereka dapat digabungkan untuk membentuk Hutan Acak.

Daftar isi

Pohon Keputusan

Algoritma Decision Tree termasuk dalam kategori algoritma pembelajaran yang diawasi. Tujuan dari pohon keputusan adalah untuk memprediksi kelas atau nilai dari variabel target berdasarkan aturan yang dikembangkan selama proses pelatihan. Mulai dari akar pohon kita membandingkan nilai atribut akar dengan titik data yang ingin kita klasifikasi dan atas dasar perbandingan kita melompat ke simpul berikutnya.

Selanjutnya, mari kita bahas beberapa istilah penting dan signifikansinya dalam menangani pohon keputusan.

  1. Root Node : Ini adalah node paling atas dari pohon, dari mana pembagian terjadi untuk membentuk node yang lebih homogen.
  2. Pemisahan Titik Data : Titik data dibagi dengan cara yang mengurangi simpangan baku setelah pemisahan.
  3. Perolehan Informasi : Perolehan informasi adalah pengurangan standar deviasi yang ingin kita capai setelah pemisahan. Lebih banyak pengurangan standar deviasi berarti node yang lebih homogen.
  4. Entropi : Entropi adalah ketidakteraturan yang ada pada simpul setelah pemisahan terjadi. Lebih banyak homogenitas dalam simpul berarti lebih sedikit entropi.

Baca: Pertanyaan Wawancara Pohon Keputusan

Perlu untuk algoritma hutan Acak

Algoritma Decision Tree rentan terhadap overfitting yaitu akurasi yang tinggi pada data pelatihan dan kinerja yang buruk pada data pengujian. Dua metode populer untuk mencegah overfitting data adalah Pemangkasan dan hutan Acak. Pemangkasan mengacu pada pengurangan ukuran pohon tanpa mempengaruhi akurasi keseluruhan pohon.

Sekarang mari kita bahas algoritma Random forest.

Salah satu keuntungan utama dari hutan acak adalah kemampuannya untuk digunakan baik dalam klasifikasi maupun dalam masalah regresi.

Seperti namanya, hutan terbentuk dengan menggabungkan beberapa pohon. Demikian pula, algoritma hutan acak menggabungkan beberapa algoritma pembelajaran mesin (pohon keputusan) untuk mendapatkan akurasi yang lebih baik. Ini juga disebut pembelajaran Ensemble. Di sini korelasi yang rendah antara model membantu menghasilkan akurasi yang lebih baik daripada prediksi individu mana pun. Bahkan jika beberapa pohon menghasilkan prediksi yang salah, mayoritas dari mereka akan menghasilkan prediksi yang benar sehingga akurasi model secara keseluruhan meningkat.

Algoritma hutan acak dapat diimplementasikan di python dan R seperti algoritma pembelajaran mesin lainnya.

Kapan menggunakan Random Forest dan kapan menggunakan model lain?

Pertama-tama, kita perlu memutuskan apakah masalahnya linier atau nonlinier. Kemudian, Jika masalahnya linier, kita harus menggunakan Regresi Linier Sederhana jika hanya satu fitur yang ada, dan jika kita memiliki banyak fitur, kita harus menggunakan Regresi Linier Berganda. Namun, Jika masalahnya non-linier, kita harus Regresi Polinomial, SVR, Pohon Keputusan, atau Acak

Hutan. Kemudian dengan menggunakan teknik yang sangat relevan yang mengevaluasi kinerja model seperti k-Fold Cross-Validation, Grid Search, atau XGBoost, kita dapat menyimpulkan model yang tepat yang memecahkan masalah kita.

Bagaimana saya tahu berapa banyak pohon yang harus saya gunakan?

Untuk setiap pemula, saya akan menyarankan untuk menentukan jumlah pohon yang dibutuhkan dengan bereksperimen. Biasanya membutuhkan waktu lebih sedikit daripada benar-benar menggunakan teknik untuk mengetahui nilai terbaik dengan mengutak-atik dan menyetel model Anda. Dengan bereksperimen dengan beberapa nilai hyperparameter seperti jumlah pohon. Namun demikian, teknik seperti cover k-Fold Cross-Validation dan Grid Search dapat digunakan, yang merupakan metode yang ampuh untuk menentukan nilai optimal dari suatu hyperparameter, seperti jumlah pohon di sini.

Bisakah nilai-p digunakan untuk Hutan acak?

Di sini, nilai p akan menjadi tidak signifikan dalam kasus Hutan Acak karena merupakan model non-linier.

mengantongi

Pohon keputusan sangat sensitif terhadap data tempat mereka dilatih oleh karena itu rentan terhadap Overfitting. Namun, Random forest memanfaatkan masalah ini dan memungkinkan setiap pohon untuk mengambil sampel secara acak dari kumpulan data untuk mendapatkan struktur pohon yang berbeda. Proses ini dikenal sebagai Bagging.

Bagging tidak berarti membuat subset dari data pelatihan. Ini berarti bahwa kami masih memberi makan pohon dengan data pelatihan tetapi dengan ukuran N. Alih-alih data asli, kami mengambil sampel ukuran N (titik data N) dengan penggantian.

Pentingnya Fitur

Algoritme hutan acak memungkinkan kita untuk menentukan pentingnya fitur tertentu dan dampaknya terhadap prediksi. Ini menghitung skor untuk setiap fitur setelah pelatihan dan menskalakannya dengan cara menjumlahkannya menjadi satu. Ini memberi kami gambaran tentang fitur mana yang akan dihapus karena tidak memengaruhi seluruh proses prediksi. Dengan fitur yang lebih sedikit, model tersebut kemungkinan kecil akan menjadi mangsa overfitting.

Hyperparameter

Penggunaan hyperparameters baik meningkatkan kemampuan prediksi model atau membuat model lebih cepat.

Untuk memulainya, parameter n_estimator adalah jumlah pohon yang dibuat algoritme sebelum mengambil prediksi rata-rata. Nilai n_estimator yang tinggi berarti peningkatan kinerja dengan prediksi yang tinggi. Namun, nilainya yang tinggi juga mengurangi waktu komputasi model.

Hyperparameter lainnya adalah max_features, yang merupakan jumlah total fitur yang dipertimbangkan model sebelum dipecah menjadi node berikutnya.

Selanjutnya, min_sample_leaf adalah jumlah minimum daun yang diperlukan untuk membagi simpul internal.

Terakhir, random_state digunakan untuk menghasilkan output tetap ketika nilai tertentu dari random_state dipilih bersama dengan hyperparameter yang sama dan data pelatihan.

Keuntungan dan Kerugian dari Algoritma Hutan Acak

  1. Hutan acak adalah algoritma yang sangat serbaguna yang mampu menyelesaikan tugas klasifikasi dan regresi.
  2. Juga, hyperparameter yang terlibat mudah dipahami dan biasanya, nilai defaultnya menghasilkan prediksi yang baik.
  3. Hutan acak memecahkan masalah overfitting yang terjadi di pohon keputusan.
  4. Salah satu keterbatasan Random forest adalah, terlalu banyak pohon dapat membuat pemrosesan algoritma menjadi lambat sehingga tidak efektif untuk prediksi pada data waktu nyata.

Baca Juga : Jenis-Jenis Algoritma Klasifikasi

Kesimpulan

Algoritma hutan acak adalah algoritma yang sangat kuat dengan akurasi tinggi. Aplikasi kehidupan nyatanya di bidang perbankan investasi, pasar saham, dan situs web e-niaga menjadikannya algoritme yang sangat kuat untuk digunakan. Namun, kinerja yang lebih baik dapat dicapai dengan menggunakan algoritma jaringan saraf tetapi algoritma ini, kadang-kadang, cenderung menjadi kompleks dan membutuhkan lebih banyak waktu untuk dikembangkan.

Jika Anda tertarik untuk mempelajari lebih lanjut tentang pohon keputusan, Pembelajaran Mesin, lihat PG Diploma IIIT-B & upGrad dalam Pembelajaran Mesin & AI yang dirancang untuk profesional yang bekerja dan menawarkan 450+ jam pelatihan ketat, 30+ studi kasus & tugas, status Alumni IIIT-B, 5+ proyek batu penjuru praktis & bantuan pekerjaan dengan perusahaan-perusahaan top.

Apa kontra menggunakan algoritma hutan acak?

Random Forest adalah algoritma pembelajaran mesin yang canggih. Ini menuntut banyak sumber daya pemrosesan karena menghasilkan banyak pohon untuk menemukan hasilnya. Selain itu, dibandingkan dengan algoritma lain seperti metode pohon keputusan, teknik ini membutuhkan banyak waktu pelatihan. Ketika data yang disediakan linier, regresi hutan acak tidak berjalan dengan baik.

Bagaimana cara kerja algoritma hutan acak?

Sebuah hutan acak terdiri dari banyak pohon keputusan yang berbeda, mirip dengan bagaimana hutan terdiri dari banyak pohon. Hasil dari metode hutan acak sebenarnya ditentukan oleh prediksi pohon keputusan. Metode hutan acak juga mengurangi kemungkinan data over fitting. Klasifikasi hutan secara acak menggunakan strategi ensemble untuk mendapatkan hasil yang diinginkan. Berbagai pohon keputusan dilatih menggunakan data pelatihan. Dataset ini terdiri dari observasi dan karakteristik yang dipilih secara acak setelah node dipecah.

Bagaimana pohon keputusan berbeda dari hutan acak?

Hutan acak tidak lebih dari kumpulan pohon keputusan, membuatnya rumit untuk dipahami. Hutan acak lebih sulit dibaca daripada pohon keputusan. Jika dibandingkan dengan pohon keputusan, hutan acak membutuhkan waktu pelatihan yang lebih lama. Namun, ketika berhadapan dengan kumpulan data besar, hutan acak lebih disukai. Overfitting lebih sering terjadi pada pohon keputusan. Overfitting lebih kecil kemungkinannya di hutan acak karena mereka menggunakan banyak pohon.