0% menganggap dokumen ini bermanfaat (0 suara)
275 tayangan31 halaman

Tugas 2. Data Mining

Dokumen tersebut memberikan penjelasan tentang algoritma ID3 (Iterative Dichotomiser Three) untuk membangun pohon keputusan berdasarkan atribut-atribut data, serta contoh penerapannya untuk memprediksi kegiatan bermain tenis berdasarkan kondisi cuaca, suhu, kelembaban, dan kekuatan angin."

Diunggah oleh

suryawinantara
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
275 tayangan31 halaman

Tugas 2. Data Mining

Dokumen tersebut memberikan penjelasan tentang algoritma ID3 (Iterative Dichotomiser Three) untuk membangun pohon keputusan berdasarkan atribut-atribut data, serta contoh penerapannya untuk memprediksi kegiatan bermain tenis berdasarkan kondisi cuaca, suhu, kelembaban, dan kekuatan angin."

Diunggah oleh

suryawinantara
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 31

TUGAS

DATA MINING

Nama Kelompok :
I Putu Ari Ratna Pratama (1208605055)
Putu Mega Suryawan (1208605069)
Ida Bagus Surya Winantara (1208605085)

PROGRAM STUDI TEKNIK INFORMATIKA


JURUSAN ILMU KOMPUTER - FMIPA
UNIVERSITAS UDAYANA
BUKIT JIMBARAN
2015

ALGORITMA ID3
Pengertian
ID3 (Iterative Dichotomiser Three) atau yang disebut juga denganInduction
of Decision Treeadalah suatu algoritma matematika yang digunakan untuk
menghasilkan suatu pohon keputusan yang mampu mengklasifikasi suatu obyek.
Pengertian laindari ID3 yaitu ID3 merupakan sebuah metode yang digunakan
untuk membangkitkan pohon keputusan.
ID3 diperkenalkan pertama kali oleh Ross Quinlan (1979).ID3 merepresentasi
konsep-konsep dalam bentuk pohon keputusan.Aturan-aturan yang dihasilkan
oleh ID3 mempunyai relasi yang hirarkis seperti suatu pohon (mempunyai akar,
titik, cabang, dan daun). Beberapa peneliti menyebut struktur model yang
dihasilkan ID3 sebagai pohon keputusan (decision tree) sementara peneliti yang
lain menyebutnya pohon aturan (rule tree).
Algoritma pada ID3 berbasis pada Occams razor: lebih memilih pohon
keputusan yang lebih kecil (teori sederhana) dibanding yang lebih besar. Tetapi
tidak dapat selalu menghasilkan pohon keputusan yang paling kecil dan karena itu
occams razor bersifat heuristik. Occams razor diformalisasi menggunakan
konsep dari entropi informasi.
Algoritma ID3
Input : sampel training, label training, atribut

Membuat simpul akar untuk pohon yang dibuat


Jika semua sampel positif, berhenti dengan suatu pohon dengan satu simpul

akar, beri label (+)


Jika semua sampel negatif, berhenti dengan suatu pohon dengan satu simpul

akar beri label (-)


Jika atribut kosong, berhenti dengan suatu pohon dengan satu simpul akar,

dengan label sesuai nilai yang terbanyak yang ada pada label training
Untuk yang lain, Mulai
A atribut yang mengklasifikasikan sampel dengan hasil terbaik

(berdasarkan gain ratio)


Atribut keputusan untuk simpul akar A
Untuk setiap nilai, vi, yang mungkin untuk A,
- Tambahkan cabang di bawah akar yang berhubungan dengan A=vi

Tentukan sampel Svi sebagai subset dari sampel yang mempunyai

nilai vi untuk atribut A


Jika sampel Svi kosong,
Di bawah cabang tambahkan simpul daun dengan label = nilai
yang terbanyak yang aa pada label training
Yang lain, tambah cabang baru di bawah cabang yang sekarang
C4.5 (sampel training, label training, atribut-[A])

Berhenti

Adapun sample data yang digunakan oleh ID3 memiliki beberapa syarat,
yaitu :

Deskripsi atribut-nilai. Atribut yang sama harus mendeskripsikan tiap contoh

dan memiliki jumlah nilai yang sudah ditentukan.


Kelas yang sudah didefinisikan sebelumnya. Suatu atribut contoh harus sudah

didefinisikan, karena mereka tidak dipelajari oleh ID3.


Kelas-kelas yang diskrit. Kelas harus digambarkan dengan jelas. Kelas yang
continue dipecah-pecah menjadi kategori-kategori yang relatif, misalnya saja

metal dikategorikan menjadi hard, quite hard, flexible, soft, quite soft.
Jumlah contoh (example) yang cukup. Karena pembangkitan induktif
digunakan, maka dibutuhkan test case yang cukup untuk membedakan pola
yang valid dari peluang suatu kejadian.
Pemillihan atribut pada ID3 dilakukan dengan properti statistik, yang disebut

dengan information gain.Gain mengukur seberapa baik suatu atribut memisahkan


training example ke dalam kelas target. Atribut dengan informasi tertinggi akan
dipilih. Dengan tujuan untuk mendefinisikan gain, pertama-tama digunakanlah
ide dari teori informasi yang disebut entropi.Entropi mengukur jumlah dari
informasi yang ada pada atribut.
Rumus untuk menghitung entropi informasi adalah :

log 2 p
+p
+ log 2 p
Entropy ( S ) p

