Klasifikasi Iris menggunakan Decision Tree
Teknik klasifikasi dengan pembentukan pohon keputusan merupakan salah satu teknik pengolahan data yang mampu merepresentasikan data menjadi informasi yang mudah untuk dipahami oleh hampir semua orang dibandingkan dalam bentuk tabel. Namun tidak mudah untuk membaca informasi yang hanya disajikan dengan tabel. Terlebih lagi jika tabel tersebut memiliki data yang banyak. Penyajian informasi dalam bentuk pohon keputusan menjadi alternatif tepat untuk data yang sangat banyak tersebut.
Metode Decision Tree merupakan salah satu metode supervised machine learning non parametric yang digunakan untuk klasifikasi yang merubah fakta yang sangat besar menjadi sebuah pohon keputusan. Salah satu library yang digunakan untuk menerapkan decision tree adalah Scikit-learn dalam bahasa pemrograman Python. Library Scikit-learn menerapkan algoritma CART (Classification and Regression Trees) , library ini menyediakan fitur untuk menangani data kategorikal. Studi kasus ini menggunakan scikit-learn untuk membuat model decision tree.
Decision Tree
Decision Tree (Pohon Keputusan) adalah pohon dimana setiap cabangnya menunjukkan pilihan diantara sejumlah alternatif pilihan yang ada, dan setiap daunnya menunjukkan keputusan yang dipilih. Decision tree biasa digunakan untuk mendapatkan informasi untuk tujuan pengambilan sebuah keputusan. Salah satu kelebihan Decision Tree yaitu daerah pengambilan keputusan yang sebelumnya kompleks dan sangat global, dapat diubah menjadi lebih simpel dan spesifik.
Metode decision tree dapat menghindari munculnya permasalahan ini dengan menggunakan kriteria yang jumlahnya lebih sedikit pada setiap node internal tanpa banyak mengurangi kualitas keputusan yang dihasilkan. Decision tree dimulai dengan sebuah root node (titik awal) yang dipakai oleh user untuk mengambil tindakan. Dari node root ini, user memecahnya sesuai dengan algoritma decision tree. Hasil akhirnya adalah sebuah decision tree dengan setiap cabangnya menunjukkan kemungkinan sekenario dari keputusan yang diambil serta hasilnya. [1]
Arsitektur pohon keputusan dibuat menyerupai bentuk pohon, dimana pada umumnya sebuah pohon terdapat akar (root), cabang dan daun (leaf). Pada pohon keputusan juga terdiri dari tiga bagian sebagai berikut :
a. Root node atau node akar merupakan node yang terletak paling atas dari suatu pohon.
b. Internal node Internal Node ini merupakan node percabangan, dimana pada node ini hanya terdapat satu input dan mempunyai minimal dua output.
c. Leaf node Node ini merupakan node akhir, hanya memiliki satu input, dan tidak memiliki output. Pada pohon keputusan setiap leaf node menandai label kelas.[2]
Atribute Selection measure yang digunakan pada Algoritma CART, yang merupakan algoritma yang diterapkan di scikit-learn decision tree, adalah Gini Index. Alat ukur ini mengukur purity dari setiap node, dimana jika nilainya lebih dari nol maka menunjukkan bahwa ada sampel yang termasuk di kelas yang lain [3].
Dataset
Dataset yang digunakan pada analisis ini adalah data dari R.A Fisher (https://archive.ics.uci.edu/ml/datasets/iris) Dataset ini berisi 3 kelas dengan 150 sample, yang berisi informasi atribut sebagai berikut :
1. sepal length in cm
2. sepal width in cm
3. petal length in cm
4. petal width in cm
Atribut prediksi (kelas dari bunga iris)
Target kelas ada 3 macam spesies bunga iris, yaitu spesies Setosa, Versicolour dan Virginica. Pada dataset kelas Setosa direpresentasikan dengan Iris-setosa, kelas Versicolor direpresentsikan dengan Iris-versicolor, kemudian kelas Virginica direpresentasikan dengan Iris-versicolor.
Ketika pengolahan data, dataset dipisah menjadi data training dan data testing, dengan komposisi 80% untuk data training dan 20% untuk data testing, saat mengklasifikasikan menggunakan DecisionTreeClassifier dengan value random_state=0, yang memperbolehkan parameter memilih acak, namun hasilnya tetap konsisten.
Decision Tree
Akurasi
Setelah model decision tree didapatkan, maka selanjutnya adalah melakukan evaluasi model. Evaluasi yang pertama dilakukan adalah pengujian dengan berbagai persentase data latih dan data uji untuk mengetahui berapa persentase yang baik untuk membangun model decision tree. Dari 150 data yang tersedia, dilakukan pemecahan data menjadi data train dan data test secara acak. Kemudian dilakukan perhitungan akurasi, precision, recall dan F1 measure.
Akurasi adalah perbandingan hasil klasifikasi yang sesuai dengan semua hasil klasifikasi. Recall adalah seberapa berhasil algoritma mengenali suatu kelas, sedangkan precision adalah seberapa tepat hasil klasifikasi dari keseluruhan data dan F1-measure merupakan gabungan recall dan precision yang mana mewakili keseluruhan kinerja metode.
Hasil akurasi dari model data test adalah 97% dengan tabel confusion matrix sebagai berikut :
Sedangkan untuk precison Recall f1-score dan akurasi adalah sebagai berikut :
References
[1] D. Setiawati, I. Taufik, J. Jumadi, and W. B. Zulfikar, “Klasifikasi Terjemahan Ayat Al-Quran Tentang Ilmu Sains Menggunakan Algoritma Decision Tree Berbasis Mobile,” J. Online Inform., vol. 1, no. 1, p. 24, 2016.
[2] H. Rosyid, “Pohon keputusan dengan algoritma c4.5.”
[3] R. Latifah, E. Setia, and P. Edi, “Model Decision Tree untuk Prediksi Jadwal Kerja menggunakan Scikit-Learn,” 2019.