Anda di halaman 1dari 31

Decision Tree

Desy Lusiyanti, M.SI

Jurusan Matematika
Universitas Tadulako
2016

12/03/2018 14:07 Data Mining | Desy Lusiyanti


Pendahuluan

Klasifikasi adalah sebuah proses untuk menemukan model dari suatu


objek kesalah satu kategori yang sudah didefinisikan sebelumnya.
Di dalam klasifikasi diberikan sejumlah record, yang terdiri dari beberapa
atribut, atribut dapat berupa kontinyu ataupun kategoris, salah satu
atribut menunjukkan kelas untuk record. Tujuan dari klasifikasi adalah untuk
menemukan model dari training set. Model tersebut kemudian digunakan
untuk mengklasifikasikan record yang kelasnya belum diketahui sebelumnya
pada test set. Serta sebuah proses untuk mengambil keputusan dengan
memprediksikan suatu kasus, berdasarkan hasil klasifikasi yang diperoleh.

12/03/2018 14:07 Data Mining | Desy Lusiyanti


Pendahuluan
Untuk mendapatkan model, kita harus melakukan analisis terhadap
data latih, sedangkan data uji digunakan untuk mengetahui tingkat
akurasi dari model yang telah dihasilkan. Klasifikasi dapat digunakan
untuk memprediksi kelas dari suatu obyek data. Proses klasifikasi
data dapat dibedakan dalam 2 tahap, yaitu:

1. Proses Pembelajaran atau Pembangunan Model


Tiap – tiap record pada data latih dianalisis berdasarkan nilai –
nilai atributnya, dengan menggunakan suatu algoritma klasifikasi untuk
mendapatkan model.

12/03/2018 14:07 Data Mining | Desy Lusiyanti


Pendahuluan
2. Klasifikasi
Pada tahap ini, data uji digunakan untuk mengetahui tingkat akurasi
dari model yang dihasilkan. Jika tingkat akurasi yang diperoleh
sesuai dengan nilai yang ditentukan, maka model tersebut dapat
digunakan untuk mengklasifikasikan record – record data baru yang
belum pernah dilatihkan atau diujikan sebelumnya.

12/03/2018 14:07 Data Mining | Desy Lusiyanti


Pendahuluan
Pengukuran Kinerja Klasifikasi

jumlah prediksi yang benar


• 𝐴𝑘𝑢𝑟𝑎𝑠𝑖 =
total jumlah prediksi

jumlah prediksi yang salah


• 𝑅𝑎𝑡𝑎2 𝑘𝑒𝑠𝑎𝑙𝑎ℎ𝑎𝑛 = total jumlah prediksi

Algoritma klasifikasi berusaha untuk mencari model yang mempunyai


akurasi yang tinggi atau error rate yang rendah ketika model diterapkan pada
test set.

12/03/2018 14:07 Data Mining | Desy Lusiyanti


12/03/2018 14:07 Data Mining | Desy Lusiyanti
Pendahuluan
Algoritma klasifikasi yang sudah umum digunakan :
1. Decision tree (pohon keputusan)
2. Bayessian Network
3. Rule-based (berbasis aturan)
4. Neural network (jaringan syaraf)
5. Support Vector Machine (SVM)

12/03/2018 14:07 Data Mining | Desy Lusiyanti


Pendahuluan
Algoritma klasifikasi yang sudah umum digunakan :

2. Bayessian Network
3. Rule-based (berbasis aturan)
4. Neural network (jaringan syaraf)
5. Support Vector Machine (SVM)

12/03/2018 14:07 Data Mining | Desy Lusiyanti


Decision Tree
Decision tree adalah salah satu metode klasifikasi yang paling populer karena
mudah diinterpretasikan oleh manusia. Decision tree adalah struktur
flowchart yang menyerupai tree (pohon). Decision tree atau pohon
keputusan merupakan pohon yang digunakan sebagai prosedur untuk
mendapatkan jawaban dari masalah yang dimasukan.

Konsep Decision Tree yaitu mengubah data menjadi pohon keputusan


(decision tree) dan aturan-aturan keputusan (rule).

12/03/2018 14:07 Data Mining | Desy Lusiyanti


Decision Tree
Decision tree dibentuk dari 3 tipe dari simpul yaitu :
✓ Simpul leaf atau simpul daun memuat suatu keputusan akhir atau kelas
target untuk suatu pohon keputusan.
✓ Simpul root atau simpul akar adalah titik awal dari suatu decision tree.
✓ Simpul internal, dimana setiap simpul perantara berhubungan dengan
suatu pernyataan atau pengujian.