Rumus untuk menghitung gain adalah :

Gain ( S , A ) Entropy ( S )

|Sv|
Entropy (Sv )
|S|

Contoh
Mencatat Keadaan 14 Minggu Permainan Tenis pada Setiap Sabtu Pagi
Ming

Ramalan_Cu

gu

aca

M1

Cerah

Suhu

Panas

Kelemba

Angi

Bermain_Te

ban

nis

Tinggi

Lema

Tidak

h
M2

Cerah

Panas

Tinggi

Kuat

Tidak

M3

Mendung

Panas

Tinggi

Lema

Ya

h
M4

Hujan

Sejuk

Tinggi

Lema

Ya

h
M5

Hujan

Dingin

Normal

Lema

Ya

h
M6

Hujan

Dingin

Normal

Kuat

Tidak

M7

Mendung

Dingin

Normal

Kuat

Ya

M8

Cerah

Sejuk

Tinggi

Lema

Tidak

h
M9

Cerah

Dingin

Normal

Lema

Ya

h
M10

Hujan

Sejuk

Normal

Lema

Ya

h
M11

Cerah

Sejuk

Normal

Kuat

Ya

M12

Mendung

Sejuk

Tinggi

Kuat

Ya

M13

Mendung

Panas

Normal

Lema

Ya

M14

Hujan

Sejuk

Tinggi

Kuat

Tidak

Atribut Tujuan adalah Bermain Tenis yang memiliki value ya atau tidak.
Atribut adalah Ramalan_Cuaca, Suhu, Kelembaban, dan Angin.
Algoritma Dan Flowchart
Entropy

adalah

formula

untuk

menghitung

homogenitas

dari

sebuah

sample/contoh.
Solusi menggunakan entropy dari contoh kasus di atas :
S adalah koleksi dari 14 contoh dengan 9 contoh positif dan 5 contoh negatif,
ditulis dengan notasi [9+,5-].
Positif di sini maksudnya value Bermain_Tenis = Ya sedangkan negatif
sebaliknya.
Entropy dari S adalah :
c

i 1

Entropy(S) =

pi =

- pi log2pi

Zi
N

Zi = contoh positif + contoh negatif


N = jumlah data
Entropy([9+,5-])

= - (9/14) log2 (9/14)

- (5/14) log2 (5/14)

= - (0.6429) ((log (9/14))/log 2) - (0.3571) ((log (5/14))/log 2)


= - (0.6429) (-0.1919/0.3010) - (0.3571) (-0.4472/0.3010)
= - (0.6429) (-0.6375) - (0.3571) (-1.4857)
= 0.4098 + 0.5305
= 0.94029
Catatan :

Entropy(S) = 0, jika semua contoh pada S berada dalam kelas yang sama.

Entropy(S) = 1, jika jumlah contoh positif dan jumlah contoh negative

dalam S adalah sama.


0 < Entropy(S) < 1, jika jumlah contoh positif dan jumlah contoh negatif
dalam S tidak sama.

Gain(S,A) adalah Information Gain dari


sebuah atribut A pada koleksi contoh S :

Gain(S,A)

| Sv |
vValues( A ) | S |

Entropy(S)

1. Values(Angin)

= Lemah, Kuat

SLemah

= [6+,2-]

SKuat

= [3+,3-]

Gain(S,Angin)

Entropy(Sv)

Entropy(S)

(8/14)Entropy(SLemah)

(6/14)Entropy(SKuat)
= 0.94029 - (8/14)0.81128 - (6/14)1.0000
= 0.04813
2. Values(Kelembaban)
STinggi
SNormal

= Tinggi, Normal
= [3+,4-]
= [6+,1-]

Gain(S,Kelembaban) = Entropy(S) - (7/14)Entropy(STinggi) (7/14)Entropy(SNormal)


= 0.94029 - (7/14)0.98523 - (7/14)0.59167
= 0.15184
3. Values(Suhu)
SPanas

= Panas, Sejuk, Dingin


= [2+,2-]

SSejuk

= [4+,2-]

SDingin

= [3+,1-]

Gain(S,Suhu)

= Entropy(S) - (4/14)Entropy(SPanas) (6/14)Entropy(SSejuk) (4/14)Entropy(SDingin)


= 0.94029 - (4/14)1.00000 - (6/14)0.91830 (4/14)0.81128
= 0.02922

4. Values(Ramalan_Cuaca) = Cerah, Mendung, Hujan


SCerah
= [2+,3-]
SMendung

= [4+,0-]

SHujan

= [3+,2-]

Gain(S,Ramalan_Cuaca) = Entropy(S) - (5/14)Entropy(SCerah) (4/14)Entropy(SMendung) (5/14)Entropy(SHujan)


= 0.94029 - (5/14)0.97075 - (4/14)1.00000 (5/14)0.97075
= 0.24675
Jadi, information gain untuk 3 atribut yang ada adalah :
Gain(S,Angin) = 0.04813
Gain(S,Kelembaban) = 0.15184
Gain(S,Suhu) = 0.02922
Gain(S,Ramalan_Cuaca) = 0.24675
Tampak bahwa attribute Ramalan_Cuaca akan menyediakan prediksi terbaik
untuk target attribute Bermain_Tenis.
[M1, M2, ..., M14]
[9+,5-]

Ramalan_Cuaca
Cerah

Mendung

Hujan

Ya
?

