Anda di halaman 1dari 36

Rule Induction

Induksi Aturan
Bahasan Materi
• Pengantar
• Tipe Aturan
• Contoh Algoritma Induksi Aturan
– Algoritma LEM1
• Algoritma Induksi Aturan yang lain
Bahasan Materi
• Pengantar
• Tipe Aturan
• Contoh Algoritma Induksi Aturan
– Algoritma LEM1
• Algoritma Induksi Aturan yang lain
Pengantar
• Induksi aturan adalah salah satu teknik
terpenting dalam machine learning.
• “Keteraturan” yang tersembunyi dalam data
sering dinyatakan dalam bentuk aturan-aturan
(rules).
• Induksi aturan juga merupakan tools dasar
dalam Data Mining
• Biasanya aturan dinyatakan dalam bentuk:

If (atribut-1, value-1) and (attribute-2, value-2)


and … and (attribute-n, value-n) then (decision,
value).
Tabel 1. Contoh Dataset
Kasus Attributes Decision
Temperatur Pusing Lemah Mual Flu

1 Sangat-tinggi Ya Ya Tidak Ya
2 Tinggi Ya Tidak Ya Ya
3 Normal Tidak Tidak Tidak Tidak
4 Normal Ya Ya Ya Ya
5 Tinggi Tidak Ya Tidak Ya
6 Tinggi Tidak Tidak Tidak Tidak
7 Normal Tidak Ya Tidak Tidak
Terminologi
• Attribute adalah variabel independen, sedangkan
decision adalah variabel dependen
• Attribute dalam tabel 1 adalah Temperatur,
Pusing, Lemah dan Mual
• Decision dalam Tabel 1 adalah Flu
• Himpunan seluruh kasus yang memiliki decision
yang sama disebut dengan concept
• Himpunan kasus {1,2,4,5} adalah suatu concept
dari seluruh kasus yang terkena Flu (Flu=Ya)
Tabel 2. Dataset dengan Error
Kasus Attributes Decision
Temperatur Pusing Lemah Mual Flu

1 Sangat-tinggi Ya Ya Tidak Ya
2 Tinggi Ya Tidak Ya Ya
3 Normal Tidak Tidak Tidak Tidak
4 Normal Ya Ya Ya Ya
5 Tinggi Tidak Ya Tidak Ya
6 Tinggi Tidak Tidak Tidak Tidak
7 Normal Tidak 42,5 Tidak Tidak
Tabel 3. Dataset dengan Atribut
Numerik
Kasus Attributes Decision
Temperatur Pusing Lemah Mual Flu

1 41,6 Ya Ya Tidak Ya
2 39,8 Ya Tidak Ya Ya
3 36,8 Tidak Tidak Tidak Tidak
4 37,0 Ya Ya Ya Ya
5 38,8 Tidak Ya Tidak Ya
6 40,2 Tidak Tidak Tidak Tidak
7 36,6 Tidak Ya Tidak Tidak
Tabel 4. Dataset dengan Value yang
Hilang
Kasus Attributes Decision
Temperatur Pusing Lemah Mual Flu

1 Sangat-tinggi Ya Ya Tidak Ya
2 ? Ya Tidak Ya Ya
3 Normal Tidak ? Tidak Tidak
4 Normal ? Ya Ya Ya
5 Tinggi Tidak Ya Tidak Ya
6 Tinggi Tidak Tidak Tidak Tidak
7 Normal Tidak Ya Tidak Tidak
Tabel 5. Dataset yang Tidak Konsisten
Kasus Attributes Decision
Temperatur Pusing Lemah Mual Flu