Pada decision tree setiap simpul daun menandai label kelas.


Simpul yang bukan simpul akhir terdiri dari akar dan simpul internal yang
terdiri dari kondisi tes atribut pada sebagian record yang mempunyai
karakteristik yang berbeda. Simpul akar dan simpul internal ditandai
dengan bentuk oval dan simpul daun ditandai dengan bentuk segi empat.
12/03/2018 14:07 Data Mining | Desy Lusiyanti
Decision Tree
Konsep data dalam decision tree :
1. Data dinyatakan dalam bentuk tabel dengan atribut dan record.
2. Atribut menyatakan suatu parameter yang dibuat sebagai kriteria dalam
pembentukan tree. Misalkan untuk menentukan main tenis, kriteria yang
diperhatikan adalah cuaca, angin dan temperatur. Salah satu atribut
merupakan atribut yang menyatakan data solusi per-item data yang
disebut dengan target atribut.
3. Atribut memiliki nilai-nilai yang dinamakan dengan instance.
Misalkan atribut cuaca mempunyai instance berupa cerah, berawan dan
hujan.

12/03/2018 14:07 Data Mining | Desy Lusiyanti


Decision Tree
Contoh pemakaian Decision Tree
1. Diagnosa penyakit tertentu,seperti hipertensi,kanker,stroke dan lain-lain.
2. Pemilihan produk seperti rumah,kendaraan,komputer dan lain-lain
3. Pemilihan pegawai teladan sesuai dengan kriteria tertentu

Untuk menyusun decision tree kita perlu memperhatikan :


1. Atribut mana yang akan dipilih untuk pemisahan objek
2. Urutan atribut mana yang akan dipilih terlebih dahulu
3. Struktur tree
4. Kriteria pemberhentian
5. Prunning

12/03/2018 14:07 Data Mining | Desy Lusiyanti


Decision Tree
Kriteria pemilihan atribut :
1. Informasi gain
Kita bisa menghitung informasi gain dari output data atau variable dependent
y yang dikelompokan berdasarkan atribut A, dinotasikan gain (y,A).
𝑦
𝑔𝑎𝑖𝑛 𝑦, 𝐴 = 𝑒𝑛𝑡𝑟𝑜𝑝𝑖 𝑦 − σ𝑐∈𝑛𝑖𝑙𝑎𝑖 (𝐴) 𝑐 𝑒𝑛𝑡𝑟𝑜𝑝𝑖( 𝑦𝑐 )
𝑦

Entropi menyatakan impurity suatu kumpulan objek.


𝐸𝑛𝑡𝑟𝑜𝑝𝑖 𝑦 = −𝑝1𝑙𝑜𝑔 2 𝑝1 − 𝑝2 𝑙𝑜𝑔 2𝑝2 … − 𝑝𝑛 𝑙𝑜𝑔 2 𝑝𝑛

12/03/2018 14:07 Data Mining | Desy Lusiyanti


Decision Tree
2. Gain ratio
Untuk menghitung gain ratio, terlebih dahulu kita menghitung split
information dengan formula sebagai berikut :

Dimana 𝑠1 sampai 𝑠𝑐 adalah c subset yang dihasilkan dari pemecahan S dengan


menggunakan atribut A yang mempunyai sebanyak c nilai. Selanjutnya gain
ratio dihitung dengan formula :

12/03/2018 14:07 Data Mining | Desy Lusiyanti


Decision Tree
3. Indeks Gini
Jika kelas obyek dinyatakan dengan k,k – 1,2,... C, dimana C adalah jumlah
kelas untuk variabel / output dependent y, Indeks gini untuk suatu cabang
dihitung sebagai berikut :

Dimana 𝑝𝑘 adalah ratio observasi yang masuk dalam kelas k.

12/03/2018 14:07 Data Mining | Desy Lusiyanti


Decision Tree
Beberapa model decision tree yang sudah dikembangkan dalam pohon
keputusan, yaitu CLS (Hunt et al. 1966), ID3 (Quinlan 1986, 1987) termasuk
juga CART dan ACLS yang menggunakan kriteria statistik, C4.5

12/03/2018 14:07 Data Mining | Desy Lusiyanti


Contoh pembentukan Tree
Untuk lebih memperjelas bagaimana decision tree menyusun dan
menentukan node awal, berikut ini akan diberikan contoh secara detail.
Contoh yang diberikan ini berhubungan dengan data kondisi cuaca untuk
bermain golf.

12/03/2018 14:07 Data Mining | Desy Lusiyanti