[M1, M2, M8, M9, M11]

[M4, M5, M6, M10, M14]

[2+,3-]

[3+,2-]

Untuk node cabang Ramalan_Cuaca = Cerah,


SCerah = [M1, M2, M8, M9, M11]
Ming

Ramalan_Cu

gu

aca

M1

Cerah

Suhu

Panas

Kelemba

Angi

Bermain_Te

ban

nis

Tinggi

Lema

Tidak

h
M2

Cerah

Panas

Tinggi

Kuat

Tidak

M8

Cerah

Sejuk

Tinggi

Lema

Tidak

h
M9

Cerah

Dingin

Normal

Lema

Ya

h
M11

Cerah

1. Values(Suhu)
SPanas

Sejuk

Normal

Kuat

Ya

= Panas, Sejuk, Dingin


= [0+,2-]

SSejuk

= [1+,1-]

SDingin

= [1+,0-]

Gain(SCerah,Suhu)

= Entropy(SCerah) - (2/5)Entropy(SPanas) (2/5)Entropy(SSejuk) (1/5)Entropy(SDingin)


= 0.97075 - (2/5)0.00000 - (2/5)1.00000 (1/5)0.00000
= 0.57075

2. Values(Kelembaban)
STinggi
SNormal

= Tinggi, Normal
= [0+,3-]
= [2+,0-]

Gain(SCerah,Kelembaban) = Entropy(SCerah) - (3/5)Entropy(STinggi) (2/5)Entropy(SNormal)


= 0.97075 - (3/5)0.00000 - (2/5)0.00000
= 0.97075
3. Values(Angin)

= Lemah, Kuat

SLemah

= [1+,2-]

SKuat

= [1+,1-]

Gain(SCerah,Angin)

= Entropy(SCerah) - (3/5)Entropy(SLemah) (2/5)Entropy(SKuat)


= 0.97075 - (3/5)0.91830 - (2/5)1.00000
= 0.01997

Atribut Kelembaban menyediakan prediksi terbaik pada level ini.


[M1, M2, ..., M14]
[9+,5-]

Ramalan_Cuaca
Cerah

Hujan

Mendung

[M1, M2, M8, M9, M11]


[2+,3-]

Ya

Kelembaban

[M4, M5, M6, M10, M14]


[3+,2-]

Normal

Tinggi

Tidak

Ya

[M1, M2, M8]

[M9, M11]

[0+,3-]

[2+,0-]

Untuk node cabang Ramalan_Cuaca = Hujan,


SHujan = [M4, M5, M6, M10, M14]
Mingg

Ramalan_Cua

ca

M4

Hujan

Suhu

Kelembab

Angin

Bermain_Teni

an
Sejuk

Tinggi

s
Lema
h

Ya

M5

Hujan

Dingin

Normal

Lema

Ya

h
M6

Hujan

Dingin

Normal

Kuat

Tidak

M10

Hujan

Sejuk

Normal

Lema

Ya

h
M14

Hujan

1. Values(Suhu)
SSejuk

Sejuk

Tinggi

Kuat

Tidak

= Sejuk, Dingin (Tidak ada suhu = panas saat ini)


= [2+,1-]

SDingin

= [1+,1-]

Gain(SHujan,Suhu)

= Entropy(SHujan) - (3/5)Entropy(SSejuk) (2/5)Entropy(SDingin)


= 0.97075 - (3/5)0.91830 - (2/5)1.00000
= 0.01997

2. Values(Kelembaban)
STinggi
SNormal

= Tinggi, Normal
= [1+,1-]
= [2+,1-]

Gain(SHujan,Kelembaban) = Entropy(SHujan) - (2/5)Entropy(STinggi) (3/5)Entropy(SNormal)


= 0.97075 - (2/5)1.00000 - (3/5)0.91830
= 0.01997
3. Values(Angin)
SLemah
SKuat

= Lemah, Kuat
= [3+,0-]
= [0+,2-]

Gain(SHujan,Angin) = Entropy(SHujan) - (3/5)Entropy(SLemah) (2/5)Entropy(SKuat)


= 0.97075 - (3/5)0.00000 - (2/5)0.00000
= 0.97075
Atribut Angin menyediakan prediksi terbaik pada level ini.

Algoritma :
If Ramalan_Cuaca = Cerah AND Kelembaban = Tinggi THEN
Bermain_Tenis = Tidak
If

Ramalan_Cuaca = Cerah AND Kelembaban = Normal THEN


Bermain_Tenis = Ya

If Ramalan_Cuaca = Mendung THEN Bermain_Tenis = Ya


If Ramalan_Cuaca = Hujan AND Angin = Kuat THEN Bermain_Tenis
= Tidak
If Ramalan_Cuaca = Hujan AND Angin = Lemah THEN
Bermain_Tenis = Ya
Ramalan_Cuaca

Suhu

Kelembaban

Angin

Bermain_Tenis

Cerah

Panas

Tinggi

Kuat

Tidak

Cerah

Panas

Tinggi

Lemah

Tidak

Cerah

Panas

Normal

Kuat

Ya

Cerah

Panas

Normal

Lemah

Ya

Cerah

Sejuk

Tinggi

Kuat

Tidak

Cerah

Sejuk

Tinggi

Lemah

Tidak

Cerah

Sejuk

Normal

Kuat

Ya

Cerah

Sejuk

Normal

Lemah

Ya

