• Tidak ada hasil yang ditemukan

Tugas Sistem Pakar ID3

N/A
N/A
Protected

Academic year: 2021

Membagikan "Tugas Sistem Pakar ID3"

Copied!
13
0
0

Teks penuh

(1)

TUGAS SISTEM PAKAR

“ALGORITMA ID3”

Disusun Oleh :

Nama : Adityaranda Satriawan

NIM : 0910960001

PROGAM STUDI ILMU KOMPUTER

JURUSAN MATEMATIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS BRAWIJAYA

MALANG

2012

(2)

1.

Definisi ID3

Iterative Dichotomicer 3 (ID3) adalah algoritma decision tree learning (algoritma

pembelajaran pohon keputusan) yang paling dasar. Algoritma ini melakukan pencarian secara menyeluruh (greedy) pada semua kemungkinan pohon keputusan. Salah satu algoritma induksi pohon keputusan yaitu ID3 (Iterative Dichotomiser 3). ID3 dikembangkan oleh J. Ross Quinlan.

Kareakteristik ID3 dalam membangun pohon keputusan adalah secara top-down dan

divide-and-conquer. Top-down artinya pohon keputusan dibangun dari simpul akar ke daun,

sementara divide-and-conquer artinya training data secara rekursif dipartisi ke dalam bagian-bagian yang lebih kecil saat pembangunan pohon. Algoritma ID3 dapat diimplementasikan menggunakan fungsi rekursif. Algoritma ID3 berusaha membangun decision tree secara top-down, dengan mengevaluasi semua atribut yang ada dengan menggunakan suatu ukuran statistik (information gain) untuk mengukur efektivitas suatu atribut dalam mengklasifikasikan kumpulan sampel data.

Decision Tree adalah sebuah struktur pohon, dimana setiap node pohon

merepresentasikan atribut yang telah diuji, setiap cabang merupakan suatu pembagian hasil uji, dan node daun (leaf) merepresentasikan kelompok kelas tertentu.Level node teratas dari sebuah Decision Tree adalah node akar (root) yang biasanya berupa atribut yang paling memiliki pengaruh terbesar pada suatu kelas tertentu. Pada umumnya Decision Tree melakukan strategi pencarian secara top-down untuk solusinya.

Entropy

Sebuah obyek yang diklasifikasikan dalam pohon harus dites nilai entropinya. Entropy adalah ukuran dari teori informasi yang dapat mengetahui karakteristik dari impuryt ,dan homogenity dari kumpulan data. Dari nilai entropy tersebut kemudian dihitung nilai information gain (IG) dari masing-masing atribut.

Rumus Entropy (S) : Dimana :

S = Ruang (data) sample yang digunakan untuk training.

P+ = Jumlah yang bersolusi positif (mendukung) pada data sample untuk kriteria tertentu.

P- = Jumlah yang bersolusi negatif (tidak mendukung) pada data sample untuk kriteria tertentu.

(3)

Entropy (S) adalah jumlah bit yang diperkirakan dibutuhkan untuk dapat mengekstrak suatu kelas (+ atau -) dari sejumlah data acak pada suatu ruang sampel S. Entropy bisa dikatakan sebagai kebutuhan bit untuk menyatakan suatu kelas. Semakin kecil nilai entropy

maka semakin baik digunakan dalam mengekstraksi suatu kelas. Panjang kode untuk

menyatakan informasi secara optimal adalah –log2p bits untuk pesan yang mempunyai probabilitas p. Sehingga jumlah bit yang diperkirakan untuk mengekstraksi S ke dalam kelas adalah

Information Gain

Information Gain merupakan ukuran efektifitas suatu atribut dalam mengklasifikasikan data. Secara matematis, Information Gain dari suatu atribut A, dituliskan sebagai berikut :

Rumus Information Gain (S,A) :

Dimana : A = Atribut.

V = Menyatakan suatu nilai yang mungkin untuk atribut A. Values (A) : Himpunan yang mungkin untk atribut A. |Sv| = Jumlah sampel untuk nilai V.

|S| = Jumlah seluruh sampel data.

Entropy (Sv) = Entropy untuk sampel-sampel yang memilki nilai V.

Metode

a. Mencari sampel data yang akan digunakan untuk melaksanakan proses transformasi menjadi pengetahuan.

