Hai hai sobat Exsight, seiring perkembangan zaman dan teknologi, metode analisis statistik tentunya juga ikut berkembang. Metode statistik populer yang digunakan dalam machine learning dan data mining salah satunya yaitu Decision Tree. Metode ini menawarkan cara cerdas dalam pengambilan keputusan dengan memetakan masalah keputusan menjadi langkah-langkah yang lebih sederhana.
Artikel ini akan membahas lebih mendalam terkait Decision Tree. Yuk simak artikel ini dengan seksama yaa!
Definisi
Decision Tree yang dalam bahasa Indonesia seringkali disebut juga sebagai Pohon Keputusan merupakan suatu metode analisis statistik yang digunakan dalam machine learning dan data mining. Decision Tree berfungsi untuk mengambil keputusan serta digunakan untuk melakukan prediksi. Secara visual, Decision Tree ditampilkan dalam struktur berbentuk pohon dengan node (simpul) yang merepresentasikan keputusan, cabang yang menyatakan pilihan, dan daun (leaf node) yang mewakili hasil akhir atau prediksi dari model.
Tujuan
Decision Tree seringkali digunakan dalam analisis klasifikasi dan analisis regresi, di mana pada analisis klasifikasi dilakukan prediksi kelas atau label dari data yang diberikan, sedangkan pada analisis regresi dilakukan prediksi nilai numerik berdasarkan data input. Selain itu, Decision Tree juga dapat digunakan untuk mengidentifikasi fitur-fitur penting dalam dataset dan membantu dalam pengambilan keputusan di berbagai bidang seperti bisnis, kesehatan, keuangan, dan lainnya. Kelebihan dari Decision Tree adalah kemudahan interpretasi dan visualisasi hasilnya, sehingga dapat diaplikasikan dengan baik dalam situasi di mana interpretasi model menjadi penting.
Dalam pembentukan Decision Tree, algoritma akan mencari variabel yang paling informatif untuk memisahkan data menjadi kelompok yang berbeda sehingga meminimalkan ketidakhomogenan dalam setiap kelompok. Proses ini berlangsung secara iteratif hingga mencapai kondisi berhenti atau ketika tidak ada lagi variabel yang dapat memisahkan data dengan lebih baik.
Komponen-Komponen
Decision Tree terdiri atas beberapa komponen. Komponen ini bersama-sama membentuk struktur pohon keputusan yang digunakan untuk mengambil keputusan atau melakukan prediksi pada data baru berdasarkan aturan dan pemisahan variabel yang telah dipelajari selama pembentukan model.
A. Node (Simpul)
Node adalah titik atau simpul dalam struktur pohon keputusan. Terdapat tiga jenis node dalam Decision Tree, yaitu:
- Root Node: Node awal atau node paling atas dalam pohon yang merepresentasikan seluruh dataset.
- Internal Node: Node yang merupakan titik pemisahan dalam pohon, merepresentasikan atribut dan nilai yang digunakan untuk memisahkan data.
- Leaf Node: Node yang merupakan titik akhir atau node daun dalam pohon, merepresentasikan hasil klasifikasi atau prediksi nilai.
B. Branch (Cabang)
Branch adalah garis atau cabang yang menghubungkan node–node dalam pohon keputusan. Setiap branch merepresentasikan pilihan atau kemungkinan nilai variabel yang berbeda.
C. Variabel
Variabel merupakan fitur pada dataset yang digunakan dalam pembentukan Decision Tree. Variabel digunakan untuk membagi data menjadi kelompok yang lebih homogen.
D. Threshold
Threshold adalah nilai atau batas yang digunakan untuk membagi data pada suatu variabel. Jika nilai variabel pada data kurang dari atau sama dengan threshold, data akan masuk ke anak kiri, sedangkan jika lebih besar dari threshold, data akan masuk ke anak kanan.
E. Prediksi Nilai
Jika Decision Tree digunakan untuk masalah regresi, maka pada leaf node akan terdapat nilai prediksi numerik. Sedangkan jika untuk masalah klasifikasi, maka pada leaf node akan terdapat nilai prediksi kelas. Keduanya merepresentasikan hasil prediksi untuk data yang masuk ke dalamnya
Jenis-Jenis Decision Tree
Decision Tree terdiri atas beberapa jenis. Setiap jenis Decision Tree memiliki karakteristik dan metode pemilihan variabel yang berbeda. Pilihan jenis Decision Tree yang tepat tergantung pada jenis masalah yang ingin dipecahkan dan karakteristik dari dataset yang digunakan.
1.ID3 (Iterative Dichotomiser 3)
ID3 adalah salah satu algoritma pembentukan Decision Tree yang paling awal dikembangkan. Algoritma ini menggunakan metode Information Gain untuk memilih variabel terbaik yang akan digunakan sebagai pemisah data pada setiap level pohon.
2. C4.5
C4.5 merupakan pengembangan dari algoritma ID3. Algoritma ini menggunakan metode Gain Ratio sebagai pengganti Information Gain, yang membantu mengatasi masalah seleksi variabel yang memiliki banyak nilai atau kelas.
3. CART (Classification and Regression Trees)
CART adalah algoritma Decision Tree yang serbaguna, hal ini dikarenakan algoritma ini dapat digunakan untuk analisis klasifikasi maupun analisis regresi. Untuk klasifikasi, CART menggunakan Gini Impurity sebagai metrik untuk pemilihan variabel, sedangkan untuk regresi, algoritma ini menggunakan Mean Squared Error (MSE) atau Mean Absolute Error (MAE).
4. CHAID (Chi-squared Automatic Interaction Detection)
CHAID adalah algoritma Decision Tree yang memanfaatkan uji statistik Chi-squared untuk menilai signifikansi pemisahan variabel pada setiap level pohon. Algoritma ini biasanya digunakan untuk klasifikasi serta cocok untuk data dengan variabel kategorik.
5. MARS (Multivariate Adaptive Regression Splines)
MARS adalah jenis Decision Tree yang dikembangkan untuk masalah regresi. Model ini dapat menangani hubungan non-linear antara variabel independen dan variabel dependen dengan menggunakan fungsi-fungsi spline.
6. Conditional Inference Trees
Conditional Inference Trees menggunakan pendekatan statistik berdasarkan uji hipotesis dan interval kepercayaan untuk membangun Decision Tree. Pendekatan ini memastikan bahwa hasil pohon keputusan lebih stabil dan mengurangi risiko adanya overfitting.
Kelebihan dan Kekurangan
Terdapat beberapa kelebihan dan kekurangan dari metode klasifikasi Decisio Tree, yaitu sebagai berikut.
Kelebihan
- Mudah Diinterpretasikan
Decision Tree memiliki struktur yang mudah dipahami dan divisualisasikan, hal ini memudahkan pembaca dalam memahami hasil analisis model. - Dapat Digunakan pada Data Kategorik
Decision Tree dapat mengatasi data yang bersifat kategorik tanpa memerlukan transformasi khusus. Oleh karena itu, model Decision Tree cocok untuk dataset dengan variabel-variabel bersifat kategorik. - Tidak Memerlukan Normalisasi Data
Decision Tree tidak dipengaruhi oleh skala data atau adanya outlier, sehingga tidak memerlukan proses normalisasi data sebelumnya. - Mampu Menangani Non-Linearitas
Decision Tree dapat menangani hubungan non-linear antara variabel, sehingga data yang digunakan pada Decision Tree tidak harus bersifat linier.
Kekurangan
- Kemungkinan Overfitting
Model Decision Tree rentan terhadap overfitting, hal ini terjadi ketika bentuk tree terlalu kompleks. - Kecenderungan Bias terhadap Kelas Mayoritas
Ketika terdapat suatu kelas dominan dalam data, Decision Tree cenderung mengambil keputusan yang lebih sering mengikuti kelas mayoritas, sehingga menyebabkan hasil klasifikasi tidak seimbang. - Kekurangan Stabilitas
Decision Tree sangat sensitif terhadap perubahan data kecil. Perubahan kecil pada data training dapat menyebabkan perubahan besar pada struktur pohon (tree). - Keterbatasan pada Masalah Regresi
Decision Tree cenderung kurang akurat dalam memodelkan masalah regresi jika terdapat banyak variabel prediktor yang saling berkorelasi (terdapat multikolinearitas).
Proses Pembentukan Decision Tree
Proses pembentukan Decision Tree dapat dijelaskan sebagai berikut:
- Memilih Root Node
Pada awal pembentukan, semua data training digunakan sebagai satu kelompok utuh (root node). Proses dimulai dengan mencari variabel yang paling informatif untuk menjadi root node pohon. Variabel ini harus memiliki kemampuan memisahkan data menjadi kelompok-kelompok yang lebih homogen. - Pemilihan Variabel Terbaik
Setelah menentukan root node, langkah selanjutnya adalah memilih variabel terbaik untuk membagi data menjadi dua kelompok anak (child nodes). Proses pemilihan variabel ini berdasarkan metode yang dipilih, seperti Information Gain, Gain Ratio, Gini Impurity, atau metode lainnya, tergantung pada jenis algoritma Decision Tree yang digunakan. - Pembagian Data
Setelah variabel terbaik dipilih, data training akan dibagi menjadi dua kelompok anak (child nodes) berdasarkan nilai atribut yang telah dipilih. Data yang memiliki nilai variabel yang lebih rendah dari threshold akan masuk ke anak kiri, sedangkan data dengan nilai variabel lebih tinggi akan masuk ke anak kanan. - Rekursi
Proses pemilihan variabel dan pembagian data akan berlanjut untuk setiap kelompok anak (child nodes) secara berulang (rekursif) sampai salah satu kondisi berhenti terpenuhi, seperti mencapai kedalaman maksimum pohon, jumlah sampel minimum di leaf node, atau ketika tidak ada variabel lagi yang dapat membagi data dengan lebih baik. - Penentuan Leaf Node
Ketika proses rekursif berhenti, maka node-node terakhir yang tidak dapat dibagi lagi akan menjadi leaf nodes. Setiap leaf node akan mewakili hasil klasifikasi (untuk masalah klasifikasi) atau prediksi nilai (untuk masalah regresi) dari model Decision Tree. - Pruning (Opsional)
Setelah pembentukan pohon selesai, tahap pruning dapat dilakukan untuk mengurangi overfitting. Pruning melibatkan penghapusan beberapa cabang atau node untuk mengurangi kompleksitas pohon dan meningkatkan generalisasi model terhadap data baru.
Referensi
Sampai disini dulu penjelasan terkait Decision Tree. Jika masih ada yang dibingungkan bisa langsung saja ramaikan kolom komentar atau hubungi admin melalui tombol bantuan di kanan bawah. Stay tuned di website https://exsight.id/blog/ agar tidak ketinggalan artikel-artikel menarik lainnya.
Pingback: Algoritma XGBoost Dalam Machine Learning #1 - Exsight