Cerah

Dingin

Tinggi

Kuat

Tidak

Cerah

Dingin

Tinggi

Lemah

Tidak

Cerah

Dingin

Normal

Kuat

Ya

Cerah

Dingin

Normal

Lemah

Ya

Mendung

Panas

Tinggi

Kuat

Ya

Mendung

Panas

Tinggi

Lemah

Ya

Mendung

Panas

Normal

Kuat

Ya

Mendung

Panas

Normal

Lemah

Ya

Mendung

Sejuk

Tinggi

Kuat

Ya

Mendung

Sejuk

Tinggi

Lemah

Ya

Mendung

Sejuk

Normal

Kuat

Ya

Mendung

Sejuk

Normal

Lemah

Ya

Mendung

Dingin

Tinggi

Kuat

Ya

Mendung

Dingin

Tinggi

Lemah

Ya

Mendung

Dingin

Normal

Kuat

Ya

Mendung

Dingin

Normal

Lemah

Ya

Hujan

Sejuk

Tinggi

Kuat

Tidak

Hujan

Sejuk

Tinggi

Lemah

Ya

Hujan

Sejuk

Normal

Kuat

Tidak

Hujan

Sejuk

Normal

Lemah

Ya

Hujan

Dingin

Tinggi

Kuat

Tidak

Hujan

Dingin

Tinggi

Lemah

Ya

Hujan

Dingin

Normal

Kuat

Tidak

Hujan

Dingin

Normal

Lemah

Ya

Flowchart :

ALGORITMA C4.5
Pengertian
Algoritma C4.5 merupakan algoritma yang digunakan untuk membangun
sebuah pohon keputusan (decision tree) dari data.Algoritma C4.5 merupakan
pengembangan dari algoritma ID3 yang juga merupakan algoritma untuk
membangun

sebuah

pohon

keputusan.Algoritma

C4.5

secara

rekursif

mengunjungi tiap simpul keputusan, memilih percabangan optimal, sampai tidak


ada cabang lagi yang mungkin dihasilkan.

Algoritma C4.5 merupakan salah satu algoritma machine learning. Dengan


algoritma ini, mesin(komputer) akan diberikan sekelompok data untuk dipelajari
yang disebut learning dataset.Kemudian hasil dari pembelajaran selanjutnya akan
digunakan untuk mengolah data-data yangbaru yang disebut test dataset. Karena
algoritma C4.5 digunakan untuk melakukan klasifikasi,jadi hasil dari pengolahan
test dataset berupa pengelompokkan data ke dalam kelas-kelasnya.
Algoritma C4.5
Algoritma C4.5 menggunakan konsep information gain atau entropy
reduction untuk memilih percabangan yang optimal. Misalkan terdapat sebuah
variabel X dimana memiliki sejumlah k nilai yang mungkin dengan probabilitas
p1, p2, , pk. Entropy menggambarkan keseragaman data dalam variabel X.
Entropy variabel X (H(X)) dihitung dengan menggunakan persamaan sebagai
berikut.
H ( X )= P j log 2 ( P j )
j

Misalkan terdapat sebuah kandidat simpul yang akan dikembangkan (S), yang
membagi data T ke dalam sejumlah subset T1, T2, , Tk. Dengan menggunakan
persamaan entropy diatas, nilai entropy tiap subset dihitung (HS(Ti)). Kemudian
total bobot subset simpul S dihitung dengan menggunakan persamaan sebagai
berikut.
k

H s ( T ) = Pi H s ( T i )
i=1

dimana Pi merupakan proporsi record pada subset i. Semakin seragam sebuah


subset terhadap kelas-kelas pembaginya, maka semakin kecil nilai entropy. Nilai
entropy paling kecil adalah 0, yang dicapai ketika record subset berada pada satu
kelas yang sama. Sedangkan nilai entropy paling tinggi adalah 1, yang dicapai
ketika record subset terbagi sama rata pada untuk tiap kelas. Semakin kecil nilai
entropy, semakin baik subset tersebut.
Dari nilai-nilai entropy yang didapat, nilai information gain untuk simpul S
dihitung melaui persamaan sebagai berikut.

gain ( S )=H ( T ) H s (T )
Pada algoritma C4.5, nilai information gain dihitung untuk seluruh simpul
yang mungkin dikembangkan. Simpul yang dikembangkan adalah simpul yang
memiliki nilai information gain yang paling besar.
Contoh
Berikut ini adalah uraian langkah-langkah dalam algoritma C4.5 untuk
menyelesaikan kasussuatu pertandingan tenis akan dilakukan atau tidak,
berdasarkan keadaan cuaca, suhu,kelembaban, dan angin. Data yang telah ada
pada Tabel 1, akan digunakan untuk membentukpohon keputusan. Pada Tabel 1,
atribut-atributnya adalah Cuaca, Suhu, Kelembaban, dan Berangin. Setiap
atributmemiliki nilai.Sedangkan kelasnya ada pada kolom Main yaitu kelas
Tidak dan kelas Ya.Kemudian data tersebut dianalisis; dataset tersebut
memiliki 14 kasus yang terdiri 10 Ya dan 4Tidak pada kolom Main (lihat
Tabel 2).
Tabel 1. Learning Dataset
No

Cuaca

Suhu

Kelembaba

Berangin

Main

1
2
3
4
5
6
7
8
9
10
11
12
13
14