b. Menghitng nilai entropy dan informatin gain untuk menentukan the best classifier (nilai terbesar).

c. Melakukan konstruksi pohon keputusan, membentuk simpul yang berisi atribut tersebut. d. Lakukan operasi conjunction ( ^ ) pada setiap simpul yang dikunjungi sampai ditemukan

(4)

2.

Studi Kasus ID3

“Studi kelayakan dalam memilih lapangan sepakbola untuk event piala dunia di Brazil pada tahun 2014”

 Deskripsi masalah

Terdapat 11 lapangan sepak bola yang akan digunakan sebagai lapanagan untuk pertandingan Piala Dunia 2014. Dalam hal ini, 11 lapangan tersebut akan diseleksi kelayakannya dengan memperhatikan tiga parameter / atribut penilaian. Tiga parameter / atribut tersebut adalah :

1. Ukuran Tribun dikelompokan dalam tiga kategori (besar, sedang, kecil) 2. Pencahayaan dikelompokan dalam tiga kategori (bagus, cukup, kurang) 3. Kondisi Rumput dikelompokan dalam 2 kaetgori (bagus dan jelek)

 Tabel Informasi

Lapangan Ukuran Tribun Pencahayaan Kondisi Rumput Memenuhi

Lap1 Besar Bagus Baik Iya

Lap 2 Besar Kurang Buruk Tidak

Lap 3 Besar Cukup Buruk Iya

Lap 4 Besar Cukup Baik Iya

Lap 5 Sedang Kurang Buruk Tidak

Lap 6 Sedang Cukup Baik Iya

Lap 7 Sedang Cukup Buruk Iya

Lap 8 Sedang Bagus Baik Iya

(5)

Pada data kelayakan lapangan, jumlah kelas adalah 2, yaitu IYA dan TIDAK, maka dapat dilihat bahwa nilai c = 2. Jumlah sampel kelas 1 (IYA) adalah 8 dan jumlah sampel untuk kelas 2 (TIDAK) adalah 3. p1 = 8 dan p2= 3. Dengan demikian Entropy untuk kumpulan

sampel data S adalah :

Entropy (S) = - ( 8/11) log2 ( 8/11) – (3/11) log2 (3/11) = 0,8454

Dari tabel diatas, kita misalkan atribut Memenuhi bernilai IYA merupakan sampel (+), dan atribut Memenuhi bernilai TIDAK merupakan sampel (-), maka akan didiapat :

- Nilai (Ukuran Tribun) = Besar, Sedang, Kecil.

S = [ 8+ , 3- ] , | S | = 11 SBesar = [ 3+ , 1- ] , | S | = 4

SSedang = [ 3+ , 1- ] , | S | = 4

SKecil = [ 2+ , 1- ] , | S | = 3

Hitung masing – masing nilai Entropy SBesar , SSedang , SKecil dan Information Gain

untuk nilai Ukuran Tribun adalah :

Lap 10 Kecil Bagus Baik Iya

(6)

Entropy (S) = 0,8454

Entrophy (SBesar) = (-3/4) log2 (3/4) – (1/4) log2 (1/4) = 0,8113

Entrophy (SSedang) = (-3/4) log2 (3/4) – (1/4) log2 (1/4) = 0,8113

Entrophy (SKecil) = (-2/4) log2 (2/3) – (1/3) log2 (1/3) = 0,9183

