• Tidak ada hasil yang ditemukan

KLASIFIKASI RANDOM FOREST PADA DATA IMBALANCED

N/A
N/A
Protected

Academic year: 2021

Membagikan "KLASIFIKASI RANDOM FOREST PADA DATA IMBALANCED"

Copied!
51
0
0

Teks penuh

(1)

KLASIFIKASI RANDOM FOREST PADA DATA IMBALANCED

LAILI FADILAH

PROGRAM STUDI MATEMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH

JAKARTA

(2)

i

KLASIFIKASI RANDOM FOREST

PADA DATA IMBALANCED

Skripsi

Diajukan kepada

Universitas Islam Negeri Syarif Hidayatullah Jakarta Fakultas Sains dan Teknologi

Untuk Memenuhi Salah Satu Persyaratan Dalam Memperoleh Gelar Sarjana Matematika (S.Mat)

Oleh:

Laili Fadilah 1111094000016

PROGRAM STUDI MATEMATIKA FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH JAKARTA

(3)

ii

LEMBAR PENGESAHAN

Skripsi ini berjudul “Klasifikasi Random Forest pada Data Imbalanced” yang ditulis oleh Laili Fadilah, NIM 1111094000016 telah diuji dan dinyatakan lulus dalam sidang munaqosah Fakultas Sains dan Teknologi Universitas Islam Negeri Syarif Hidayatullah Jakarta pada hari, 2018. Skripsi ini telah diterima untuk memenuhi salah satu persyaratan dalam memperoleh gelar sarjana Strata Satu (S1) Program Studi Matematika.

Menyetujui, Pembimbing I

Drs. Slamet Aji Pamungkas, M. Eng NIP. 19670618 199011 001

Pembimbing II

Muhaza Liebenlito, M.Si NIDN. 2003098802

Penguji I

Mahmudi, M. Si NIDN. 2029048801

Penguji II

M. Syamsuddin Wisnubroto, M.Si

Mengetahui, Dekan Fakultas Sains dan Teknologi

Dr. Agus Salim, M.Si NIP. 19720816 199903 1 003

Ketua Program Studi Matematika

Dr. Nina Fitriyati, M.Kom NIP. 19760414 200604 2 001

(4)

iii

PERNYATAAN

DENGAN INI SAYA MENYATAKAN BAHWA SKRIPSI INI BENAR-BENAR HASIL KARYA SENDIRI YANG BELUM PERNAH DIAJUKAN SEBAGAI SKRIPSI PADA PERGURUAN TINGGI ATAU LEMBAGA MANAPUN.

Jakarta, Juni 2018

Laili Fadilah 1111094000016

(5)

iv

PERSEMBAHAN DAN MOTTO

PERSEMBAHAN

Skripsi ini saya persembahkan untuk :

Kedua orang tua saya yang selalu memberikan doa, dukungan, motivasi, dan semangat yang tiada henti demi kesuksesan anaknya.

MOTTO

(6)

v

ABSTRAK

Laili Fadilah, Klasifikasi Random Forest pada Data Imbalanced. Di bawah

bimbingan Drs. Slamet Aji Pamungkas, M. Eng dan Muhaza Liebenlito, M.Si

Random Forest merupakan salah satu metode klasifikasi yang berisi kumpulan

dari pohon keputusan (ensemble). Namun pada data yang besar (big data) dapat mempengaruhi keseimbangan kelas (imbalanced) yang menyebabkan meningkatnya bias terhadap kelas mayoritas dan mengurangi kinerja klasifikasi. Sampling data dilakukan untuk menyeimbangkan gugus data sehingga tingkat keseimbangan yang diinginkan tercapai. Sampling data dilakukan dengan menggunakan metode Random Under Sampling, Random Over Sampling, SMOTE. Hasilnya diperoleh performa pada metode ROS, SMOTE, dan tanpa sampling memperoleh performa yang lebih baik, bila dibandingkan dengan metode RUS yang kurang begitu baik. Sedangkan hasil pengklasifikasian pada

Random Forest diperoleh mtry terbaik adalah 4 dan ntree terbaik adalah 1000. Kata Kunci : Random Forest, Data Sampling, Imbalanced Data.

(7)

vi

ABSTRACT

Laili Fadilah, Random Forest Classification in Imbalanced Data. Under the

guidance of Drs. Slamet Aji Pamungkas, M. Eng and Muhaza Liebenlito, M.

Si.

Random Forest is one of classification method that contains a collection of

decision tree (ensemble). However, large data can affect the class balance (imbalanced) that would caused increasing bias towards the majority class and reduce the classification performance. Sampling data was used to balance the data until the desired level of balance is achieved. Sampling data was done by using Random Under Sampling method, Random Over Sampling, and SMOTE. The result obtained that ROS, SMOTE, and without sampling have better performance when compared with the RUS method which has lower performance. The results of classification on Random Forest obtained best mtry is 4 and best ntree is 1000.

(8)

vii

KATA PENGANTAR

Assalamu’alaikum Wr. Wb.

Segala puji bagi Allah SWT yang telah memberikan Nikmat dan Rahmat-Nya kepada kita semua, Sholawat serta salam semoga senantiasa tercurahkan kepada Nabi Muhammad SAW, beserta keluarganya dan para sahabatnya.

Dengan segala kemudahan yang telah diberikan oleh Allah SWT, penulis dapat menyelesaikan penelirian dengan judul “Klasifikasi Random Forest pada

Data Imbalanced”.

Penulis menyadari bahwa penelitian ini dapat diselesaikan berkat dukungan dan bantuan dari beberapa pihak. Untuk itu, pada kesempatan ini penulis ingin menyampaikan terima kasih kepada:

1. Kedua orang tuaku tercinta Bapak Madina dan Ibu Taty, kakakku Nur Faizah serta keluarga-keluargaku yang tidak pernah berhenti memberikan doa, kasih sayang, semangat, serta dukungannya sehingga penulis dapat menyelesaikan penelitian ini.

2. Bapak Dr. Agus Salim, M.Si selaku Dekan Fakultas Sains dan Teknologi. 3. Ibu Dr. Nina Fitriyati, M.Kom selaku Ketua Program Studi Matematika

UIN Syarif Hidayatullah Jakarta.

4. Bapak Drs. Slamet Aji Pamungkas, M. Eng dan Bapak Muhaza Liebenlito, M.Si selaku pembimbing yang telah membantu penulis dalam menyelesaikan penelitian ini.

5. Bapak Mahmudi, M.Si dan Bapak M. Syamsuddin Wisnubroto, M.Si selaku penguji yang memberikan koreksi membangun dalam penelitian ini.

6. Bapak Taufik Edy Susanto, yang telah memberikan ide kepada penulis. 7. Seluruh Dosen dan Karyawan Program Studi Matematika, yang telah

mengajarkan banyak hal yang sangat bermanfaat bagi penulis. 8. Teman-teman seperjuangan, Dwi, Mare, Indah, Dini.

9. Teman-teman yang sudah banyak membantu, menyemangati dan mengajari penulis, Donat dan Utih, Dewi, Ujo, .

(9)

viii

10. Teman-teman sosialita yang tidak pernah lelah menyemangati dan memberi dorongan kepada penulis, Veli, Qori, Rani, Gina, Nisa.

11. Seluruh teman-teman Matematika 2011 yang senantiasa membantu, menemani dan memberikan semangat kepada penulis.

12. Semua pihak yang sudah membantu penulis dalam mengerjakan penelitian ini yang tidak dapat penulis sebutkan satu persatu.