Cerah
Cerah
Berawan
Hujan
Hujan
Hujan
Berawan
Cerah
Cerah
Hujan
Cerah
Berawan
Berawan
Hujan

Panas
Panas
Panas
Sejuk
Dingin
Dingin
Dingin
Sejuk
Dingin
Sejuk
Sejuk
Sejuk
Panas
Sejuk

n
Tinggi
Tinggi
Tinggi
Tinggi
Normal
Normal
Normal
Tinggi
Normal
Normal
Normal
Tinggi
Normal
Tinggi

Salah
Benar
Salah
Salah
Salah
Benar
Benar
Salah
Salah
Salah
Benar
Benar
Salah
Benar

Tidak
Tidak
Ya
Ya
Ya
Ya
Ya
Tidak
Ya
Ya
Ya
Ya
Ya
Tidak

Kemudian hitung entropi dengan rumus sebagai berikut :

Entropi ( S )= P j log 2 P j
j=1

Keterangan :

S adalah himpunan (dataset) kasus


k adalah banyaknya partisi S
Pj adalah probabilitas yang di dapat dari Sum(Ya) dibagi Total Kasus

(( )

Jadi Entropi ( S )=

( )) ( ( )

( ))

10
10
4
4
log 2
+
log2
=0.8631
14
14
14
14

Tabel 2. Hasil Perhitungan Pada Dataset


Total Kasus
14

Sum (Ya)
10

Sum (Tidak)
4

Entropi Total
0.8631

Setelah mendapatkan entropi dari keseluruhan kasus, lakukan analisis pada setiap
atribut dannilai-nilainya dan hitung entropinya seperti yang ditampilkan pada
Tabel 3.
Tabel 3. Analisis Atribut, Nilai, Banyaknya Kejadian Nilai, Entropi dan Gain
Node
1

Atribut
Cuaca

Nilai

Sum

Sum

Sum

Entropi

Berawa

(Nilai)
4

(Ya)
4

(Tidak)
0

n
Hujan
Cerah

5
5

4
2

1
3

0.7219
0.9709

Dingin
Panas
Sejuk

4
4
6

4
2
4

0
2
2

0
1
0.9182

Gain

0.2585
Suhu

0.1838
Kelembaba
n
Berangin

Tinggi
Normal

7
7

3
7

4
0

0.9852
0

Salah
Benar

8
6

6
2

2
4

0.8112
0.9182

0.3705
0.0059

Untuk menghitung gain setiap atribut rumusnya adalah :

Si

S Entropi(S i)

Gain ( A )=Entropi ( S )
i=1

Jadi Gain (Cuaca ) =0.8631

4
5
5
0+
0.7219+
0.9709 =0.2585
14
14
14