Cuaca Suhu Kelembapan Angin Bermain
Cerah Panas Tinggi Pelan Tidak
Cerah Panas Tinggi Kencang Tidak
Mendung Panas Tinggi Pelan Ya
Hujan Lembut Tinggi Pelan Ya
Hujan Dingin Normal Pelan Ya
Hujan Dingin Normal Kencang Tidak
Mendung Dingin Normal Kencang Ya
Cerah Lembut Tinggi Pelan Tidak
Cerah Dingin Normal Pelan Ya
Hujan Lembut Normal Pelan Ya
Cerah Lembut Normal Kencang Ya
Mendung Lembut Tinggi Kencang Ya
Mendung Panas Normal Pelan Ya
Hujan Lembut tinggi Kencang Tidak

12/03/2018 14:07 Data Mining | Desy Lusiyanti


Contoh pembentukan Tree
Dari contoh data training tersebut, atribut kategori menentukan apakah
seseorang perlu bermain (play) atau tidak ( not play). Sedangkan atribut non-
kategori yaitu :
ATRIBUT Nilai yang mungkin
Cuaca Cerah, Mendung, Hujan
Suhu Panas, Lembut, Dingin
Kelembaban Tinggi, Normal
Angin Pelan, Kencang

12/03/2018 14:07 Data Mining | Desy Lusiyanti


Contoh pembentukan Tree
Langkah penyelesaian kasus :
1. Mengubah Data Menjadi Tree.
2. Mengubah tree menjadi rule.

Penyelesaian:
Langkah -1: Mengubah Data Menjadi Tree.
a. Menentukan NodeTerpilih.
Dari data sampel tentukan dulu node terpilih, yaitu dengan menghitung
nilai information gain masing-masing atribut. (Cuaca, suhu, kelembaban
dan angin)

12/03/2018 14:07 Data Mining | Desy Lusiyanti


Contoh pembentukan Tree
Catatan:
• Untuk menentukan node terpilih, gunakan nilai information gain
dari setiap kriteria dengan data sample yang ditentukan.
• Node terpilih adalah kriteria dengan information gain yang paling besar.

Langkah– langkah menentukan node terpilih:


1. Menghitung nilai informasi (I) dari seluruh data training,
dengan menggunakan persamaan : −𝑝 + 𝑙𝑜𝑔 2𝑝 + − 𝑝 − 𝑙𝑜𝑔 2𝑝 −

9 9 5 5
𝐼 =− 14
𝑙𝑜𝑔 2 14
− 14
𝑙𝑜𝑔 2 14
= 0.9403
12/03/2018 14:07 Data Mining | Desy Lusiyanti
Contoh pembentukan Tree
2. Menghitung nilai informasi tiap atribut
Contoh : nilai informasi atribut cuaca
Dengan menggunakan persamaan : −𝑝 + 𝑙𝑜𝑔 2 𝑝 + −𝑝 − 𝑙𝑜𝑔 2 𝑝 −

Cuaca Bermain Jumlah


Cerah Ya 2 2 3
𝐼1 = −( )𝑙𝑜𝑔 2(2/5) – (3/5) 𝑙𝑜𝑔 2 = 0.9710
Cerah Tidak 3 5 5

Mendung Ya 4 4 0
𝐼2 = −( )𝑙𝑜𝑔 2(4/4) – (0/4) 𝑙𝑜𝑔 2 =0
Mendung Tidak 0 4 4

Hujan Ya 3 3 2
𝐼3 = −( )𝑙𝑜𝑔 2(3/5) – (2/5) 𝑙𝑜𝑔 2 = 0.9710
Hujan Tidak 2 5 5

12/03/2018 14:07 Data Mining | Desy Lusiyanti


Contoh pembentukan Tree
3. Menghitung nilai entropy tiap atribut
Contoh : entropy untuk cuaca
5 4 5
𝐸 = ( ) ∗ 𝐼1 + ∗ 𝐼2 + ∗ 𝐼3 = 0.6936
14 14 14

4. Menghitung nilai informasi gain tiap atribut


Contoh : atribut cuaca
𝑔𝑎𝑖𝑛 𝑦, 𝐴 = 𝐼 − 𝐸
= 0.9403 – 0.6939 = 0.2467

12/03/2018 14:07 Data Mining | Desy Lusiyanti


Contoh pembentukan Tree
Dengan menggunakan langkah – langkah yang sama kita hitung nilai
information gain atribut suhu, kelembaban dan angin. Sehingga didapat
nilai information gain atribut suhu = 0.0292, kelembabab = 0.1518 dan
angin = 0.0481.