Penulis menyadari bahwa dalam penelitian ini masih banyak kekurangan. Oleh karena itu, penulis mengharapkan kritik dan saran yang bersifat membangun untuk perbaikan di masa yang akan datang. Dan akhirnya, penulis berharap semoga penelitian ini dapat bermanfaat.

Wassalamu’alaikum Wr. Wb.

Jakarta, Juni 2018

(10)

ix

DAFTAR ISI

LEMBAR JUDUL ... i

LEMBAR PENGESAHAN ... ii

PERNYATAAN ... iii

PERSEMBAHAN DAN MOTTO ... iv

ABSTRAK ... v

ABSTRACT ... vi

KATA PENGANTAR ... vii

DAFTAR ISI ... ix

DAFTAR GAMBAR ... xi

DAFTAR TABEL ... xii

BAB I PENDAHULUAN ... 1 1.1 Latar Belakang ... 1 1.2 Rumusan Masalah ... 3 1.3 Tujuan Penelitian ... 3 1.4 Batasan Masalah ... 4 1.5 Manfaat Penelitian ... 4

BAB II TINJAUAN PUSTAKA ... 5

2.1 Data Sampling ... 5

2.2 Decision Tree ... 9

2.3 Classification And Regression Tree (CART) ... 11

2.4 Random Forest ... 16

2.4.1 Tingkat Misklasifikasi (Out of Bag Error) ... 19

2.4.2 Variable Importance (Variabel Terpenting) ... 20

2.5 Confusion Matrix ... 20

BAB III METODOLOGI PENELITIAN ... 22

3.1 Data dan Variabel Penelitian... 22

3.2 Metode Pengolahan dan Analisis Data ... 23

3.2.1 Sampling Data ... 23

(11)

x

3.3 Diagram Alur Penelitian ... 24

BAB IV HASIL DAN PEMBAHASAN ... 26

4.1 Persiapan Data ... 26

4.2 Sampling Data ... 26

4.3 Klasifikasi dengan Random Forest ... 28

4.3.1 Pemilihan mtry dan ntree ... 29

4.3.2 Rataan Tingkat Misklasifikasi (Out Of Bag Error) ... 29

4.3.3 Variable Importance (Variabel Terpenting) ... 31

4.4 Prediksi Hasil Testing ... 32

BAB V KESIMPULAN DAN SARAN ... 34

5.1 Kesimpulan ... 34

5.2 Saran ... 35

(12)

xi

DAFTAR GAMBAR

Gambar 2. 1 Struktur Decision Tree ... 10

Gambar 2. 2 Hasil pohon sementara ... 15

Gambar 2. 3 Bentuk pohon penuh ... 16

Gambar 2. 4 Contoh bentuk Out of Bag ... 19

Gambar 3. 1 Diagram alur penelitian ... 25

Gambar 4. 1 Hasil Out of Bag Error ... 30

(13)

xii

DAFTAR TABEL

Tabel 2. 1 Contoh Data yang Akan Di Sampling ... 6

Tabel 2. 2 Hasil ROS... 7

Tabel 2. 3 Hasil SMOTE ... 8

Tabel 2. 4 Contoh data untuk pembentukan CART ... 13

Tabel 2. 5 Banyaknya record untuk variabel buying ... 14

Tabel 2. 6 Hasil perolehan Ginisplit ... 14

Tabel 2. 7 Confusion Matrix ... 21

Tabel 4. 1 Hasil sampling RUS, ROS, dan SMOTE ... 27

Tabel 4. 2 Hasil performa dari RUS, ROS, SMOTE, dan Tanpa Sampling ... 27

Tabel 4. 3 Out of Bag Error (Rataan Tingkat Misklasifikasi) ... 30

(14)

1

BAB I

PENDAHULUAN

1.1 Latar Belakang

Banyak metode yang dapat digunakan untuk mengklasifikasikan data, salah satunya adalah Decision Tree. Decision Tree merupakan salah satu metode pengambilan keputusan. Ide dasar dari Decision Tree adalah pembentukan pohon keputusan. Pembentukan pohon pada Decision Tree ini diperoleh dengan mengklasifikasikan variabel-variabel ke dalam pohon mulai dari simpul akar hingga ke simpul daun (simpul akhir). Karena pertumbuhan pohon pada Desicion

Tree di tumbuhkan hingga mencapai kehomogenan, hal ini dapat mengakibatkan overfitting, sehingga diperlukan suatu metode yang dapat mengatasi hal ini.

Metode untuk menghindari overfitting ini dapat dilakukan dengan memangkas pohon (pruning) atau dapat menggunakan metode ensemble. Pemangkasan pohon (pruning) dapat dilakukan dengan algoritma CART, sedangkan penggunaan metode ensemble dapat menggunakan Random Forest.

Random Forest merupakan salah satu metode klasifikasi yang berisi

kumpulan dari pohon keputusan (ensemble). Banyak keuntungan yang diperoleh dengan menggunakan Random Forest seperti tahan terhadap outliers dan noise, serta mudah digunakan [2]. Namun pada data yang besar (big data) dapat mempengaruhi keseimbangan kelas (imbalanced) yang menyebabkan meningkatnya bias terhadap kelas mayoritas dan mengurangi kinerja klasifikasi

(15)

2 [2]. Salah satu cara dalam mengatasi masalah ini adalah dengan melakukan sampling data. Sampling data dilakukan untuk menyeimbangkan gugus data sehingga tingkat keseimbangan yang diinginkan tercapai [2].

Pada tahun 2014, Jamilu Awwalu melakukan penelitian yang berjudul “Performance Comparison of Data Mining Algorithm: A Case Study on Car

Evaluation Dataset” yaitu dengan membandingkan performa dari beberapa

algoritma yaitu Decision Tree, Artificial Neural Network (ANN), dan Naïve Bayes yang masing-masing menghasilkan akurasi sebesar 93.51%, 92.1% dan 93.51% [1]. Lalu pada tahun 2015, David J. Dittman, Taghi M. Khoshgoftaar dan Amri Napolitano melakukan penelitian yang berjudul “The Effect of Data Sampling

When Using Random Forest on Imbalanced Bioinformatics Data” yang menguji

pengaruh sampling data dengan menggunakan tiga teknik sampling data, yaitu

Random Under Sampling, Random Over Sampling, dan Synthetic Minority Oversampling (SMOTE) [6]. Dari penelitian tersebut diperoleh bahwa sampling

data memang meningkatkan kinerja klasifikasi Random Forest, namun analisis statistik menunjukkan bahwa peningkatan kinerja tidak signifikan secara statistik. Sehingga penggunaan sampling data tidak perlu dilakukan karena Random Forest cukup kuat dalam mengatasi data yang imbalanced. Oleh karena itu peneliti tertarik untuk mencoba mengklasifikasikan data acceptability car yang mempunyai data imbalance dengan menggunakan algoritma Random Forest. Berdasarkan penjelasan di atas, maka penulis akan melakukan penelitian yang berjudul “Klasifikasi Random Forest pada Data Imbalanced”.

(16)

3

1.2 Rumusan Masalah

Permasalahan yang akan dikaji berdasarkan latar belakang di atas adalah: 1. Bagaimana mengklasifikasi kelayakan mobil dengan menggunakan

algoritma Random Forest?

2. Bagaimana performa Random Forest pada data yang imbalanced?

3. Bagaimana hasil akurasi dari algoritma Random Forest jika dibandingkan dengan metode Decision Tree, ANN, dan Naïve Bayes?

4. Variabel manakah yang paling berpengaruh dalam pengklasifikasian kelayakan mobil?