(( ) ( )

( )

Hitung pula Gain (Suhu), Gain (Kelembaban), dan Gain (Berangin). Hasilnya
dapat

dilihat

padaTabel

3.Karena

nilai

gain

terbesar

adalah

Gain

(Kelembaban).Maka Kelembaban menjadi nodeakar (root node).Kemudian pada


kelembaban normal, memiliki 7 kasus dansemuanya memiliki jawaban Ya
(Sum(Total) / Sum(Ya) = 7/7 = 1).Dengan demikian kelembaban normal menjadi
daun atau leaf.Lihat Tabel 3 yang selnya berwarna hijau.

Gambar. Pohon Keputusan Node 1 (root node)


Berdasarkan pembentukan pohon keputusan node 1 (root node), Node 1.1 akan
dianalisis lebihlanjut. Untuk mempermudah, Tabel 1 difilter, dengan mengambil
data yang memilikiKelembaban = Tinggi sehingga jadilah Tabel 4.
Tabel 4. Data yang Memiliki Kelembaban = Tinggi
No

Cuaca

Suhu

Kelembaba

Berangin

Main

1
2
3

Cerah
Cerah
Berawan

Panas
Panas
Panas

n
Tinggi
Tinggi
Tinggi

Salah
Benar
Salah

Tidak
Tidak
Ya

4
5
6
7

Hujan
Cerah
Berawan
Hujan

Sejuk
Sejuk
Sejuk
Sejuk

Tinggi
Tinggi
Tinggi
Tinggi

Salah
Salah
Benar
Benar

Ya
Tidak
Ya
Tidak

Kemudian data di Tabel 4 dianalisis dan dihitung lagi entropi atribut Kelebaban
Tinggi danentropi setiap atribut serta gainnya sehingga hasilnya seperti data pada
Tabel 5. Setelah itutentukan pilih atribut yang memiliki gain tertinggi untuk
dibuatkan node berikutnya.
Tabel 5. Hasil Analisis Node 1.1
Kelembaban

Sum (Ya)

Sum (Tidak)

Entropi

Tinggi
7

0.9852

Node
1

Atribut
Cuaca

Nilai

Sum

Sum

Sum

Entropi

Berawa

(Nilai)
2

(Ya)
2

(Tidak)
0

n
Hujan
Cerah

2
3

1
0

1
3

1
0

Dingin
Panas
Sejuk

0
3
4

0
1
2

0
2
2

0
0.9182
1

Gain

0.6995
Suhu

0.0202
Berangin

Salah
Benar

4
3

2
2

2
1

1
0.9182
0.0202

Dari Tabel 5, gain tertinggi ada pada atribut Cuaca, dan Nilai yang dijadikan daun
atau leafadalah Berawan dan Cerah. Jika divualisasi maka pohon keputusan
tampak seperti Gambar (Pohon Keputusan Analisis Node 1.1).Untuk menganalisis
node 1.1.2, lakukan lagi langkah-langkah yang sama seperti sebelumnya.Hasilnya
ditampilkan pada Tabel 6 dan Gambar (Pohon Keputusan Akhir).

Gambar. Pohon Keputusan Analisis Node 1.1


Tabel 6.Hasil Analisi Node 1.1.2.
No
1
2

Cuaca
Hujan
Hujan

Suhu

Kelembaba

Berangin

Main

Sejuk
Sejuk

n
Tinggi
Tinggi

Salah
Benar

Ya
Tidak

Kelembaban

Sum (Ya)

Sum (Tidak)

Entropi

Tinggi & Hujan


2

Node
1

Atribut
Suhu

Nilai

Sum

Sum

Sum

Entropi

Dingin
Panas
Sejuk

(Nilai)
0
0
2

(Ya)
0
0
1

(Tidak)
0
0
1

0
0
1

Gain

0
Berangin

Salah
Benar

1
1

1
0

0
1

0
0
1

Gambar. Pohon Keputusan Akhir


ALGORITMA CART
Pengertian
Metode CART ini pertama kali diajukan oleh Leo Breiman et al. pada tahun
1984.Pohon keputusan yang dihasilkan CART merupakan pohon biner dimana
tiap simpul wajib memiliki dua cabang. CART secara rekursif membagi records
pada data latihan ke dalam subset-subset yang memiliki nilai atribut target (kelas)
yang sama.
Algoritma CART
Algoritma CART mengembangkan pohon keputusan dengan memilih
percabangan yang paling optimal bagi tiap simpul.Pemilihan dilakukan dengan
menghitung segala kemungkinan pada tiap variabel.
Misalkan (s|t) merupakan nilai kebaikan kandidat cabang s pada simpul t,
maka nilai (s|t) dapat dihitung sebagai berikut:
P ( j|t L )P( jt R )
kelas

( s|t )=2 P L P R

Dimana

j=1

t L =simpul anak kiri dari simpult


t R=simpul anak kanan dari simpul t
PL =

jumlah record pada t L


jumlah seluruh record pada datalatihan

PR =

jumlah record padat R


jumlah seluruhrecord pada datalatihan

P( jt L )=

jumlah record kelas j pada t L


jumlah record pada simpult

P( jt R )=

jumlah record kelas j pada t R


jumlah record pada simpult

P ( j|t L )P( jt R )
kelas

Nilai

maksimal ketika record yang berada pada

j=1

cabang kiri atau kanan simpul memiliki kelas yang sama (seragam). Nilai
maksimal yang dicapai sama dengan jumlah kelas pada data. Misalkan jika data

P ( j|t L )P( jt R )
terdiri atas dua kelas, maka nilai maksimal

kelas

adalah 2.

j=1

Semakin seragam record pada cabang kiri atau kanan, maka semakin tinggi

P ( j|t L )P( jt R )

nilai

kelas

. Nilai maksimal 2PLPR sebesar 0.5 dicapai ketika

j=1

cabang kiri dan kanan memiliki jumlah record yang sama. Kandidat percabangan
yang dipilih adalah kandidat yang memiliki nilai (s|t) paling besar.
Contoh

Anda diberi data mengenai 8 orang nasabah yang pernah memperoleh kredit dari
Bank Indra. Data tersebut meliputi besarnya tabungan (yang berjenis kategorial:
rendah, sedang, atau tinggi), besarnya aset (yang berjenis kategorial: rendah,
sedang, atau tinggi), besarnya pendapatan pertahun (dalam ribuan dollars, yang
berjenis numerik dan berskala ration) dan risiko kredit (yang berjenis kategorial:
risiko baik atau buruk)
Nasabah
A
B
C
D
E
F
G
H

Tabungan
Sedang
Rendah
Tinggi
Sedang
Rendah
Tinggi
Rendah
Sedang

Aset
Tinggi
Rendah
Sedang
Sedang
Sedang
Tinggi
Rendah
Sedang

Pendapatan
75
50
25
50
100
25
25
75

Risiko Kredit
Baik
Buruk
Buruk
Baik
Baik
Baik
Buruk
Baik

Klasifikasi Cart

Noktah yang berbentuk elips disebut dengan noktah keputusan. Noktah


jenis ini adalah notkah yang masih akan bercabang karena pada noktah ini

suatu record belum ditentukan klasifikasinya.


Noktah keputusan pertama biasanya disebut noktah dasar
Noktah yang berbentuk persegi panjang disebut dengan noktah terminasi

Pembahasan Permasalahan

Pertama, kita memiliki data dari 8 nasabah seperti tertera di tabel sebelumnya
dan ingin memperoleh pengetahuan yang dapat diaplikasikan kepada mereka
yang berpotensi menjadi nasabah ke-9, ke-10, etc sehingga dengan
mengetahui aset, tabungan, dan pendapatan, ,kita dapat menentukan risiko

kredit mereka
Kedua, data itu kelak akan kita jadikan input bagi suatu algoritma
Ketiga, sebagai keluaran dari algoritma, kita akan memperoleh pengetahuan
yang secara sederhana dapat direpresentasikan dalam bentuk pohon
keputusan

Langkah-Langkah Algoritma CART :

Pertama, susun calon cabang (candidate split). Penyusunan ini dlakukan


terhadap seluruh variabel prediktor. Daftar yang berisi calon cabang disebut
daftar calon cabang mutakhir.
Calon cabang prediktor tabungan
Tabungan=rendah, dan tabungan={sedang, tinggi}
Tabungan=sedang, dan tabungan={rendah, tinggi}
Tabungan=tinggi, dan tabungan={rendah, sedang}
Calon cabang prediktor aset
Aset=rendah, dan aset={sedang, tinggi}
Aset=sedang, dan aset={rendah, tinggi}
Aset=tinggi, dan aset={rendah, sedang}
Calon cabang preditor pendapatan
Pendapatan 25.000 dan pendapatan > 25.000
Pendapatan 50.000 dan pendapatan > 50.000
Pendapatan 75.000 dan pendapatan > 75.000

Nama Calon Cabang

Calon Cabang Kiri

Calon Cabang Kanan

tabungan=rendah

tabungan={sedang, tinggi}

tabungan=sedang

tabungan={rendah, tinggi}

tabungan=tinggi

tabungan={rendah, sedang}

aset=rendah

aset={sedang, tinggi}

aset=sedang

aset={rendah, tinggi}

aset=tinggi

aset={rendah, sedang}

pendapatan <= 25.000

pendapatan > 25.000

pendapatan <= 50.000

pendapatan > 50.000

pendapatan <= 75.000

pendapatan > 75.000

Kedua, menilai kinerja keseluruhan calon cabang yang ada di daftar calon
cabang mutakhir dengan jalan menghitung nilai besaran kesesuaian. Kinerja
setiap calon cabang akan diukur melalui ukuran yang disebut dengan
kesesuaian (goodness). Kesesuain dari calon cabang s pada noktah keputusan
t dilambangkan dengan (s|t)

P ( j|t L )P( jt R )
kelas

( s|t )=2 P L P R

j=1

Dimana
t L =simpul anak kiri dari simpult
t R=simpul anak kanan dari simpul t
PL =

jumlah record pada t L


jumlah seluruh record pada datalatihan

PR =

jumlah record padat R


jumlah seluruhrecord pada datalatihan

P( jt L )=

jumlah record kelas j pada t L


jumlah record pada simpult

P( jt R )=

jumlah reco rd kelas j pada t R


jumlah record pada simpul t

N
o

Risiko
PL

PR

3/8=0,37

5/8=0,62

Kredit

2xPLxP
P(j|tL)

P(j|tR)

Phi (s|
Q(s|t)

1/3=0,33
Baik:

t)
0,437

4/5=0,8

0,46875

0,933

2/3=0,66
Buruk:

3/8=0,37

5/8=0,62

0,562
Baik:

3/3=1

2/5=0,4

Buruk:

0/3=0

3/5=0,6

2/8=0,25
3

1/5=0,2

0,46875

1,2

0,375

0,333

0,125

4/6=0,66
6/8=0,75

Baik:

1/2==0,5

7
2/6=0,33

Buruk:

1/2=0,5

2/8=0,25
4

5/6=0,83
6/8=0,75

Baik:

0/2=0

0,375

1,667

0,625

0,5

0,5

0,5

0,375

0,375

0,933

0,437

1/6=0,16

4/8=0,5

2/8=0,25

4/8=0,5

6/8=0,75

3/8=0,37

5/8=0,62

Buruk:

2/2=1

Baik:

3/4=0,75

2/4=0,5

Buruk:

1/4=0,25

2/4=0,5

Baik:

2/2=1

3/6=0,5

Buruk:

0/2=0

3/6=0,5

1/3=0,33
Baik:

4/5=0,8

0,46875

2/3=0,66
Buruk:

5/8=0,62

3/8=0,37

7/8=0,87

1/8=0,12

1/5=0,2
0,562

Baik:

2/5=0,4

3/3=1

Buruk:

3/5=0,6

0/3=0

0,46875

1,2

4/7=0,57
Baik:

0,187
1/1=0

0,21875

0,857

3/7=0,42
Buruk:

0/1=0

Ketiga, menentukan calon cabang manakah yang akan benar-benar menjadi


cabang dengan memilih calon cabang yang memiliki nilai kesesuaian (s|t)
terbesar. Setelah itu gambarkan percabangan. Menentukan calon cabang yang
manakah yang benar-benar menjadi cabang (s|t) terbesar

Noktah Keputusan A
{Catatan A, C, D, E, F, H}

Kembali ke Langkah Kedua dengan melihat daftar calon cabang


mutakhir masalah nasabah

Nama Calon Cabang

Calon Cabang Kiri

Calon Cabang Kanan

tabungan=rendah

tabungan={sedang, tinggi}

tabungan=sedang

tabungan={rendah, tinggi}

tabungan=tinggi

tabungan={rendah, sedang}

aset=rendah

aset={sedang, tinggi}

aset=sedang

aset={rendah, tinggi}

aset=tinggi

aset={rendah, sedang}

pendapatan <= 25.000

pendapatan > 25.000

pendapatan <= 50.000

pendapatan > 50.000

pendapatan <= 75.000

pendapatan > 75.000

Risik
o
N
o

Kredi
PL

PR

1/6=0,16

5/6=0,83

P(j|tL)

P(j|tR)

2xPLxP

Q(s|

Phi

t)

(s|t)
0,111

Baik:

1/1=1

4/5=0,8

0,27778

0,4

Buruk
:

0/1=0

1/5=0,2
2/3=0,66

3/6=0,5

3/6=0,5

Baik:

3/3=1

Buruk

2/6=0,33

4/6=0,66

0,66
0,5

0,333

0,444

0,444

0,444

0,5

0,222

0,444

0,5

0,222

0,444

0,444

1/3=0,33

0/3=0

Baik:

1/2==0,5

4/4=1

1/2=0,5

0/4=0

Baik:

3/4=0,75

2/2=1

1/4=0,25

0/2=0

Baik:

2/2=1

3/4=0,75

0/2=0

1/4=0,25

Baik:

1/2=0,5

4/4=1

1/2=0,5

0/4=0

Buruk

4/6=0,66

2/6=0,33

Buruk

2/6=0,33

4/6=0,66

Buruk

2/6=0,33

4/6=0,66

Buruk
:

2/3=0,66
8

3/6=0,5

3/6=0,5

5/6=0,83

1/6=0,16

0,66

Baik:

3/3=1

Buruk

1/3=0,33

0/3=0

Baik:

4/5=0,8

1/1=0

0,5

0,333

0,27778

0,4

0,111

Buruk
:

1/5=0,2

0/1=0

Tabungan={rendah, sedang}

Kembali ke Langkah Kedua dengan melihat daftar calon cabang


mutakhir masalah nasabah

Nama Calon Cabang

Calon Cabang Kiri

Calon Cabang Kanan

tabungan=rendah

tabungan={sedang, tinggi}

tabungan=sedang

tabungan={rendah, tinggi}

tabungan=tinggi

tabungan={rendah, sedang}

aset=rendah

aset={sedang, tinggi}

aset=sedang

aset={rendah, tinggi}

aset=tinggi

aset={rendah, sedang}

pendapatan <= 25.000

pendapatan > 25.000

pendapatan <= 50.000

pendapatan > 50.000

pendapatan <= 75.000

pendapatan > 75.000

Risiko

Phi

No

PL

PR

Kredit

P(j|tL)

P(j|tR)

2xPLxPR

Q(s|t)

(s|t)

0/2=0

2/2=1

Baik:

1/2=0,5

Buruk:

1/2=0,5

Baik:

1/2=0,5

Buruk:

1/2=0,5

Baik:

0/1=0

1/1=0

0,5

Buruk:

1/1=1

0/1=0

Baik:

1/1=1

0/1=0

0,5

Buruk:

0/1=0

1/1=1

Baik:

1/2=0,5

0/2=0

Buruk:

1/2=0,5

0/2=0

Baik:

1/2=0,5

Buruk:

1/2=0,5

Baik:

4/5=0,8

Buruk:

1/5=0,2

0/2=0

1/2=0,5

1/2=0,5

2/2=1

2/2=1

5/6=0,833

2/2=1

1/2=0,5

1/2=0,5

0/2=0

0/2=0

1/6=0,167

Aset=tinggi

Pegawai

Jabatan

Kelamin

Umur

Asal

Kategori Level

Service

Perempuan

45

Kota besar

Level 3

Service

Laki-laki

25

Kota besar

Level 1

Service

Laki-laki

33

kota kecil

Level 2

Manajemen

Laki-laki

25

Kota besar

Level 3

Manajemen

perempuan

35

kota kecil

Level 4

Manajemen

Laki-laki

26

kota kecil

Level 3

Manajemen

Perempuan

45

Kota besar

Level 4

Sales

Perempuan

40

kota kecil

Level 3

Sales

Laki-laki

30

Kota besar

Level 2

10

Sales

Perempuan

50

Kota besar

Level 2

11

Sales

Laki-laki

25

kota kecil

Level 1

Jika tidak ada noktah keputusan, pelaksanaan algoritma CART dihentikan dan
sebaliknya jika ada kembali ke langkah kedua.

Referensi :
Pengertian

dan

Konsep

Algoritma

ID3.

Diakses

dari

web,

http://s3.amazonaws.com/academia.edu.documents/31971224/Interactive_Dychot
omizer_Three.docx, pada tanggal 28 Maret 2015
Pengertian dan Konsep Algoritma C4.5 dan CART. Diakses dari web,
http://download.portalgaruda.org/article.php?
article=161148&val=5450&title=PERBANDINGAN%20PERFORMANSI
%20ALGORITMA%20C4.5%20DAN%20CART%20DALAM
%20%20KLASIFIKSI%20DATA%20NILAI%20MAHASISWA%20PRODI
%20TEKNIK%20KOMPUTER%20%20POLITEKNIK%20NEGERI
%20PADANG, pada tanggal 28 Maret 2015
Contoh

Algoritma

ID3.

Diakses

dari

web,

https://kaparang.files.wordpress.com/2011/09/bahan-6-ai-id3.doc, pada tanggal 28


Maret 2015
Contoh

Algoritma

C4.5.

Diakses

dari

web,

http://s3.amazonaws.com/academia.edu.documents/32989710/Belajar_Mudah_Al
goritma_Data_Mining_C4.5.pdf, pada tanggal 28 Maret 2015
Contoh

Algoritma

CART.

Diakses

dari

http://dc492.4shared.com/download/L2h55DbQ/metode_klasifikasi.pptx,
tanggal 28 Maret 2015

web,
pada

Anda mungkin juga menyukai