Hasil tersebut menunjukan bahwa gain tertinggi ada pada atribut cuaca,
sehingga cuaca dijadikan sebagai node akar. Selanjutnya digunakan 3 nilai dari
node akar yaitu cerah, mendung dan hujan untuk menentukan internal node.

12/03/2018 14:07 Data Mining | Desy Lusiyanti


Contoh pembentukan Tree
Cuaca Bermain
Cerah Tidak
Cerah Tidak
Cerah Tidak
Cerah Ya
Cerah Ya
Mendung Ya
Mendung Ya
Mendung Ya
Mendung Ya
Hujan Ya
Hujan Ya
Hujan Tidak
Hujan Ya
Hujan Tidak

12/03/2018 14:07 Data Mining | Desy Lusiyanti


Contoh pembentukan Tree
Perhatikan Untuk node dicabang mendung, entropy node bernilai nol sehingga
dapat dipastikan semua data di node cabang mendung masuk di kelas yang
sama dan node yang dituju oleh cabang mendung menjadi simpul leaf atau
simpul daun.

Setelah itu didapatkan nilai informasi gain untuk cerah yaitu :


𝐼 𝐶𝑒𝑟𝑎ℎ, 𝑠𝑢ℎ𝑢 = 0.8281
𝐼 𝐶𝑒𝑟𝑎ℎ, 𝑘𝑒𝑙𝑒𝑚𝑏𝑎𝑏𝑎𝑛 = 0.9710
𝐼 𝐶𝑒𝑟𝑎ℎ, 𝑎𝑛𝑔𝑖𝑛 = 0.6313
Informasi gain tertinggi terdapat pada fitur kelembaban, sehingga kelembaban
dijadikan sebagai node internal.

12/03/2018 14:07 Data Mining | Desy Lusiyanti


Contoh pembentukan Tree
Selanjutnya data didalam terpecah lagi menjadi tinggi dan normal. Dua cabang
tersebut mempunyai entropy nol, yang berarti dua cabang tersebut menjadi
daun.
Untuk node di cabang hujan diperoleh hasil :
𝐼 ℎ𝑢𝑗𝑎𝑛, 𝑠𝑢ℎ𝑢 = 0.6313
𝐼 ℎ𝑢𝑗𝑎𝑛, 𝑘𝑒𝑙𝑒𝑚𝑏𝑎𝑏𝑎𝑛 = 0.6313
𝐼 ℎ𝑢𝑗𝑎𝑛, 𝑎𝑛𝑔𝑖𝑛 = 0.9710
Informasi gain tertinggi terdapat pada fitur angin, sehingga angin dijadikan
sebagai node internal.
12/03/2018 14:07 Data Mining | Desy Lusiyanti
Contoh pembentukan Tree
Selanjutnya data didalam terpecah lagi menjadi pelan dan kencang. Dua
cabang tersebut mempunyai entropy nol, yang berarti dua cabang tersebut
menjadi daun.
Hasil tree akhir seperti pada papan.

12/03/2018 14:07 Data Mining | Desy Lusiyanti


Contoh pembentukan Tree
Langkah -2: Mengubah Tree menjadi Rule.
Pohon yang dihasilkan dapat dinyatakan dalam bentuk IF THEN sebagai
berikut :
IF cuaca = cerah AND kelembaban = normal THEN bermain = Ya
IF cuaca = cerah AND kelembaban = tinggi THEN bermain = Tidak
IF cuaca = Mendung THEN bermain = Ya
IF cuaca = hujan AND angin = pelan THEN bermain = Ya
IF cuaca = hujan AND angin = kencang THEN bermain = Tidak

12/03/2018 14:07 Data Mining | Desy Lusiyanti


Algoritma ID3 dan C4.5
Algoritma ID3 pertama kali diperkenalkan oleh Quinlan (1986) yang digunakan
untuk menginduksi decision tree. Algoritma ID3 dapat bekerja dengan baik
pada semua fitur yang mempunyai tipe data kategorikal (nominal atau
ordinal). Dalam perkembangannya, ID3 banyak mengalami perbaikan pada
versi berikutnya seperti C4.5 atau C5.0

Algoritma C4.5 diperkenalkan oleh Quinlan (1996). Sama halnya dengan ID3,
C4.5 juga menggunakan informasi gain dalam menentukan fitur yang menjadi
pemecah node. Perbaikan yang membedakan algortima C.45 dari ID3 adalah
dapat menangani fitur dengan tipe numerik, melakukan pemotongan
(pruning) serta dapat mengatasi data yang missing.

12/03/2018 14:07 Data Mining | Desy Lusiyanti


Daftar Pustaka

12/03/2018 14:07 Data Mining | Desy Lusiyanti

Anda mungkin juga menyukai