1.3 Tujuan Penelitian

Tujuan penelitian dalam skripsi ini adalah sebagai berkut:

1. Menerapkan algoritma Random Forest dalam mengklasifikasi data kelayakan mobil.

2. Mengetahui apakah Random Forest dapat digunakan pada data yang

imbalanced.

3. Mengetahui tingkat akurasi dari hasil klasifikasi dengan menggunakan algoritma Random Forest.

4. Mengetahui variabel-variabel yang berpengaruh dalam penentuan klasifikasi kelayakan mobil.

(17)

4

1.4 Batasan Masalah

Dalam penelitian ini, penulis memberikan batasan masalah agar lebih terarah. Masalah yang akan penulis batasi adalah sebagai berikut:

1. Data yang digunakan adalah data Acceptability Car yang diambil dari situs UCI Machine Learning yang dapat diakses di http://archieve.ics.uci.edu. 2. Pembagian data ke dalam data training dan testing dilakukan secara acak,

sehingga hasil hanya berlaku pada data yang digunakan.

3. Proses sampling data menggunakan metode Random Under Sampling,

Random Over Sampling, dan Synthetic Minority Oversampling (SMOTE).

4. Penelitian dilakukan dengan mengklasifikasi data training dengan mtry yang dicobakan adalah 2 dan 4 dan banyaknya ntree 25, 50, 100, 500, 1000, 1500, dan 2000 yang kemudian diuji dengan data testing.

1.5 Manfaat Penelitian

Penelitian ini diharapkan bisa memberikan manfaat sebagai berikut:

1. Menambah pengetahuan dalam mengatasi klasifikasi pada data yang

imbalanced.

2. Menambah pengetahuan tentang teknik klasifikasi dengan Random Forest. 3. Dapat menjadi bahan acuan untuk penelitian dengan masalah yang sama

(18)

5

BAB II

TINJAUAN PUSTAKA

2.1 Data Sampling

Data sampling adalah teknik preprocessing suatu data yang dapat digunakan untuk mengatasi ketidakseimbangan kelas (imbalanced). Proses ini dilakukan dengan memodifikasi gugus data sehingga mempunyai distribusi kelas yang seimbang. Proses data sampling ini dapat diperoleh baik dengan berbagai cara seperti menghapus sampel dari kelas mayoritas atau menambahkan sampel dari kelas minoritas. Selain itu proses modifikasinya juga dapat dilakukan secara acak dan penambahan sampel dapat menggunakan duplikasi dari sampel yang telah ada atau dapat dibuat secara sintetik berdasarkan sampel yang sudah ada. Teknik sampling data ini dapat dilakukan dengan tiga cara [2]:

1. Random Under Sampling, yaitu teknik sampling untuk menciptakan

keseimbangan antara kelas yang tidak seimbang dengan cara mengurangi ukuran sampel kelas mayoritas. Pengurangan ini diperoleh dengan cara menghapus sampel secara random kelas mayoritas sampai rasio kelas yang diinginkan terpenuhi.

2. Random Over Sampling, yaitu teknik sampling yang berusaha meningkatkan

keseimbangan kelas dengan menambah ukuran kelas minoritas. Penambahan ini dilakukan dengan menduplikat sampel secara random dari

(19)

6 kelas minoritas sampai rasio kelas yang diinginkan terpenuhi. Sebagai contoh dapat dilihat pada Tabel 2.1.

Tabel 2. 1 Contoh Data yang Akan Di Sampling

buying maint doors persons lug_boot safety class

1 med med 2 4 big high vgood

2 low med 2 4 big high vgood

3 med low 2 4 small high good

4 med low 2 more med high good

5 med low 3 more small high good

6 low med 2 4 big med good

7 low med 2 more med med acc

8 low high 2 2 big low unacc

9 low low 5more more small med acc

10 vhigh med 2 4 small high acc

11 high high 2 4 small high acc

12 vhigh vhigh 2 2 small low unacc

13 vhigh vhigh 2 more small high unacc

14 vhigh low 5more 4 small med unacc

15 med med 5more more big low unacc

16 high vhigh 2 2 big high unacc

17 high high 3 2 small low unacc

18 high med 5more more med low unacc

19 med vhigh 2 4 small med unacc

20 med high 5more more big low unacc

Pada Tabel 2.1 terdapat 20 data dimana terdapat 2 kelas minoritas (vgood), 10 kelas mayoritas (unacc), dan masing-masing 4 kelas good dan acc, maka

Random Over Sampling diperoleh dengan cara menduplikat secara random

(20)

7 banyaknya masing-masing kelas adalah 10, karena masing-masing kelas mengikuti kelas mayoritas. Hasil ini dapat dilihat pada Tabel 2.2

Tabel 2. 2 Hasil ROS

buying maint doors persons lug_boot safety class

1 med med 2 4 big high vgood

2 low med 2 4 big high vgood

3 med low 2 4 small high good

4 med low 2 more med high good

5 med low 3 more small high good

6 low med 2 4 big med good

7 low med 2 more med med acc

8 low high 2 2 big low unacc

9 low low 5more more small med acc

10 vhigh med 2 4 small high acc

11 high high 2 4 small high acc

12 vhigh vhigh 2 2 small low unacc

13 vhigh vhigh 2 more small high unacc

14 vhigh low 5more 4 small med unacc

15 med med 5more more big low unacc

16 high vhigh 2 2 big high unacc

17 high high 3 2 small low unacc

18 high med 5more more med low unacc

19 med vhigh 2 4 small med unacc

20 med high 5more more big low unacc

21 low low 5more more small med acc

22 high high 2 4 small high acc

23 med low 3 more small high good

24 low med 2 4 big med good

(21)

8

26 low med 2 4 big high vgood

Dari Tabel 2.2 diperoleh hasil ROS, dimana data yang ditebalkan merupakan data hasil Random Over Sampling. Dari tabel di atas juga terlihat bahwa data dilakukan secara random. Terlihat pada data ke-21 merupakan hasil duplikat dari data ke-9. Begitu pula pada data ke-22 dan seterusnya perolehan data di ambil secara random.

3. Synthetic Minority Over Sampling TEchnique (SMOTE), yaitu teknik

sampling yang meningkatkan keseimbangan dengan menambah jumlah kelas minoritas melalui pembuatan sampel minoritas yang baru di sepanjang segmen garis yang menghubungkan setiap/semua tetangga kelas k minoritas yang dekat. Tetangga dari k-nearest neighbor dipilih bergantung pada jumlah over sampling yang diperlukan [5]. Teknik SMOTE ini juga dapat digabung dengan melakukan Under Sampling. Sebagai contoh dari Tabel 2.1 akan dilakukan SMOTE, sehingga diperoleh hasilnya pada Tabel 2.3.

Tabel 2. 3 Hasil SMOTE

buying maint doors persons lug_boot safety class

13 vhigh vhigh 2 more small high unacc

12 vhigh vhigh 2 2 small low unacc

16 high vhigh 2 2 big high unacc

20 med high 5more more big low unacc

15 med med 5more more big low unacc

6 low low 5more more small med acc

7 low med 2 more med med acc

(22)

9

10 vhigh med 2 4 small high acc

11 high high 2 4 small high acc

111 med low 2 4 med high good

3 med low 2 4 small high good

4 med low 2 more med high good

5 med low 3 more small high good

61 low med 2 4 big med good

161 med med 2 4 big high vgood

17 low med 2 4 big high vgood

18 low med 2 4 big high vgood

19 med med 2 4 big high vgood

201 low med 2 4 big high vgood