1 Sangat-tinggi Ya Ya Tidak Ya
2 Tinggi Ya Tidak Ya Ya
3 Normal Tidak Tidak Tidak Tidak
4 Normal Ya Ya Ya Ya
5 Tinggi Tidak Ya Tidak Ya
6 Normal Tidak Ya Tidak Tidak
7 Normal Tidak Ya Tidak Ya
Syarat Induksi Aturan
• Dataset Tidak boleh mengandung error
• Sebelum/ketika dilakukan induksi aturan, atribut
numerik harus diubah menjadi atribut simbolik
– Proses mengubah data numerik ke data simbolik disebut
discretization/quantization (diskritisasi/kuantisasi)
• Dataset tidak mengandung missing value
• Dataset harus konsisten
• Untuk lebih detail silahkan dibaca lagi slide data
preprocessing (pertemuan I)
Bahasan Materi
• Pengantar
• Tipe Aturan
• Contoh Algoritma Induksi Aturan
– Algoritma LEM1
• Algoritma Induksi Aturan yang lain
Tipe Aturan
• Suatu kasus x dikatakan tercakup oleh suatu aturan r jika dan
hanya jika setiap kodisi (pasangan attribute-value) dari r
terpenuhi oleh atribut-value pada x yang bersesuaian.
• Concept C (yang didefinisikan pada sisi kanan aturan r)
diindikasikan oleh r.
• Suatu concept C tercakup lengkap oleh himpunan aturan R
jika dan hanya jika untuk setiap kasus x dari C terdapat
aturan r dari R dimana r mencakup x
• Untuk suatu dataset, himpunan aturan R dikatakan lengkap
jika dan hanya jika setiap concept dari dataset tercakup
lengkap oleh R
Konsistensi Aturan
• Suatu aturan r dikatakan konsisten dengan
dataset jika dan hanya jika untuk setiap kasus
x yang dicakup oleh r, x adalah anggota
concept C yang diindikasi oleh r.
• Suatu himpunan aturan R dikatakan konsisten
dengan dataset jika dan hanya jika setiap
aturan dari R konsisten dengan dataset.
Contoh
• Kasus 1 dari tabel 1 dicakup oleh aturan r
berikut:
(Pusing, Ya) -> (Flu, Ya)
• Aturan r di atas mengindikasi concept {1,2,4,5}
• Concept {1,2,4,5} tidak tercakup lengkap oleh
himpunan aturan yang beranggotakan r,
karena r hanya mencakup kasus 1,2, dan 4.
• Tetapi, aturan r konsisten dengan dataset
• Di sisi lain, ada aturan berikut:
(Pusing, Tidak) -> (Flu, Tidak)
• Aturan tersebut mencakup lengkap concept
{3,6,7} pada tabel 1, tetapi aturan ini tidak
konsisten dengan dataset tersebut.
• Aturan di atas mencakup kasus 3,5,6, dan 7
• Salah satu dari kedua aturan berikut:
(Pusing,Ya) & (Lemah,Ya) -> (Flu,Ya)
atau
(Temperatur, tinggi) & (Pusing,ya) -> (Flu, Ya)
Konsisten dengan dataset.
• Tetapi concept {1,2,4,5} tidak tercakup lengkap oleh
himpunan aturan yang beranggotakan kedua aturan
tersebut karena kasus 5 tidak dicakup oleh aturan manapun.
• Aturan pertama mencakup kasus 1 dan 4. aturan kedua
mencakup kasus 2
• Tugas utama dari induksi aturan adalah untuk
menginduksi suatu himpunan aturan R yang
lengkap dan konsisten. Himpunan aturan R
yang lengkap dan konsisten disebut
discriminant (Michalski, 1983).
• Misalkan Himpunan Aturan berikut:
– (Pusing,Ya) -> (Flu,Ya)
– (Temperatur,tinggi) & (lemah,ya) -> (Flu,ya)
– (Temperatur,normal) & (Pusing,tidak) -> (Flu,tidak)
– (Pusing,tidak)&(Lemah,tidak) -> (Flu,tidak)