Information Gain (S, Ukuran Tribun = E

= 0,8454 – (4/11) 0,8113 – (3/11) 0,9183

= 0,8454 – 0,2950 – 0,2950 – 0,25044

= 0,0049

- Nilai (Pencahayaan) = Bagus, Cukup, Kurang.

S = [ 8+ , 3- ] , | S | = 11 SBagus = [ 3+ , 0- ] , | S | = 3

SCukup = [ 4+ , 1- ] , | S | = 5

SKurang = [ 1+ , 2- ] , | S | = 3

Entropy (S) = 0,8454

Entrophy (SBagus) = (-3/3) log2 (3/3) – (0/3) log2 (0/3) = 0

Entrophy (SCukup) = (-4/5) log2 (4/5) – (1/5) log2 (1/5) = 0,7219

Entrophy (SKurang) = (-1/3) log2 (1/3) – (2/3) log2 (2/3) = 0,9183

Entrophy (SBagus) menunjukan entropy minimum karena jumlah sampel pada salah satu

kelas adalah = 0, memiliki keberagaman data minimum.

Information Gain (S, Pencahayaan) =

= 0,8454 – 0 – (5/11) 0,7219 - (3/11) 0,9183

= 0,8454 – 0,32814 – 0,25044

= 0,26682

- Nilai (Kondisi Rumput) = Baik, Buruk

S = [ 8+ , 3- ] , | S | = 11 SBaik = [ 6+ , 0- ] , | S | = 6

(7)

Entropy (S) = 0,8454

Entrophy (SBaik) = (-6/6) log2 (6/6) – (0/6) log2 (0/6) = 0 (Keberagaman data minimum)

Entrophy (SBuruk) = (-2/5) log2 (2/5) – (3/5) log2 (3/5) = 0,9709

Information Gain (S, Kondisi Rumput) =

= 0,8454 – 0 – (5/11) 0,9709

= 0,8454 – 0,44134

= 0,40406

Dari semua perhitungan diatas, maka didapatkan nilai Information Gain dari ketiga atribut (Ukuran Tribun, Pencahayaan, Kondisi Rumput) sebagi berikut :

IG (S,Ukuran Tribun) = 0,0049 IG (S,Pencahayaan = 0,26682 IG (S,Kondisi Rumput) = 0,40406

Dari ketiga nilai Information Gain di atas, IG(S, Kondisi Rumput) adalaha nilai Gain yang terbesar sehingga atribut Kondisi Rumput merupakan the best classifier yang akan menjadi root nantinya.

Setelah kita dapatkan node root, selanjutnya kita akan menyusun pohon keptusan berdasrkan nilai yang telah kita cari diatas.

 Iterasi 1 level 0

Setelah kita dapatkan the best classifier, langkah selanjutnya kita akan mengecek apakah perlu subtree dilevel berikutnya atau tidak. Atribut Kondisi Rumput memiliki 2 sampel (Baik dan Buruk). Untuk nilai baik terdapat 6 sampel. Sehingga perlu memanggil fungsi ID3 dengan kumpulan sampel berupa sampel baik = [6+,0-], atribut target = “Iya” dan kumpulan atribut = {Ukuran Tribun, Pencahayaan}. Dalam hal ini, semua sampel “baik” termasuk dalam kelas “Iya”. Maka node in akan berhenti dan mengembalikan satu simpul tunggal ke root dengan nilai “Iya”.

Baik Iya

 Iterasi 1 level 1

(8)

Pada iterasi ini, akan dievaluasi untuk atibut Kondisi Rumput dengan nilai “Buruk”. Nilai “Buruk” terdapat 5 sampel. Sehingga perlu memanggil fungsi ID3 dengan kumpulan SampelBuruk = [2+, 3-] dimana atribut target = “Iya” dan kumpulan atribut =

{Ukuran Tribun, Pencahayaan}.

Pada tahap ini akan dilakukan perhitungan IG untuk atribut Ukuran Tribun dan Pencahayaan, dengan ukuran sampel yang digunakan adalah SampelBuruk.

Maka, S = SampelBuruk = [2+, 3-], S = |5|

- Nilai (Ukuran Tribun) = Besar, Sedang, Kecil.

SBesar = [ 1+ , 1- ] , | S | = 2

SSedang = [ 1+ , 1- ] , | S | = 2

SKecil = [ 0+ , 1- ] , | S | = 1

Entropy (S) = (-2/5) log2 (2/5) – (3/5) log2 (3/5) = 0,9710

Entrophy (SBesar) = (-1/2) log2 (1/2) – (1/2) log2 (1/2) = 1

Entrophy (SSedang) = (-1/2) log2 (1/2) – (1/2) log2 (1/2) = 1

Entrophy (SKecil) = (-0/1) log2 (0/1) – (1/1) log2 (1/1) = 0

Information Gain (S, Ukuran Tribun = E

= 0,9710 – (2/5) 1 – (2/5) 1 – (1/5) 0

= 0,1710

- Nilai (Pencahayaan) = Bagus, Cukup, Kurang.

SBagus = [ 0+ , 0- ] , | S | = 0

SCukup = [ 2+ , 1- ] , | S | = 3

SKurang = [ 0+ , 2- ] , | S | = 2

Entropy (S) = (-2/5) log2 (2/5) – (3/5) log2 (3/5) = 0,9710

Entrophy (SBagus) = 0

Entrophy (SCukup) = (-2/3) log2 (2/3) – (1/3) log2 (1/3) = 0,9183

(9)

Information Gain (S, Ukuran Tribun = E

= 0,9710 – 0 – (3/5) 0,9183 – 0

= 0,4200

Dari perhitungan diatas, maka didapatkan nilai IG yang terbesar adalah IG (S,Pencahayaan). Sehingga Pencahayaan menjadi the best classifier yang diletakan pada node dibawah node Kondisi Rumput pada cabang nilai “buruk”.

Baik Buruk Iya

 Iterasi 2 level 0

Selanjutnya, setiap nilai pada atribut Pencahayaan akan dicek apakah perlu dibuat subtree dilevel berikutnya atau tidak. Untuk nilai “Bagus ( pada kumpulan sample

berupa SampleBuruk= [2+, 3-] ) terdapat 0 sample berarti Sample kosong. Sehingga,

perlu dibuat satu simpul daun yang tidak punya anak dibawahnya. Tidak perlu memanggil fungsi ID3.

Baik Buruk Iya

Bagus Tidak

 Iterasi 2 level 1

Nilai yang paling sering muncul pada SampelBuruk yaitu “Tidak”. Kemudian dilakukan

pengecekan untuk atribut “Pencahayaan bernilai “Cukup . Untuk nilai “Cukup ( pada kumpulan sample berupa SampleBuruk = [2+, 3-] ) terdapat 3 sample, berarti

sample “Cukup tidak kosong. Sehingga perlu memanggil fungsi ID3 dengan

kumpulan Sample berupa SampleCukup = [2+, 1-] , AtributTarget = “Iya . Dan

kumpulan atribut = {Ukuran Tribun}. Karena kumpulan atribut hanya terdapat 1, maka Kondisi Rumput

Pencahayaan

Pencahayaan Kondisi Rumput

(10)

akan langsung menjadi the best classifier dan diletakan dibawah node Pencahayaan pada cabang nilai “Cukup”.

Baik Buruk Iya

Bagus Cukup Tidak

 Iterasi 3 level 0

Selanjutnya masing – masing nilai pada Ukuran Tribun akan dilakukan pengecekan. Untuk nilai “Besar” ( pada kumpulan berupa Sample = [2+, 1-] ), terdapat 1 sampel , berarti SampleCukup tidak kosong. Sehingga, perlu memanggil fungsi ID3 dengan

kumpulan sample berupa SampleBesar = [ 1+, 0-] , Atribut Target = “Iya dan

kumpulan atribut = {}. Karena semua sampel pada SampelBesar termasuk dalam kelas

“Iya”, maka fungsi akan berhenti dan akan memberikan nilai balik dengan label “Iya”.

Baik Buruk Iya Bagus Cukup Tidak Besar Iya  Iterasi 3 level 1 Pencahayaan Kondisi Rumput Ukuran Tribun Pencahayaan Ukuran Tribun Kondisi Rumput

(11)

Selanjutnya dilakukan pengecekan untuk nilai “Sedang” pada atribut Ukuran Tribun. Ternyata terdapat 1 sampel pada kumpulan sampel dimana Kondisi Rumput bernilai “Buruk dan Pencahayaan bernilai ”Cukup , karena SampleSedang tidak kosong maka

perlu memanggil fungsi ID3 dengan Kumpulan Sampel berupa SampleSedang = [1+, 0- ],

AtributTarget = “Iya , dan KumpulanAtribut = {}. Karena semua sampel pada SampelSedang termasuk dalam kelas “Iya”, maka fungsi akan berhenti dan akan

memberikan nilai balik dengan label “Iya”.

Baik Buruk Iya Bagus Cukup Tidak Besar Sedang Iya Iya  Iterasi 3 level 2

Selanjutnya pengecekan dilakukan untuk nilai “Kecil” pada atribut Ukuran Tribun. Ternyata terdapat 1 sampel pada kumpulan sampel dimana Kondisi Rumput bernilai “Buruk dan Pencahayaan bernilai ”Cukup , karena SampleKecil tidak kosong maka

perlu memanggil fungsi ID3 dengan Kumpulan Sampel berupa SampleKecil = [0+, 1- ],

AtributTarget = “Iya , dan KumpulanAtribut = {}. Karena semua sampel pada SampelKecil termasuk dalam kelas “Tidak”, maka fungsi akan berhenti dan akan

memberikan nilai balik dengan label “Tidak”.

Baik Buruk

Pencahayaan

Ukuran Tribun Kondisi Rumput

(12)

Iya

Bagus Cukup Tidak

Besar Sedang Kecil Iya Iya Tidak

 Iterasi 2 level 1

Setelah semua nilai pada atribut Ukuran Tribun di evaluasi, makan iterasi akan kembali ke iterasi 2 untuk mengevaluasi nilai ”Kurang” pada atibut Pencahayaan. Didapatkan 2 sampel pada kumpula sampel dimana nilai Kondisi Rumput = “Buruk”, Pencahayaan = “Cukup”. Karena SampelKurang tidak kosong, maka perlu memanggil fungsi ID3 dengan

kumpulan sampel berupa SampelKurang = [0+, 2-], AtributTarget = “Iya , dan

KumpulanAtribut = {}. Karena semua sampel pada SampelKurang termasuk dalam kelas

“Tidak”, maka fungsi akan berhenti dan akan memberikan nilai balik ke root dengan label “Tidak”.

Baik Buruk Iya

Bagus Cukup Kurang

Tidak Tidak

Besar Sedang Kecil Iya Iya Tidak

Pencahayaan

Ukuran Tribun

Pencahayaan

Ukuran Tribun Kondisi Rumput

(13)

Maka akan didapatkan pohon keputusan final seperti gambar di atas. Dari pohon keputusan diatas akan dapat digunakan untuk melakukan penelusuran terhadap sampel data Lapangan lain yang mungkin dari kombinasi yang ada dengan cara penelusuran dimulai dari Root menuju ketiga leaf node tersebut.

Contoh :

- Kondisi Rumput = Buruk , Pencahayaan = Bagus, Ukuran Tribun = Besar, maka Memenuhi = Tidak.

- Kondisi Rumput = Buruk , Pencahayaan = Bagus, Ukuran Tribun = Kecil, maka Memenuhi = Tidak.

- Kondisi Rumput = Baik , Pencahayaan = Cukup, Ukuran Tribun = Kecil, maka Memenuhi = Iya.

Referensi

Dokumen terkait

KOMISI INFORMASI PUSAT.. Publik dalam mengelola informasi sesuai dengan UU No. 14 Tahun 2008, dengan harapan akan terjadi refleksi atas kinerja kelembagaan dan munculnya

(1) Apabila kewajiban-kewajiban yang tersebut dalam Undang-undang ini kecuali yang dimaksud dalam pasal 36 dan 37 tidak dipenuhi oleh bank yang bersangkutan, Bank Indonesia

Isinya, “Kepada Yth: Bpk Walikota Jakarta Pusat, pelayanan di setiap PTSP kelurahan lelet atau lambat tidak sesuai seperti yang diklaim pejabat- pejabat terkait di media.. Kami

Faktor- faktor yang mendorong terjadinya pernikahan dini di Desa Jambar diantaranya disebabkan oleh faktor pengetahuan, faktor ekonomi, faktor pendidikan, pergaulan

Model 2 dengan perkuatan geotekstil yang diletakkan di bawah tampang beton aspal yang terletak di tengah-tengah lapisan binder mempunyai modulus elastisitas dan modulus

Tujuan penulisan hukum ini untuk mengetahui pelaksanaan Peraturan Menteri Kelautan Dan Perikanan serta untuk mengetahui permasalahan yang timbul dengan berlakunya Peraturan

Saat ini Dinas Peternakan Kabupaten Kotabaru Kalimantan Selatan sudah mengikuti aturan dari Kementerian Pertanian melalui Pusat Data dan Informasi Pertanian (PUSDATIN),

Dan untuk pendugaan kadar asam lemak bebas biji nyamplung metode kalibrasi yang terbaik adalah metode PLS, data reflektan, dan perlakuan data kombinasi dari