Random Forest vs Decision Tree
Dalam melakukan analisis data terutama klasifikasi, kita dapat menggunakan banyak jenis algoritma. Dari banyak nya algoritma terdapat algoritma yang pemodelannya berbentuk tree, algoritma tersebut adalah Decision Tree dan Random Forest. Decision Tree dan Random Forest merupakan algoritma supervised learning yang digunakan untuk klasifikasi dan regresi.
Apa itu Decision Tree?
Decision tree biasanya banyak dipakai untuk klasifikasi. Decision Tree adalah sebuah tree terstruktur yang memiliki Root Node merupakan dimana keputusan dimulai, internal nodesnya merepresentasikan feature dataset, cabangnya merepresentasikan decision rules dan Leaf Nodenya merepresentasikan hasil. Decision Tree menggunakan CART Algorithm (Classification and Regression Tree).
Gambar 1. Decision Tree
Sumber: https://www.javatpoint.com/machine-learning-decision-tree-classification-algorithm
Apa itu Random Forest?
Random Forest berisi beberapa decision tree pada berbagai subset dari dataset tertentu. Random Forest mengambil prediksi dari setiap tree dan memprediksi hasil akhir berdasarkan hasil mayoritas dari prediksi. Semakin banyak jumlah tree, maka akan menghasilkan akurasi yang semakin tinggi dan mencegah masalah overfitting.
Gambar 2. Random Forest
Sumber: https://www.javatpoint.com/machine-learning-random-forest-algorithm
Decision Tree dan Random Forest memiliki bentuk model yang sama yaitu berbentuk tree. Namun, ada perbedaan antara Decision Tree dan Random Forest. Berikut beberapa perbedaan antara Decision Tree dan Random Forest, yaitu:
- Pemodelan:
- Random Forest merupakan gabungan dari beberapa decision tree.
- Decision Tree terdiri dari Decision Node dan Leaf Node. Decision Node digunakan untuk membuat keputusan dan memiliki banyak cabang. Leaf Node merupakan hasil dari keputusan dan tidak memiliki cabang.
- Cara Kerja:
- Random Forest memiliki dua fase yaitu Pertama, menggabungkan sejumlah N decision tree untuk membuat random forest. Kedua, membuat prediksi untuk setiap tree yang dibuat pada fase pertama.
- Decision Tree dimulai dari root dan kemudian membandingkan nilai root dengan atribut record. Kemudian, dengan perbandingan nilai tersebut dapat digunakan untuk menelurusi cabang dan menuju simpul berikutnya. Penelusuran cabang ini terus berlanjut hingga mencapai simpul daun (node leaf).
- Kelebihan:
- Random Forest dapat bekerja pada kedua tugas sekaligus Classification dan Regression, mampu menangani data set yang besar, dan meningkatkan akurasi model dan menangani masalah overfitting
- Decision Tree memilki pemodelan yang lebih simple dimana prosesnya itu sama seperti manusia membuat keputusan, sangat berguna untuk menentukan keputusan, dapat membantu dalam memikirkan semua kemungkinan terhadap masalah yang ada, dan requirement data cleaningnya sedikit dibandingkan dengan algoritma lainnya.
- Kecepatan Training Data:
- Random Forest cenderung lebih lambat dikarenakan random forest terdiri dari kombinasi beberapa decision tree sehingga sangat kompleks dan membuat prosesnya lebih panjang.
- Decision Tree lebih cepat dibandingkan Random Forest dikarenakan lebih simple terutama pada kumpulan data linear.
- Akurasi:
- Random Forest menghasilkan hasil yang lebih akurat dikarenakan memiliki visualisasi yang kompleks
- Decision Tree menghasilkan hasil yang kurang akurat dikarenakan memiliki visualisai yang simple.
- Usecase:
- Random Forest baik digunakan saat Anda ingin performa yang lebih baik, dapat bertahan dari overfitting, dan meningkatkan akurasi terutama pada dataset yang kompleks dan memiliki dimensi yang tinggi. Random Forest ini baik digunakan jika Anda memiliki dataset yang besar dan data tersebut memiliki hubungan yang kompleks antara features dan label.
- Decision Tree baik digunakan saat Anda membutuhkan model yang sederhana dan mudah dipahami. Decision Tree ini baik digunakan jika fokus Anda lebih ke efisiensi dan menggunakan dataset yang kecil.
References:
https://www.upgrad.com/blog/random-forest-vs-decision-tree/
https://www.javatpoint.com/machine-learning-random-forest-algorithm
https://www.javatpoint.com/machine-learning-decision-tree-classification-algorithm
https://www.geeksforgeeks.org/difference-between-random-forest-and-decision-tree/