Loading documents preview...
Decision Tree
Mata Kuliah : [ CF-1333 Alpro 2 ]
Disusun oleh :
Khairu Rahman
5207 100 030
Jurusan Sistem Informasi Fakultas Teknologi Informasi Institut Teknologi Sepuluh Nopember Surabaya
1
Pengertian Decision Tree
Decision Tree (Pohon Keputusan) adalah pohon dimana setiap cabangnya menunjukkan pilihan diantara sejumlah alternatif pilihan yang ada, dan setiap daunnya menunjukkan keputusan yang dipilih. Decision tree biasa digunakan untuk mendapatkan informasi untuk tujuan pengambilan sebuah keputusan. Decision tree dimulai dengan sebuah root node (titik awal) yang dipakai oleh user untuk mengambil tindakan. Dari node root ini, user memecahnya sesuai dengan algoritma decision tree. Hasil akhirnya adalah sebuah decision tree dengan setiap cabangnya menunjukkan kemungkinan sekenario dari keputusan yang diambil serta hasilnya.
Contoh Pemanfaatan Decision Tree
o
Diagnosa beberapa penyakit seperti kanker, hipertensi, stroke.
o
Menentukan apakah dengan kondisi yang ada layak untuk bermain tenis atau tidak
o
Menentukan apakah sebuah investasi bisnis layak dilakukan atau tidak
o
Pemilihan pegawai teladan sesuai dengan kriteria tertentu
o
Deteksi gangguan pada komputer atau jaringan komputer
o
Pemilihan produk seperti rumah, kendaraan dan lain lain
o
Dan banyak lagi
Konsep Decision Tree Mengubah data menjadi sebuah pohon keputusan (Decision Tree) dan aturanaturan keputusan (rule).
Data
Decision Tree
2
Rule
Salah satu pemanfaatannya adalah, dengan menyusun sebuah rule, kita dapat menentukan apakah seseorang mempunyai potensi untuk menderita hipertensi atau tidak berdasarkan data usia , berat badan dan jenis kelamin.
Konsep Data dalam Decision Tree Data dinyatakan dalam bentuk tabel dengan atribut dan record. 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. Atribut memiliki nilai-nilai yang dinamakan dengan instance. Misalkan atribut cuaca mempunyai instance berupa cerah, berawan dan hujan.
Agar lebih jelas, berikut diberikan contoh data langsung dalam bentuk tabelnya.
Hari
Cuaca
Angin
Temperatur
Main
Hari - 1
Cerah
Kencang
Panas
Tidak
Hari - 2
Cerah
Pelan
Panas
ya
Hari - 3
Berawan
Kencang
Sedang
tidak
Hari - 4
Hujan
Kencang
Dingin
Tidak
Hari - 5
Cerah
Lambat
Dingin
Ya
3
Entropy Entropy bisa dikatakan sebagai kebutuhan bit kelas. Semakin
kecil
nilai
entropy
maka
semakin
untuk menyatakan suatu baik
digunakan
untuk
mengekstraksi suatu kelas. Entropy(S) adalah jumlah bit yang diperkirakan dibutuhkan untuk dapat mengekstrak suatu kelas (+ atau -) dari sejumlah data acak pada ruang sample S. Dimana S adalah ruang (data) sample yang digunakan untuk training. P+ adalah jumlah yang bersolusi positif (mendukung) pada data sample untuk kriteria tertentu. P- adalah jumlah yang bersolusi negatif (tidak mendukung) pada data sample untuk kriteria tertentu. Dan besarnya Entropy pada ruang sample S didefinisikan dengan:
Entropy(S) = -p+ log2 p+ - p- log2 p-
Entropy ini selanjutnya juga digunakan untuk menentukan atribut mana dari data yang ada yang akan dijadikan sebagai node root.
Agar lebih jelas dalam penggunaannya, selanjutnya akan diberikan sebuah contoh penggunaan decision tree untuk menentukan penderita hipertensi. Mulai dari tabelnya, penghitungan entropy untuk menentukan root, pembentukan Decision Treenya sampai pembuatan rules nya.
Permasalahan
Penentuan
Seseorang
Penderita
Hipertensi Menggunakan Decision Tree o
Data diambil dengan 8 sample , dengan pemikiran bahwa yang mempengaruhi seseorang menderita hipertensi atau tidak adalah usia, berat badan, dan jenis kelamin
o
Usia mempunyai instance : muda dan tua, ; berat badan memiliki instance : underweight, average , dan overweight ; dan jenis kelamin memiliki instance : pria dan wanita
4
Data yang didapatkan dari 8 sample adalah :
Nama
Usia
Berat
Kelamin
Hipertensi
Ali
muda
overweight
Pria
Ya
Dustin
Muda
underweight
Pria
tidak
Ayu
Muda
average
wanita
Tidak
Budi
tua
Overweight
Pria
Tidak
Henri
Tua
Overweight
Pria
Ya
Dinal
Muda
Underweight
Pria
Tidak
Rina
Tua
Overweight
wanita
Ya
Jarwo
Tua
Average
Pria
Tidak
Langkah penyelesaian yang harus dilakukan : 1. menentukan node yg menjadi root 2. Membentuk Tree 3. Menyusun rules
1. Menentukan Node Root : o
Untuk menentukan node root , digunakan nilai entropy dari setiap kriteria dengan data sample yang ditentukan
o
Node yaang dipilih sebagai root adalah yang memiliki kriteria dengan entropy yang paling kecil.
o
Hitung entropy untuk atribut usia
5
o
Dengan cara yang sama lanjutkan untuk menghitung entropy atribut Berat dan Jenis Kelamin. Dan didapatkan :
o
Maka dipilihlah atribut berat badan sebagai node root karena memiliki nilai entropy paling kecil.
2. Penyusunan Decision Tree
Leaf Node berikutnya dapat dipilih pada bagian yang mempunyai nilai + dan -, pada contoh di atas hanya berat=overweight yang mempunyai nilai + dan – maka semuanya pasti mempunya leaf node. Untuk menyusun leaf node lakukan satu-persatu.
6
Leaf Node Usia dan Jenis Kelamin memiliki Entropy yang sama, sehingga tidak ada cara lain selain menggunakan pengetahuan pakar atau percaya saja pada hasil yang dipilih secara acak.
Maka bentuk akhir dari Decision Tree yang disusun adalah sebagai berikut :
7
Pada
usia=tua
ternyata
ada
1
data
menyatakan
ya
dan
1
data
menyatakan tidak, keadaan ini perlu dicermati. Pilihan hanya dapat ditentukan dengan bantuan dari seseorang yang ahli dalam bidang ini (penyakit hipertensi).
3. Dari Decision Tree yang telah dibentuk, dapat disusun rulesnya
Rule 1
Rule 2 Rule 3 o
Rule 4
Rule 1 : IF berat = average or berat = underweight THEN hipertensi = tidak
o
Rule 2 : IF berat = overweight and kelamin = wanita THEN hipertensi = ya
o
Rule 3 : IF berat = overweight and kelamin = pria and usia = muda THEN hipertensi = ya
o
Rule 4 : IF berat = overweight and kelamin = pria dan usia = tua THEN hipertensi = tidak
8
Setelah
mendapatkan
keempat
Rule
tersebut
kita
dapat
melihat
keakuratannya dengan membandingkannya dengan data yang kita miliki.
Nama
Usia
Berat
Kelamin
Hipertensi
Ali
muda
overweight
Pria
Ya
Dustin
Muda
underweight
Pria
tidak
Ayu
Muda
average
wanita
Tidak
Budi
tua
Overweight
Pria
Tidak
Henri
Tua
Overweight
Pria
Ya
Dinal
Muda
Underweight
Pria
Tidak
Rina
Tua
Overweight
wanita
Ya
Jarwo
Tua
Average
Pria
Tidak
Kesalahan (e) = 1/ 8 X 100 % = 12,5 %
9