Adalah discriminant.
• Tugas yang lain dari induksi aturan adalah
menginduksi aturan asosiatif, dimana di sisi
kiri dan kanan aturan hanya melibatkan
variabel atribut.
• Contoh aturan asosiatif:
(Mual,ya) -> (Pusing,Ya)
Bahasan Materi
• Pengantar
• Tipe Aturan
• Algoritma Induksi Aturan
– Algoritma LEM1
• Algoritma Induksi Aturan yang lain
Algoritma Induksi Aturan
• Asumsi:
– Dataset bebas dari error,
– atribut numerik sudah didiskritisasi,
– tidak ada value yang hilang pada atribut,
– Dataset konsisten
• Algoritma induksi aturan dapat dibagi dua:
– Global: ruang pencarian adalah himpunan seluruh nilai
atribut
– Local: ruang pencarian adalah himpunan pasangan
atribut-value
Algoritma LEM1
• Merupakan komponen dari sistem Data Mining
LERS (Learning from Examples using Rough Sets)
(Pawlak, 1982).
• B adalah himpunan bagian yang tidak kosong dari
himpunan seluruh atribut A.
• U adalah himpunan seluruh kasus.
• Relasi indiscernibility IND(B) adalah relasi pada U
untuk x,y E U oleh (x,y) E IND(B) jika dan hanya jika
untuk nilai x dan y dari seluruh atribut B identik.
• Relasi indiscernibility IND(B) adalah relasi
equivalence. Kelas-kelas Equivalence dari IND(B)
disebut juga himpunan elementary dari B.
• Contoh untuk tabel 1, dimana B = {Temperatur,
Pusing}, himpunan elementary dari IND(B) adalah
{1}, {2}, {3,7}, {4}, {5,6}
• Seluruh himpunan elementary B dinotasikan
dengan B*. Jadi untuk tabel 1:
{Temperatur,Pusing}* = {{1}, {2}, {3, 7}, {4}, {5,6}}
• Untuk suatu decision d dikatakan bahwa {d}
tergantung pada B jika dan hanya jika B*≤{d}*
• Global covering dari {d} adalah himpunan
bagian B dari A dimana {d} tergantung pada B
dan B minimum pada A
• Jadi global covering dari {d} dihitung dengan
membandingkan partisi B* dengan {d}*
Algoritma menghitung satu Global Covering
(input: Himpunan A berisi seluruh atribut, partisi {d}* pada U; output: global covering R tunggal);
Begin
Hitung partisi A*;
P:=A;
R:=0;
If A* ≤ {d}* then
Begin
For each attribut a pada A do
Begin
Q:=P-{a};
Hitung partisi Q*;
If Q* ≤ {d}* then P:= Q
End for
R:= P
End if
End algorithm
Dropping condition
• Dasar dari aturan global covering dihitung
menggunakan teknik dropping condition (Michalski,
1983)
• Untuk aturan dengan bentuk:
C2 & C2 … & Cn -> D
• Dropping condition artinya melakukan pemindaian
daftar semua kondisi dari kiri ke kanan, dengan
percobaan untuk membuang suatu kondisi.
• Hasilnya adalah kondisi yang lebih sedikit yang tidak
melanggar konsistensi dari discriminant
Jalannya Algoritma
• {Temperatur, Pusing, Lemah, Mual}* = {{1}, {2},
{3}, {4}, {5}, {6}, {7}},
• {Flu}* = {{1, 2, 4, 5}, {3, 6, 7}}
• {Temperatur, Pusing, Lemah, Mual}*≤ {Flu}*
bernilai true
• Lalu cek {pusing, lemah, mual}* ≤ {Flu}*
• {pusing, lemah, mual}* = {{1},{2},{3,6},{4},{5,7}}
• {pusing, lemah, mual}* ≤ {Flu}* bernilai false
• Lalu hitung {temperatur, lemah, mual}*= {{1},
{2},{3},{4},{5},{6},{7}}
• {temperatur,lemah,mual}* ≤ {Flu}* bernilai
true
• Partisi berikutnya yang akan dihitung adalah
{Temperatur, Mual}*
• {Temperatur, Mual}* = {{1},{2},{3,7},{4},{5,6}}
• {Temperatur, Mual}*≤ {Flu}* bernilai false
• Langkah terakhir adalah menghitung
{Temperatur,Lemah}*
• {Temperatur,Lemah}* = {{1},{2,6},{3},{4,7},{5}}
• {Temperatur,Lemah}* ≤ {Flu}* bernilai false
• Maka total covering bernilai: {Temperatur,
Lemah, Mual}
Drop Condition
• Kasus 1 pada tabel 1 mengimplikasikan aturan
awal:
(Temperatur, sangat-tinggi) & (Lemah, ya) &
(Mual, tidak) -> (Flu, ya)
• Kondisi pertama (Temperatur, sangat-tinggi)
tidak dapat di-drop karena aturan (Lemah,Ya)
& (Mual,tidak) -> (Flu,ya) mencakup kasus 1
dan 7 dari concept yang berbeda.
• Namun, percobaan untuk men-drop kondisi
berikutnya (Lemah, ya) dapat dilakukan karena
aturan:
(Temperatur,sangat-tinggi) & (Mual,tidak) -> (Flu,ya)
Hanya mencakup kasus 1.
• Kemungkinan berikutnya untuk men-drop kondisi
(Lemah,Ya) juga dapat dilakukan karena aturan:
• (Temperatur,sangat-tinggi) -> (Flu,Ya) hanya
mencakup kasus 1.
• Dengan cara yang sama aturan berikutnya
diinduksikan. Himpunan aturan lengkap yang
diinduksi oleh LEM1, adalah:
(Temperatur, sangat-tingi) -> (Flu,ya)
(Mual, Ya) -> (Flu, Ya)
(Temperatur, tinggi) & (Lemah,ya) -> (Flu,Ya)
(Lemah,Tidak) & (Mual, Tidak) -> (Flu,tidak)
(Temperatur,normal) & (Mual,Tidak)-> (Flu, Tidak)
Algoritma Induksi Aturan Yang Lain
• LEM2
• AQ
• CN2
• MLEM2
• PRISM
• MODLEM
• Dll...
Terima Kasih

Anda mungkin juga menyukai