Tabel 2.3 merupakan hasil dari SMOTE, dimana data yang ditebalkan merupakan hasil sintesis (buatan) yang diperoleh dari pembuatan sampel yang baru di sepanjang segmen garis yang menghubungkan setiap/semua tetangga kelas k yang terdekat.

2.2 Decision Tree

Decision Tree pertama kali dikembangkan oleh J.R. Quinlan tahun 1986. Decision Tree (pohon keputusan) merupakan implementasi yang dikembangkan

untuk mencari dan memperoleh suatu keputusan dengan mempertimbangkan berbagai macam faktor yang berkaitan dalam lingkup masalah tersebut. Struktur

Decision Tree terdiri dari root node (simpul akar), internal node (simpul cabang)

dan leaf node (simpul daun). Simpul akar merupakan simpul utama yang kemudian akan terus membelah hingga mencapai simpul daun, sedangkan simpul

(23)

10 cabang merupakan turunan dari simpul akar yang masih akan terus membelah. Bentuk Decision Tree dapat dilihat pada Gambar 2.1

Gambar 2. 1 Struktur Decision Tree

Proses pembelahan simpul diperoleh dengan melakukan suatu perhitungan yang dikenal dengan Information Gain. Information Gain dilakukan untuk mencari variabel yang akan dipilih untuk menumbuhkan pohon. Untuk memperoleh Information Gain dilakukan perhitungan yang biasa digunakan dalam information theory yaitu Entropy. Misalkan diberikan koleksi S, dengan target positif dan negatif, maka Entropy dari S adalah [11]:

( )

dimana

: peluang kelas : peluang kelas

Dari hasil Entropy tersebut kemudian dapat dicari nilai untuk Information

(24)

11

( ) ( ) ∑ | |

| | ( ) ( )

dimana

( ) : himpunan nilai yang mungkin untuk variabel A

: subset dari S untuk variabel A yang mempunyai nilai v

Proses pencarian Information Gain tersebut terus dilakukan hingga semua simpul cabang mencapai simpul daun. Karena proses pembentukan pohon dilakukan secara sempurna pada data training, terkadang hal ini dapat menyebabkan kesulitan ketika terdapatnya noise pada data atau terlalu sedikitnya sampel pada data training yang dapat merepresentasikan target sebenarnya. Hal seperti ini dapat menyebabkan terjadinya overfitting. Overfitting terjadi ketika hasil akurasi dari data training menunjukkan hasil yang baik sedangkan hasil akurasi pada data testing tidak terlalu baik. Sehingga untuk mengatasi masalah ini dapat dilakukan dengan berbagai cara seperti melakukan pemangkasan pohon (pruning) atau dengan melakukan metode ensemble. Proses pemangkasan pohon dapat dilakukan dengan algoritma CART sedangkan untuk metode ensemble salah satunya dapat dilakukan dengan algoritma Random Forest.

2.3 Classification And Regression Tree (CART)

Proses pembentukan CART hampir mirip dengan pembentukan Decision

Tree. Hanya saja, dalam CART proses pemecahan simpulnya tidak menggunakan entropy, namun menggunakan indeks gini. Proses pembentukan CART dilakukan

(25)

12 1. Proses pemecahan dan pelabelan simpul. Pada proses ini dilakukan pemecahan pada simpul akar menjadi dua cabang. Proses pemecahan simpul ini dilakukan dengan menggunakan indeks gini:

( ) ∑ dimana

: frekuensi relatif dari kelas dalam : banyaknya variabel

Setelah dicari Indeks Gini, kemudian data dipilah menjadi dua subset dan dengan ukuran dan , lalu dicari Gini Split.

( ) ( ) ( )

Proses tersebut terus dilakukan pada tiap variabel hingga diperoleh terkecil. Selanjutnya proses pelabelan kelas diperoleh dari hasil terkecil.

2. Proses penghentian pembentukan pohon. Proses ini dilakukan jika pohon telah ditumbuhkan hingga maksimum dan bersifat homogen, artinya tiap objek telah masuk pada kelas yang sama.

3. Proses pemangkasan pohon. Pemangkasan pohon dapat dilakukan dengan dua cara. Yang pertama dengan memberhentikan pertumbuhan pohon sebelum mencapai maksimum dan yang kedua menumbuhkan pohon hingga maksimum kemudian memangkasnya.

(26)

13 Untuk lebih jelasnya, diberikan contoh pembentukan pohon dengan metode CART. Hal ini dapat dilihat pada Tabel 2.4. Misalkan diambil lima sampel dengan tiga kelas yaitu unacc sebanyak 2, acc sebanyak 2, dan vgood sebanyak 1.

Tabel 2. 4 Contoh data untuk pembentukan CART

buying maint doors persons lug_boot safety class

med med 3 more small low unacc

med med 3 4 med med acc

low high 3 more med high vgood

low high 5more more small med acc

low med 2 2 small low unacc

Karena data yang digunakan semuanya bersifat kategorik, maka tiap variabel dicari Indeks Gini dari masing-masing subset yang nantinya akan digunakan untuk pemecahan. Misalnya, untuk variabel doors, maka dicari Indeks Gini dari subset {3, 5more}, {3, 2}, dan {5more, 2}. Sedangkan jika data bersifat numerik atau ordinal maka tiap variabel dihitung nilai tengah dari jarak antar kelas. Sebelum mencari Indeks Gini dari masing-masing subset, terlebih dahulu dicari ukuran Indeks Gini dari partisi kelas dari data T adalah sebagai berikut

( ) ( ) ( ) ( )

Selanjutnya dicari Ginisplit dari masing-masing variabel. Misalnya pertama dipilih variabel buying yang kemudian akan dicari Ginisplit(buying). Untuk mempermudah perhitungan, dapat dibuat tabel seperti pada Tabel 2.5 yang menunjukkan banyaknya masing-masing kelas pada variabel buying.

(27)

14

Tabel 2. 5 Banyaknya record untuk variabel buying

Variabel Banyaknya record unacc acc vgood N=5

med 1 1 0 n1=2

low 1 1 1 n2=3

Ginisplit (buying) ( ) ( )

( . / . / ) ( . / . / . / ) = 0.6

Pencarian Ginisplit kemudian dilanjutkan untuk variabel yang lainnya yang kemudian dipilih perolehan Ginisplit terkecil. Perolehan Ginisplit dari masing-masing variabel disajikan pada Tabel 2.6.

Tabel 2. 6 Hasil perolehan Ginisplit

Value

Ginisplit (buying) 0.6

Ginisplit (maint) 0.467

Ginisplit (doors {3,5more}) 0.5

Ginisplit (doors {3,2}) 0.5

Ginisplit(doors {5more,2}) 0.6

(28)

15 Ginisplit (persons {more,4}) 0.5

Ginisplit(persons {4,2}) 0.6

Ginisplit (maint) 0.467

Ginisplit (safety {low,med}) 0.4

Ginisplit (safety {low,high}) 0.267

Ginisplit (safety {med,high}) 0.267

Dari tabel di atas diperoleh terkecil adalah Ginisplit safety {low,high}) dan Ginisplit(safety {med,high}). Sehingga kita dapat memilh salah satu dari subset tersebut untuk dijadikan pemilah. Misalkan kita ambil Ginisplit(safety {low,high}) sebagai pemilah. Setelah diperoleh terkecil, kemudian dicari reduksi dari penurunan impurity, yaitu:

( )

Gambar 2. 2 Hasil pohon sementara

Pada Gambar 2.2 karena safety {high} hanya berisi kelas acc, maka simpul kanan sudah homogen, sehingga tidak perlu lagi dilakukan pemecahan.

