Membangun Decision Tree dengan Entropy (Manual)







  • Pembentukkan decison tree dimulai dari pembentukkan root.
  • Entropy diperlukan untuk membangun sebuah decision tree yaitu pada saat memilih attribut mana yang terbaik sebagai root decision tree.
  • Kali ini kita coba menghitung entropy secara manual.
  • Misalkan S adalah data yang digunakan untuk membuat decision tree.
  • p+ adalah probabilitas instances yang mendukung dalam S.
  • p- adalah probabilitas instances yang tidak mendukung dalam S.
  • Rumus untuk menghitung entropy(S) adalah sbb:

  • Supaya lebih mudah dimengerti, kita masuk saja langsung ke contoh kasusnya.
  • Misalkan kita memiliki data yang akan kita gunakan untuk membuat decison tree sbb:
    • Ada 8 record  data sample
    • Target Attribute label klasifikasi adalah DataScientist (Yes) atau bukan (No)
    • Ada 3 attribute yang bisa digunakan sebagai parameter yaitu Analisis (Baik, Sedang, Kurang), Programming (Baik, Kurang), dan Pendidikan (S2,S3).   


  • Langkah I: Menentukan Root

    • Menentukan node dengan menggunakan nilai Entropy dari setiap kriteria dengan data sample yang ditentukan. 
    • Node terpilih adalah node dengan nilai Entropy yang paling kecil.
    • Okay, attribute yang penting disini adalah Target Attribute yaitu Data Scientist dimana akan dipasangkan dengan masing-masing attribute Analisis, Programming, dan Pendidikan.
    • Kita mulai saja dulu dari attribute Programming. 

    • Kemudian kita hitung Entropy Programming sbb:.
    • E(Programming=Baik)= -(1/4)log(1/4) -(3/4)log2 (3/4) = 0.81
    • E(Programming=Kurang)= -(2/4)log(2/4) -(2/4)log(2/4) = 1
    • E(Programming) = (4/8) E(Programming=Baik)+ (4/8) E(Programming=Kurang) = 1/2 (0.81) + (1/2) (1) = 0.91
    • Kemudian kita hitung entropy untuk Pendidikan sbb:
    • E(Pendidikan=S2)= -(2/6)log(2/6) -(4/6)log(4/6) = 0.92
    • E(Pendidikan=S3)= -(1/2)log(1/2) -(1/2)log(1/2) = 1
    • E(Programming) = (6/8) E(Pendidikan=S2)  + (2/8) E(Pendidikan=S3) = 6/8(0.92) + (2/8) (1) = 0.94


    • Kemudian kita hitung entropy untuk Analisis sbb:
    • E(Analisis=Baik)= -(3/4)log(3/4) -(1/4)log(1/4) = 0.81
    • E(Analisis=Sedang)= -(0)log(0) -(2/2)log(2/2) = 0
    • E(Analisis=Kurang)= -(2/2)log(2/2) -(0)log(0) = 0
    • E(Analisis) = (4/8) E(Analisis=Baik) + (2/8) E(Analisis=Sedang) + 2/8 E(Analisis=Kurang)= 4/8(0.81) + 0 + 0 = 0.41 
    • Catatan disini (0)log(0) bernilai 0 khusus untuk perhitungan entropy. Dengan demikian, kita tidak perlu menyediakan instances lengkap untuk masing-masing attribute.Bila tidak ada instancesnya maka entropy untuk attribut tsb dihitung nol.
    • Karena untuk Entropy Analisis memiliki nilai terkecil, maka kita pilih Analisis sebagai Attribute di root.
    • Maka sampai langkah 1 kita sudah dapat membuat sebuah pohon awal sbb:

Proses Pembentukan decision tree ini belum selesai, masih akan berlanjut pada proses split.

Bacaan berikutnya kembali ke Classification
























4 comments:

  1. your article on data science is very good keep it up thank you for sharing.
    Data Science Training in Hyderabad

    ReplyDelete
  2. thank you for the valuable information giving on data science it is very helpful.
    Data Science Training in Hyderabad

    ReplyDelete
  3. With the excess of information accessible with the organizations today, they must be wary not to get caught in an interminable examination work out.machine learning course

    ReplyDelete