Entropy Dan Gain Decision Tree
Entropy Dan Gain Decision Tree
Kom
introducing
dimana:
Sv = himpunan bagian dari S yang mana atribut A
bernilai v.
|Sv| = jumlah elemen dalam Sv.
|S| = jumlah elemen dalam S.
Contoh:
Himpunan S adalah seperti berikut:
Ada 5 kelas dalam S,
yaitu level_1, level_2, level_3, informasi_lainnya, dan
bukan_anggota.
Entropy(S)
= - (2/12) log2 (2/12) - (1/12) log2 (1/12) - (1/12) log2 (1/12)
Entropy dan Gain
Entropy(Stidak_ok)
= - (6/6) log2 (6/6) = 0
Ada 3 variasi nilai dalam alasan
yaitu kasus_baru, kasus_lanjutan, dan informasi_lainnya.
Entropy(Skasus_baru)
= - (1/4) log2 (1/4) - (1/4) log2 (1/4) - (2/4) log2 (2/4)
Entropy dan Gain
Entropy(Skasus_lanjutan)
= - (1/4) log2 (1/4) - (1/4) log2 (1/4) - (2/4) log2 (2/4)
= 0,5 + 0,5 + 0,5 = 1,5
Entropy(Sinformasi_lainnya)
= - (2/4) log2 (2/4) - (2/4) log2 (2/4)
= 0,5 + 0,5 = 1
Gain(S, alasan)
= Entropy(S) - (4/12) * Entropy(Skasus_baru) - (4/12) *
Entropy(Skasus_lanjutan)
- (4/12) * Entropy(Sinformasi_lainnya)
= 1,959147917 - (4/12) * 1,5 - (4/12) * 1,5 - (4/12) * 1
= 1,959147917 - 0,5 - 0,5 - 0,333333333 = 0,625814584
Ada 2 variasi nilai dalam masalah yaitu serius dan tidak_serius.
Entropy(Sserius)
= - (2/6) log2 (2/6) - (1/6) log2 (1/6) - (3/6) log2 (3/6)
= 0,528320834 + 0,430827084 + 0,5 = 1,459147917
Entropy dan Gain
Entropy(Stidak_serius)
= - (1/6) log2 (1/6) - (1/6) log2 (1/6) - (1/6) log2 (1/6) - (3/6) log2
(3/6)
= 0,430827084 + 0,430827084 + 0,430827084 + 0,5 =
1,792481251
Gain(S, masalah)
= Entropy(S) - (6/12) * Entropy(Sserius) - (6/12) * Entropy(Stidak_serius)
= 1,959147917 - (6/12) * 1,459147917 - (6/12) * 1,792481251
= 1,959147917 - 0,729573958 - 0,896240626 = 0,333333333
status_anggota status_anggot
a
Berarti atribut yang diambil terlebih
dahulu adalah status_anggota
ok tidak_o
Himpunan Sok adalah seperti berikut: k
Alasan masalah layanan
kasus_baru serius level_1
kasus_baru tidak_seriu level_2
s
kasus_lanjutan serius level_1
kasus_lanjutan tidak_seriu level_3
s
informasi_lain serius informasi_lain
nya nya
informasi_lain tidak_seriu informasi_lain
nya s nya
Ada 4 kelas dalam Sok, yaitu level_1, level_2, level_3, dan
informasi_lainnya.
Entropy(Sok)
= - (2/6) log2 (2/6) - (1/6) log2 (1/6) - (1/6) log2 (1/6) - (2/6) log2
Entropy dan Gain
(2/6)
= 0,528320834 + 0,430827084 + 0,430827084 + 0,528320834 =
1,918295834
Ada 2 atribut dalam Sok, yaitu alasan dan masalah.
Ada 3 variasi nilai dalam alasan
yaitu kasus_baru, kasus_lanjutan, dan informasi_lainnya.
Entropy(Sok,kasus_baru)
= - (1/2) log2 (1/2) - (1/2) log2 (1/2)
Entropy dan Gain
= 0,5 + 0,5 = 1
Entropy(Sok,kasus_lanjutan)
= - (1/2) log2 (1/2) - (1/2) log2 (1/2)
= 0,5 + 0,5 = 1
Entropy(Sok,informasi_lainnya)
= - (2/2) log2 (2/2) = 0
Gain(Sok, alasan)
= Entropy(Sok) - (2/6) * Entropy(Sok,kasus_baru) - (2/6) *
Entropy(Sok,kasus_lanjutan)
- (2/6) * Entropy(Sok,informasi_lainnya)
= 1,918295834 - (2/6) * 1 - (2/6) * 1 - (2/6) * 0
= 1,918295834 - 0,333333333 - 0,333333333 0 = 1,251629168
Ada 2 variasi nilai dalam masalah yaitu serius dan tidak_serius.
Entropy(Sok,serius)
= - (2/3) log2 (2/3) - (1/3) log2 (1/3)
= 0,389975001 + 0,528320834 = 0,918295834
Entropy dan Gain
Entropy(Sok,tidak_serius)
= - (1/3) log2 (1/3) - (1/3) log2 (1/3) - (1/3) log2 (1/3)
= 0,528320834 + 0,528320834 + 0,528320834 = 1,584962501
Gain(Sok, masalah)
= Entropy(Sok) - (3/6) * Entropy(Sok,serius) - (3/6) *
Entropy(Sok,tidak_serius)
= 1,251629168 - (3/6) * 0,918295834 - (3/6) * 1,584962501
= 1,251629168 - 0,459147917 - 0,792481250 = 0,000000001
alasan status_anggot
a
Berarti atribut yang diambil
selanjutnya adalah alasan. ok tidak_o
alasan k
Himpunan Stidak_ok adalah seperti
berikut:
Alasan masalah layanan kasus_b
kasus_baru serius bukan_anggot aru
a kasus_lanju
kasus_baru tidak_seriu bukan_anggot tan
s a
informasi_lai
kasus_lanjutan serius bukan_anggot
nnya
a
kasus_lanjutan tidak_seriu bukan_anggot
s a
informasi_lain serius bukan_anggot
Cuma ada 1 kelas,
nya a
yaitu bukan_anggota
informasi_lain -> tidak
tidak_seriu bukan_anggot
diproses.
nya s a
status_anggot
a
ok tidak_o
alasan k bukan_angg
ota
kasus_b
aru
kasus_lanju
tan
informasi_lai
nnya
dan seterusnya...
hingga menghasilkan pohon keputusan seperti beriku
status_anggot
a
ok tidak_o
level_ alasan k bukan_ang
1
seri gota
us kasus_b
masalah
aru
level_ tidak_ser
2
ius
level_ seri
1 kasus_lanjuta
us n
masalah
level_ tidak_ser
3
ius informasi_lainn
informasi_lai ya
nnya
THEN layanan = level_1;
Rule set dibangkitkan dengan melakukan traversal
RULE 2 pohon keputusan ini, dan menghasilkan:
terhadap
IF status_anggota = ok
AND alasan = kasus_baru
AND masalah = tidak_serius
THEN layanan = level_2;
RULE 3
IF status_anggota = ok
AND alasan = kasus_lanjutan
AND masalah = serius
THEN layanan = level_1;
RULE 4
IF status_anggota = ok
AND alasan = kasus_lanjutan
AND masalah = tidak_serius
THEN layanan = level_3;
RULE 5
IF status_anggota = ok
AND alasan = informasi_lainnya
TERIMAKASIH