(29)

16 Sedangkan untuk simpul kiri, kelas masih bersifat heterogen, sehingga dilakukan pemecahan selanjutnya. Pemilihan variabel yang akan dijadikan pemilah berikutnya dilakukan dengan mencari kembali terkecil dari masing-masing subset yang tersisa dari hasil safety {low,high}. Hasil akhir dari pembentukan pohon CART dapat dilihat pada Gambar 2.3.

Gambar 2. 3 Bentuk pohon penuh

2.4 Random Forest

Random forest pertama kali diperkenalkan oleh Leo Breiman tahun 2001. Random Forest merupakan modifikasi dari bagging [8]. Hanya saja, pada Random Forest terdapat penambahan pada random sub sampling atau pemilihan m variabel

yang digunakan dalam membangun pohon. Proses pembentukan pohon dalam

random forest sama dengan proses pada CART, hanya saja tidak dilakukan pruning (pemangkasan).

(30)

17

Random forest merupakan suatu metode klasifikasi yang berisi koleksi dari

pohon klasifikasi. Misalkan * ( ) + dimana * + merupakan vekor random yang iid (independent identically distributed) dan tiap pohon memilih kelas yang paling banyak dari data (majority vote). Misalkan suatu ensemble ( ) ( ) ( ) dengan data training dipilih secara random dari distribusi vektor random Y dan X, fungsi margin ( ( )) dari random forest didefinisikan sebagai berikut [4]:

( ) ∑ ( ( ) ) *

( ( ) ) +

dimana adalah fungsi indikasi dan adalah banyaknya pohon. Fungsi margin digunakan untuk mengukur tingkat banyaknya jumlah vote pada X dan Y rata-rata vote dari kelas yang lain.

Strength (kekuatan) adalah rata-rata (ekspektasi) ukuran kekuatan akurasi

pohon tunggal. Nilai s yang semakin besar menunjukkan bahwa akurasi prediksinya semakin baik. Nilai s di definisikan sebagai berikut [4]:

( )

Rata-rata korelasi ( ̅) antar pasangan dugaan dari dua pohon tunggal dalam

random forest di definisikan sebagai berikut [4]

̅ ( ( ) ( ) ( )) ( ( ) ( ))

dimana ( ) ( ) ( ) merupakan korelasi antar pohon.

Batasan besarnya kesalahan prediksi ( ) oleh Random Forest adalah:

̅ (

(31)

18 Dari persamaan tersebut dapat dikatakan bahwa jika ingin memperoleh error yang kecil maka harus memiliki korelasi kecil dan memperkuat strength. Oleh karena itu diperlukan untuk mengubah nilai m dan ntree. Dengan memperkecil nilai m, maka memperkecil pula korelasi dan strength. Begitu pula dengan nilai

ntree. Jika ntree besar berarti kesamaan data diantara tiap-tiap pohon sangat

tinggi. Akan tetapi, jika pemilihan m dan ntree sangat rendah, mengartikan setiap pohon akan kehilangan beberapa informasi penting dan akan menaikkan error. Sehingga pemilihan m dan ntree sangat berpengaruh dalam Random Forest.

Berikut ini adalah algoritma Random Forest [7]:

1. Buat suatu bootsrap sample atau pengambilan sampel dengan replacement (pengembalian) dari suatu ukuran dari gugus data.

2. Pilih variabel secara random dari variabel, dimana . Biasanya ukuran terbaik dipilih melalui aproksimasi dari akar kuadrat dari total jumlah variabel, yaitu ⌊√ ⌋ . Menurut Leo Breiman [4], nilai juga dapat diperoleh dari dua kali nilai akar kuadrat dari total jumlah variabel ( ⌊√ ⌋) dan setengah dari nilai akar kuadrat dari total jumlah variabel ( ⌊√ ⌋).

3. Setelah dilakukan pemilihan secara random, maka pohon ditumbuhkan tanpa pruning (pemangkasan). Pemecahan simpul terbaik dalam suatu pohon dilakukan dengan menggunakan indeks gini.

4. Langkah 1-3 dilakukan sebanyak kali hingga terbentuk suatu forest (klasifier) sebanyak pohon.

(32)

19 5. Setelah terbentuk forest, kemudian dicari nilai misklasifikasi error (Out of

Bag Error) untuk mendapatkan mtry optimal dan diperoleh tingkat

kepentingan variabel (Variable Importance) yang lebih stabil.

6. Untuk prediksi suatu kelas dilakukan dengan majority vote (suara terbanyak).

2.4.1 Tingkat Misklasifikasi (Out of Bag Error)

Salah satu fitur penting dalam random forest adalah penggunaan out-of-bag (OOB). Misalkan untuk setiap dataset, OOB merupakan data dalam sampel yang tidak masuk dalam proses pemecahan (pembentukan pohon). Perolehan estimasi dalam OOB dapat diilustrasikan pada Gambar 2.4.

Gambar 2. 4 Contoh bentuk Out of Bag[12]

Pada Gambar 2.4 misalkan terdapat data sebanyak 7 data (kotak kiri). Dari 7 data tersebut sebagian data di ambil dengan cara bootstrap (kotak tengah) untuk dibentuk pohon klasifikasi (kotak merah) dan sisanya merupakan OOB yang digunakan untuk mencari errornya (kotak kanan). Sesudah pohon terbentuk kemudian data OOB dimasukkan ke dalam pohon dan di peroleh satu dari empat

(33)

20 data OOB yang salah klasifikasi, sehingga diperoleh hasil OOB errornya adalah ⁄ (kotak kuning).

2.4.2 Variable Importance (Variabel Terpenting)

Variable importance diperoleh berdasarkan rataan pemecah terbaik yang

diperoleh dari pemecahan masing-masing pohon dan diakumulasikan secara terpisah untuk setiap variabel. Proses ini disebut Mean Decrease Gini (MDG), yaitu:

∑, ( ) (

)-dimana,

: banyaknya pohon yang terbentuk

( ) : besaran penurunan indeks gini pada variabel saat simpul ke ( ) : 1 saat berada pada simpul , dan 0 lainnya.

2.5 Confusion Matrix

Confusion matrix merupakan matriks yang biasanya digunakan untuk

merepresentasikan hubungan antara atribut kelas sebenarnya dan kelas prediksinya. Confusion matrix juga digunakan untuk melihat performa suatu model. Elemen diagonal dari confusion matrix mengindikasikan prediksi benar, sedangkan sisi diagonal lainnya mengindikasikan prediksi salah [13].

Pada Tabel 2.7 berikut menggambarkan perbandingan kelas yang sebenarnya dengan kelas prediksi. (True Positives) merupakan banyaknya

(34)

21 sampel positif yang diklasifikasikan benar. (True Negatives) merupakan banyaknya sampel negatif yang diklasifiksikan benar. (False Negative) merupakan banyaknya sampel positif yang diklasifikasikan salah. (False

Positive) merupakan banyaknya sampel negatif yang dilklasifikasikan salah. Tabel 2. 7 Confusion Matrix

Predicted Positive Class Predicted Negative Class

Actual Positive Class

Actual Negative Class

Ukuran dalam mengevaluasi kinerja model berdasarkan confusion matrix ada berbagai macam, diantaranya adalah akurasi, recall, specificity, presisi, dan

F-Measure. Akurasi dalam confusion matrix adalah presentase kebenaran dari hasil

prediksi pada test data. Recall adalah ukuran proporsi dari TP dan specificity adalah ukuran proporsi dari TN. Presisi merupakan ukuran proporsi prediksi TP. Sedangkan F-Measure hasil yang merepresentasikan presisi dan recall. Akurasi,

recall, specificity, presisi, dan F-Measure dapat diperoleh sebagai berikut:

Akurasi = Recall = Specivicity = Presisi = F-Measure =

(35)

22

BAB III

METODOLOGI PENELITIAN

3.1 Data dan Variabel Penelitian

Data yang digunakan dalam penelitian ini adalah data tentang evaluasi kelayakan mobil (acceptability car) oleh Marco Bohanec. Data ini merupakan data sekunder yang diperoleh dari situs University of California-Irvine (UCI)

Machine Learning Repository yang dapat diakses di http://archieve.ics.uci.edu.

Jumlah data dalam penelitian ini sebanyak 1728 data dengan banyaknya variabel data yaitu 7 variabel yang terdiri dari 6 variabel independen dan 1 variabel dependen. Data ini bersifat kategorik dan terbagi atas 4 kelas. Variabel-variabel dalam penelitian ini dijelaskan sebagai berikut:

1. Car acceptability (class). Merupakan variabel yang dijadikan sebagai

variabel dependen. Variabel ini memiliki empat kategori, yaitu:

unacceptable (unacc) sebanyak 1207 data (69.85%), acceptable (acc)

sebanyak 385 data (22.28%), good sebanyak 70 (4.05%), dan very good (vgood) sebanyak 66 (3,82%) .

2. Buying Price (buying). Variabel ini dikategorikan dalam empat tingkat:

sangat tinggi (vhigh), tinggi (high), sedang (med), dan rendah (low).

3. Maintenance Price (maint). Variabel ini dibagi menjadi empat kategori,

(36)

23 4. Number of doors (doors). Variabel ini memiliki 4 kategori yaitu: dua pintu,

tiga pintu, empat pintu, dan lima atau lebih pintu.

5. Number of Persons (persons). Variabel ini dibagi menjadi 3 kategori , yaitu:

dua orang, empat orang, dan selebihnya.

6. Size of Luggage (lug_boot). Variabel ini memiliki 3 kategori, yaitu: kecil

(small), sedang (med), dan besar (big).

7. Safety. Varibel ini memiliki 3 kategori, yaitu: rendah (low), sedang (med),

dan tinggi (high).

3.2 Metode Pengolahan dan Analisis Data

Metode pengolahan data dalam penelitian ini adalah dengan menggunakan

software R versi 3.2.2 dengan menggunakan package UBL [3] untuk teknik

sampling dan package randomForest [10] untuk proses klasifikasi. Selanjutnya sebelum data di klasifikasi, dilakukan sampling data terlebih dahulu.

3.2.1 Sampling Data

Sampling data dilakukan karena terjadinya class-imbalanced

(ketidakseimbangan kelas) pada data. Dalam penelitian ini sampling data dilakukan dengan tiga cara, yaitu Random Under Sampling, Random Over

Sampling, dan SMOTE. Seteleh dilakukan sampling data, kemudian dilihat

performa dari masing-masing sampling data tersebut. Jika performa sudah baik, maka tahapan selanjutnya adalah mengklasifikasi data dengan Random Forest.

(37)

24

3.2.2 Klasifikasi dengan Random Forest

Tahapan-tahapan dalam melakukan klasifikasi dengan random forest adalah sebagai berikut:

1. Buat suatu bootsrap sample atau pengambilan sampel dengan

replacement (pengembalian) dari suatu ukuran dari gugus data. 2. Pilih (mtry) variabel secara random dari variabel, dimana . 3. Setelah dilakukan pemilihan secara random, maka pohon ditumbuhkan

tanpa pruning (pemangkasan).

4. Langkah 1-3 dilakukan sebanyak kali hingga terbentuk suatu forest sebanyak pohon.

5. Proses penentuan suatu kelas dilakukan dengan majority vote.

6. Setelah terbentuk forest, kemudian dicari parameter mtry yang optimal sehingga diperoleh nilai misklasifikasi error (Out of Bag Error) yang stabil dan tingkat kepentingan variabel (Variable Importance).

7. Setelah diperoleh nilai mtry optimal kemudian dilakukan prediksi dengan data testing.

3.3 Diagram Alur Penelitian

Tahapan/alur penelitian dalam melakukan klasifikasi data dengan metode

(38)

25

(39)

26

BAB IV

HASIL DAN PEMBAHASAN

4.1 Persiapan Data

Data yang digunakan dalam penelitian ini adalah data evaluasi mobil dimana suatu mobil diklasifikasikan berdasarkan kelayakannya. Data ini terdiri dari 1728 data dengan 6 variabel independen dan satu variabel dependen. yang akan digunakan untuk klasifikasi dengan Random Forest. Dari 1728 data diperoleh presentase dari masing-masing kelas yaitu unacc (69.85%), acc (22.28%), good (4.05%), dan vgood (3,82%), kemudian data ini dibagi menjadi dua data secara acak, yaitu data training sebesar 80% dan data testing sebesar 20%. Sehingga diperoleh data training sebanyak 1340 data dengan presentase masing-masing kelas adalah unacc sebanyak 937 (69,92%), acc sebanyak 304 (22,68%), good sebanyak 56 (4,1%), dan vgood sebanyak 43 (3,2%). Sedangkan data testing sebanyak 388 data dengan presentase masing-masing kelas adalah unacc sebanyak 273 (70,36%), acc sebanyak 80 (20,61%), good sebanyak 13 (3,35%), dan vgood sebanyak 22 (5,67%). Pada data training terlihat mengalami ketidakseimbangan kelas, sehingga dilakukan proses sampling data.

4.2 Sampling Data

Pada penelitian ini proses sampling data dilakukan dengan tiga cara, yaitu dengan Random Under Sampling, Random Over Sampling, dan SMOTE. Dari

(40)

27 masing-masing metode tersebut kemudian dicari performanya serta dilihat pula performa tanpa dilakukan sampling data. Hasil dari sampling data terlihat pada Tabel 4.1

Tabel 4. 1 Hasil sampling RUS, ROS, dan SMOTE

Kelas Banyaknya data sebelum di sampling RUS ROS SMOTE

unacc 937 43 937 335

acc 304 43 937 335

good 56 43 937 334

vgood 43 43 937 334

Pada Tabel 4.1 menunjukkan bahwa pada metode Random Under Sampling diperoleh penurunan sampel pada kelas mayoritas yang mengikuti kelas minoritas, sedangkan pada metode Random Over Sampling diperoleh data minoritas yang

di-resample hingga memperoleh data yang sama dengan kelas mayoritas. Pada

metode SMOTE diperoleh pada kelas minoritas mengalami penambahan sampel dan pada kelas mayoritas mengalami penurunan sampel hingga diperoleh data yang seimbang. Dari hasil tersebut kemudian di peroleh performa dari masing-masing metode. Hasil performa dari masing-masing-masing-masing metode dapat dilihat pada Tabel 4.2.

Tabel 4. 2 Hasil performa dari RUS, ROS, SMOTE, dan Tanpa Sampling

RUS ROS SMOTE NON

Akurasi 0.8505 0.971 0.9613 0.9691

Recall 0.7375 0.95 0.95 0.9875

Presisi 0.6146 0.9156 0.8941 0.8777

Specificity 0.8798 0.9773 0.9708 0.9643

(41)

28 Dari Tabel 4.2 diperoleh masing-masing performa dari masing-masing metode. Terlihat bahwa diantara masing-masing metode, akurasi yang paling baik diperoleh pada metode ROS yaitu sebesar 0.971 dan akurasi terendah ada pada metode RUS yaitu sebesar 0.8505. Lalu pada Recall diperoleh performa yang baik ada pada metode tanpa sampling sebesar 0.9875 dan terendah pada metode RUS yaitu sebesar 0.7375. Kemudian hasil Presisi, Specificity dan F-Measure masing-masing nilai terbesarnya ada pada metode ROS dan terendahhnya ada pada metode RUS. Hal ini berarti performa pada metode ROS, SMOTE, dan NON (tanpa sampling) memperoleh performa yang lebih baik, bila dibandingkan dengan metode RUS yang kurang begitu baik. Tabel 4.2 juga memperlihatkan bahwa hasil pada metode ROS, SMOTE, dan tanpa sampling tidak jauh berbeda, sehingga dapat dikatakan penggunaan sampling data tidak terlalu berpengaruh pada data kelayakan mobil karena hasil performa pada metode tanpa sampling sudah memperoleh hasil yang baik.

4.3 Klasifikasi dengan Random Forest

Karena hasil performa pada metode tanpa sampling sudah baik, maka selanjutnya dilakukan klasifikasi Random Forest dengan menggunakan data yang tidak di sampling. Tahapan awal dalam melakukan klasifikasi dengan Random

Forest adalah memilih mtry dan ntree yang kemudian dicari tingkat misklasifikasi

(42)

29

4.3.1 Pemilihan mtry dan ntree

Dalam proses klasifikasi dengan random forest, hal yang penting dilakukan adalah menentukan banyaknya variabel independen yang digunakan dalam penentuan klasifikasi. Pengambilan variabel independen ini dilakukan secara random dan replacement (random subsampling). Dalam penelitian ini diperoleh nilai mtry nya adalah sebagai berikut

, ⌊√ ⌋ ⌊√ ⌋

Dari masing-masing mtry tersebut kemudian akan dilakukan percobaan sebanyak n pohon (ntree). Banyaknya pohon yang dicobakan dalam penelitian ini adalah 25, 50, 100, 500, 1000, dan 2000. Setelah dilakukan percobaan sebanyak

mtry dan ntree, kemudian dilakukan analisis terhadap rataan tingkat misklasifikasi

(Out of Bag Error).

4.3.2 Rataan Tingkat Misklasifikasi (Out Of Bag Error)

Out of bag error diperoleh dari rataan misklasifikasi sampel yang tidak

masuk dalam pertumbuhan forest, sehingga pemilihan mtry berpengaruh dalam penentuan error terkecil. Perubahan out of bag error dari pemilihan mtry disajikan dalam Gambar 4.1.

(43)

30

Gambar 4. 1 Hasil Out of Bag Error

Pada Gambar di atas menunjukkan bahwa semakin besar ntree maka perubahan out of bag error semakin mengecil. Dari gambar tersebut juga memperlihatkan bahwa pada setiap ntree yang dicobakan, nilai out of bag error terkecil diperoleh pada mtry=4. Sehingga diperoleh mtry optimal adalah 4. Hal ini juga dapat dilihat pada Tabel 4.3

Tabel 4. 3 Out of Bag Error (Rataan Tingkat Misklasifikasi)

mtry Ntree

25 50 100 500 1000 1500 2000

2 7.09% 5.90% 5.15% 4.10% 3.73% 3.73% 3.73%

4 3.51% 2.99% 2.54% 2.54% 2.39% 2.39% 2.39%

Tabel 4.3 menunjukkan bahwa untuk mtry=2 Out of Bag Error terus mengalami penurunan, dan mencapai kekonvergenan pada saat ntree=1000 dengan nilai Out of Bag Error nya sebesar 3.73%. Begitu pula untuk mtry=4 memperlihatkan bahwa Out of Bag Error nya konvergen mulai dari ntree=1000

0.00% 1.00% 2.00% 3.00% 4.00% 5.00% 6.00% 7.00% 8.00% 25 50 100 500 1000 1500 2000 O ut o f B ag Er ror ntree mtry=2 mtry=4

(44)

31 dengan nilai Out of Bag Error sebesar 2.39%. Sehingga berdasarkan Gambar 4.1 dan Tabel 4.3 dapat disimpulkan mtry yang optimal adalah mtry=4 dengan

ntree=1000 karena pada saat mtry=4 random forest sudah mulai stabil.

4.3.3 Variable Importance (Variabel Terpenting)

Salah satu output dalam random forest adalah variable importance (variabel terpenting). Variable importance ini didapat dari rataan penurunan indeks gini (Mean Decrease Gini) yang diperoleh selama pembentukan forest. Variable

importance ini menunjukkan variabel mana saja yang berpengaruh dalam

penentuan kelayakan mobil. Berikut akan disajikan nilai MDG dari masing-masing mtry yang dicobakan.

Gambar 4. 2 Nilai MDG dari mtry=4

Dari Gambar di atas menunjukkan urutan variabel yang paling penting adalah safety, diikuti dengan variabel persons, maint, buying, lug_boot, dan doors. Gambar 4.2 juga menunjukkan bahwa meskipun dengan pohon berapa pun, urutan

safety persons maint buying lug_boot doors n=25 171.4637 152.7892 94.85531 78.6182 63.88614 30.46603 n=50 173.62255 146.55522 97.22905 80.79733 61.45953 31.89002 n=100 172.14528 144.48069 98.58025 79.27893 65.6255 31.69621 n=500 174.52303 139.92459 96.66654 81.30713 65.43894 31.69009 n=1000 174.02318 140.81584 96.40199 80.8596 64.87811 32.27967 n=1500 173.69929 141.14673 96.10427 80.93187 64.79558 32.45402 n=2000 173.24951 141.57694 96.32964 80.89176 65.10128 32.46026 0 20 40 60 80 100 120 140 160 180 200 M D G

(45)

32 variabel terpenting tidak berubah. Hal ini menunjukkan bahwa keamanan pada mobil lebih dipertimbangkan konsumen dalam memutuskan layak atau tidaknya pembelian mobil dibanding dengan variabel-variabel lainnya.

4.4 Prediksi Hasil Testing

Hasil prediksi dari data testing didapat setelah diperoleh model. Pada penelitian ini diperoleh model dengan menggunakan mtry optimal adalah 4 dan

ntree=1000, karena pada ntree=1000 random forest mulai menunjukkan

kestabilan. Dari 1728 data, sebanyak 388 data diambil untuk kemudian dilakukan pengecekan terhadap prediksi akurasi dari data testing. Hasil prediksi dari data testing diperoleh dalam bentuk confusion matrix sebagai berikut.

Tabel 4. 4 Hasil prediksi data testing

Actual Class Total

kelas Error

Percent Correct

Predicted Class acc good unacc vgood

acc 80 0.0375 96.25% 77 2 0 1 good 13 0.0769 92.30% 0 12 0 1 unacc 273 0.0219 97.80% 5 1 267 0 vgood 22 0 100% 0 0 0 22 Total 388 Rata-rata (%) 96.59% Rata-rata keseluruhan (%) 97.42%

(46)

33 Pada Tabel 4.4 menunjukkan hasil klasifikasi dari masing-masing kelas. Dari tabel tersebut diperoleh untuk kelas acc terjadi salah klasifikasi sebanyak 3 (2 masuk kelas good dan 1 masuk kelas vgood) dengan klasifikasi errornya sebesar 0.0389. Untuk kelas good sebanyak 1 dari 13 data terjadi salah klasifikasi (masuk ke dalam kelas vgood) dan untuk kelas unacc sebanyak 6 dari 273 terjadi salah klasifikasi (5 masuk kelas acc dan 1 masuk kelas good) dengan masing-masing klasifikasi errornya sebesar 0.0833 dan 0.0219. Sedangkan untuk kelas

vgood tidak terdapat kesalahan klasifikasi (klasifikasi errornya 0). Sehingga dari

tabel tersebut diperoleh error dari data testing sebesar 0.0257 atau 2.5% dan diperoleh hasil akurasi dari data testing tersebut sebesar 97.5%.

(47)

34

BAB V

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Berdasarkan penjabaran pada bab sebelumnya, maka diperoleh kesimpulan sebagai berikut :

1. Pengklasifikasian dengan random forest dilakukan dengan mencari nilai

mtry dan ntree optimal. Percobaan dilakukan dengan mencobakan nilai mtry-nya adalah 2 dan 4 dengan ntree-nya sebanyak 25, 50, 100, 500, 1000,

1500, 2000. Hasilnya diperoleh mtry-nya adalah 4 dan ntree-nya adalah 1000 pohon.

2. Pada data yang imbalanced, sebelum dilakukan klasifikasi dilakukan dahulu sampling data. Sampling data dilakukan dengan menggunakan metode

Random Under Sampling, Random Over Sampling, SMOTE, dan dilihat

pula performa pada data yang tidak disampling. Hasilnya diperoleh akurasi yang paling baik diperoleh pada metode ROS yaitu sebesar 0.971 dan akurasi terendah ada pada metode RUS yaitu sebesar 0.8505. Lalu pada

Recall diperoleh performa yang baik ada pada metode tanpa sampling

sebesar 0.9875 dan terendah pada metode RUS yaitu sebesar 0.7375. Kemudian hasil Presisi, Specificity dan F-Measure masing-masing nilai terbesarnya ada pada metode ROS dan terendahhnya ada pada metode RUS. Hal ini berarti performa pada metode ROS, SMOTE, dan NON (tanpa sampling) memperoleh performa yang lebih baik, bila dibandingkan dengan

(48)

35 metode RUS yang kurang begitu baik.. Hal ini menunjukkan semua performa metode sampling mempunyai performa yang baik, sehingga meskipun tidak dilakukan sampling, Random Forest memiliki performa yang baik pula.

3. Hasil akurasi algoritma Random Forest adalah sebesar 97.42%.Hasil ini menunjukkan akurasi yang lebih baik bila dibandingkan dengan penelitian sebelumnya yang menunjukkan akurasi pada Decision Tree sebesar 93.51%, pada ANN sebesar 92.1% dan pada Naïve Bayes sebesar 93.51%.

4. Variabel yang paling berpengaruh dalam pengklasifikasian data kelayakan mobil adalah variabel safety. Ini berarti keamanan merupakan faktor utama dalam terpilihnya suatu mobil.

5.2 Saran

Penelitian ini tidak luput dari adanya kekurangan, sehingga diperlukan adanya saran. Saran dalam penelitian ini antara lain:

1. Penelitian ini hanya menggunakan parameter dengan nilai parameter standar, yaitu mtry 2 dan 4, sehingga untuk penelitian selanjutnya disarankan untuk mencari parameter selain mtry standar.

2. Random forest pada dasarnya dapat digunakan untuk permasalahan

klasifikasi dan regresi. Namun dalam penelitian ini hanya mengangkat masalah klasifikasi. Sehingga untuk penelitian selanjutnya disarankan mencoba random forest untuk kasus regresi.

(49)

36

REFERENSI

[1] Awwalu, Jamilu, et al. 2014. Performance Comparison of Data Mining Algorithms: A Case Study on Car Evaluation Dataset. International Journal

of Computer Trends and Technology (IJCTT) – vol. 13 no. 12.

[2] Bouabana-Tebibel, Thouraya dan Stuart H. Rubin. 2016. Theoretical

Information Reuse and Integration. Switzerland: Springer.

[3] Branco, Paula, et al. 2016. UBL: an R package for Utility-Based Learning. University of Porto.

[4] Breiman, Leo. Random Forest. 2001. Machine Learning, 45, 5-32.

[5] Chawla, Nitesh V, et al. 2002. SMOTE: Synthetic Minority Over-Sampling Technique. Journal of Artificial Intelligence Research 16 (2002) 321-357. [6] Dittman, D.J., Khoshgoftaar, T.M., Napolitano, A. 2015. The Effect of Data

Sampling When Using Random Forest on Imbalanced Bioinformatics Data.

IEEE International Conference on Information Reuse and Integration (IRI), pp. 457–463.

[7] Hestie, Trevor, Robert Tibshirani, & Jerome Friedman. 2008. The Elements

of Statistical Learning: Data Mining, Inference, and Prediction Second Edition. Springer.

[8] James, Gareth, et al. 2013. An Introduction to Statistical Learning with

(50)

37 [9] Lewis, R.J. 2000. An Introduction to Classification and Regression Tree

(CART) Analysis. Department of Emergency Medicine, Harbor-UCLA

Medical Centre, Torrance, California.

[10] Liaw, Andy. 2015. Package ‘Random Forest’. CRAN. [11] Mitchell, Tom M. 1997. Machine Learning. McGraw-Hill.

[12] Slide Random Forest: Applied Multivariate Statistics. Eigenossische Technische Hochschule Zurich. 2012.

[13] Yao, Dengju, et al. 2013. An Improved Random Forest Algorithm for Class-Imbalanced Data Classification and Its Application in PAD Risk Factor Analysis. The Open Electrical & Electronic Engineering Journal, 7, (Supple

(51)

Gambar

Tabel 2. 1 Contoh Data yang Akan Di Sampling
Tabel 2. 2 Hasil ROS
Tabel 2. 3 Hasil SMOTE
Tabel  2.3  merupakan  hasil  dari  SMOTE,  dimana  data  yang  ditebalkan  merupakan  hasil  sintesis  (buatan)  yang  diperoleh  dari  pembuatan  sampel  yang  baru  di  sepanjang  segmen  garis  yang  menghubungkan  setiap/semua  tetangga kelas k yang t
+7

Referensi

Dokumen terkait

Penelitian ini melalui 8 tahapan yaitu pengadaan data, praproses data, normalisasi data, strategi sampling menggunakan metode oversampling dan undersampling, 10-fold

Dalam melakukan klasifikasi tweet yang mengandung informasi gempa, metode Random Forest memiliki akurasi Recall sebesar 96.7%, lebih baik bila

Beberapa metode klasifikasi yang didasarkan model klasifikasi RF menurut Kuhn (2019) meliputi oblique random forest (ORF) dengan metode partial least squares

Dapat disimpulkan dari proses validasi yang telah dilakukan, dihasilkan bahwa penerapan model klasifikasi Random Forest lebih baik dibandingkan dengan model klasifikasi Adaboost.

Data remaja yang pernah melakukan hubungan seksual pranikah hasil SDKI 2012 menghasilkan akurasi yang bias dengan metode random forest dilihat dari nilai sensitivity yang bernilai

Pada hasil klasifikasi menggunakan algoritma Random Forest dan menggunakan dataset x_test nya maka menghasilkan platform penjualan Instagram merupakan platform yang sangat

2 Oon Wira Yuda et al., 2022 Penerapan Data Mining Untuk Klasifikasi Kelulusan Mahasiswa Tepat Waktu Menggunakan Metode Random Forest Berdasarkan dari hasil pengujian

Penelitian ini membandingkan algoritma klasifikasi C4.5, Naive Bayes, dan Random Forest untuk menentukan kelulusan