Algoritma PRISM.ppt

20
Knowledge Discovery in Databases dan Data Mining Classification (Bagian 1)

Transcript of Algoritma PRISM.ppt

Page 1: Algoritma PRISM.ppt

Knowledge Discovery in Databases dan Data

Mining

Classification (Bagian 1)

Page 2: Algoritma PRISM.ppt

April 19, 2023 2

Contoh Classification Diberikan examples berikut:

Bangunlah sebuah model yang dapat memprediksi class dari instance outlook=sunny, temperature=hot, humidity=low, dan windy=true.

Page 3: Algoritma PRISM.ppt

April 19, 2023 3

Masalah pada Jenis Atribut yang Diklasifikasi

Terdapat 2 (dua) tipe utama atribut:– Numerik – nilai-nilainya adalah angka.– Nominal – nilai-nilainya termasuk dalam beberapa kemungkinan yang

jumlahnya terbatas dan dispesifikasi sebelumnya.

Page 4: Algoritma PRISM.ppt

April 19, 2023 4

1R Diperkenalkan oleh R.C. Holte (1983).(*)

Dikenal juga dengan “1-R Holte”. 1R sendiri adalah kependekan dari “1-rule” atau “Infering

Rudimentary Rule” (?) Output algoritma 1R adalah “one level decision tree” yang dapat

disajikan juga melalui sebuah classification rule sets. 1R tidak menekankan akurasi sempurna atau 100% benar pada rule

sets yang dihasilkan. 1R tidak pernah dipertimbangkan sebagai salah satu pendekatan

formal dalam Machine Learning atau Data Mining. Namun tetap harus diingat: “Mengapa harus dipusingkan dengan

sebuah decision tree yang kompleks, ketika sebuah rule sets sederhana dapat melakukannya?”(*) Holte, R.C. 1993. Very simple classification rules perform well on most commonly used datasets. Machine Learning, 11:63-90.

Page 5: Algoritma PRISM.ppt

April 19, 2023 5

Algoritma 1R

FOR EACH atribut

FOR EACH value dari atribut ini, bentuk sebuah

rule sets dengan cara

Menghitung seberapa sering sebuah kelas

dihasilkan dari pasangan atribut=value ini

Dapatkan sebuah kelas yang paling banyak

dihasilkan atribut dengan value ini

Tambahkan sebuah rule “IF atribut = value

THEN kelas” ke dalam rule sets

Hitunglah tingkat kesalahan dari rules set ini

Pilihlah sebuah rules set dengan tingkat kesalahan terkecil

Page 6: Algoritma PRISM.ppt

April 19, 2023 6

Weather Problem DatasetsOvercast Hot High Weak YesRain Mild High Weak YesRain Cool Normal Weak YesRain Cool Normal Strong NoOvercast Cool Normal Strong YesSunny Mild High Weak NoSunny Cool Normal Weak YesRain Mild Normal Weak YesSunny Mild Normal Strong YesOvercast Mild High Strong YesOvercast Hot Normal Weak YesRain Mild High Strong No

Page 7: Algoritma PRISM.ppt

April 19, 2023 7

1R-Holte untuk Weather Problem

Page 8: Algoritma PRISM.ppt

April 19, 2023 8

PRISM Diperkenalkan oleh J. Cendrowska (1987).(*)

Termasuk kategori algoritma covering, berbeda dengan ID3 yang termasuk dalam kategori algoritma divide and conquer.

Disebut dengan pendekatan covering, karena pada setiap stage diidentifikasi rule yang mengcover sejumlah instances.

Output algoritma PRISM adalah sejumlah classification rules.

PRISM hanya menghasilkan rule-rule yang sempurna atau 100% benar.(*) Cendrowska, J. (1987). PRISM: an Algorithm for Inducing Modular Rules. International Journal of Man-Machine Studies, Vol. 27, No. 4, pp. 349-370.

Page 9: Algoritma PRISM.ppt

April 19, 2023 Gunawan, Teknik Informatika STTS 9

Prinsip Algoritma Covering

Space untuk semua instances/examples

Yang dicover rules sejauh ini

Rules yang akan ditambahkan kemudian

Classification Rules untuk Masalah yang Sama:IF x<=1.2 THEN kelas=bIF x>1.2 AND y>2.6 THEN kelas=aIF x>1.2 AND y<=2.6 THEN kelas=b

Bagaimana dengan Decision Treenya?

Page 10: Algoritma PRISM.ppt

April 19, 2023 10

Algoritma PRISM

FOR EACH kelas c

Inisialisasi E dengan instance set

WHILE E mengandung instances dalam kelas C

Bentuk sebuah rule dengan LHS kosong yang meprediksi kelas C

UNTIL R sempurna (tak ada atribut yang dapat dipakai), lakukan

FOR EACH atribut A yang tidak termasuk R,dan tiap nilai v,

Pertimbangkan untuk menambah kondisi A=v pada LHS dari R

Pilih A dan v untuk memaksimalkan akurasi p/t

(tips: pilih kondisi dengan nilai P yang terbesar)

Tambahkan A=v ke dalam R

Hapuslah semua instance yang tercover oleh R dari E

Catatan:

p = positive examples dari suatu kelas

t = total instances

Page 11: Algoritma PRISM.ppt

April 19, 2023 11

Contact Lens Dataset Berdasarkan kondisi apa seorang ahli optik akan menyarankan

seseorang yang mengalami gangguan mata: menggunakan soft contact-lense, menggunakan hard contact-lenses, atau justru tidak disarankan menggunakan contact-lense?

Diperkenalkan juga oleh J. Cendrowska. Catatan terms:

– spectacle prescription = peruntukan kaca mata yang diketahui– myope = rabun jauh– hypermetrope = rabun dekat– astigmatism = pandangan kabur, "lack of point focus…..”, “an

astigmatism refers to an irregular curvature of the cornea”.– presbyopic ( > +45 tahun) = batas usia lazimnya untuk mampu melihat

obyek pada jarak jauh (45 tahun)– pre-presbyopic ( < +45 tahun) = sebelum masa presbyopic

Sumber term: WordNet 2.0, http://www.allaboutvision.com/askdoc/astigmatism.htm

Page 12: Algoritma PRISM.ppt

April 19, 2023 12

Contact Lens Datasetmyope no reduced nonemyope no normal softmyope yes reduced nonemyope yes normal hardhypermetrope no reduced nonehypermetrope no normal softhypermetrope yes reduced nonehypermetrope yes normal hardmyope no reduced nonemyope no normal softmyope yes reduced nonemyope yes normal hardhypermetrope no reduced nonehypermetrope no normal softhypermetrope yes reduced nonehypermetrope yes normal nonemyope no reduced nonemyope no normal nonemyope yes reduced nonemyope yes normal hardhypermetrope no reduced nonehypermetrope no normal softhypermetrope yes reduced nonehypermetrope yes normal none

Page 13: Algoritma PRISM.ppt

April 19, 2023 13

PRISM untuk Contact Lens (#1)Dibentuk rule yang mengcover setiap class: hard,soft, dan none. Misalnya dimulai dari hard.IF ? THEN recommended = hardUntuk kondisi pada LHS yang masih kosong terdapat 9 pilihan:

age = young 2/8age = pre-presbyopic 1/8age = presbyopic 1/8spectacle prescription = myope 3/12spectacle prescription = hypermetrope 1/12astigmatism = no 0/12astigmatism = yes 4/12tear production rate = reduced 0/12tear production rate = normal 4/12

dipilih bagian yang terbesar = 4/12, secara acak dipilih salah satu antara nomor 7 dan nomor 9 pada daftar di atas, misalnya nomor 7:IF astigmatism = yes THEN recommended = hard

Page 14: Algoritma PRISM.ppt

April 19, 2023 14

PRISM untuk Contact Lens (#2)Rule If astigmatism = yes then recommended = hard jelas tidak akurat. Lihat tabel berikut:

Tampak bahwa rule tersebut hanya mengcover 4 instance yang benar dari total 12 instances. Sehingga refinement perlu dilakukan untuk rule: IF astigmatism = yes AND ? THEN recommended = hard

age spectacle prescription

Astigmatism tear production rate

reccomended lenses

young myope yes reduced noneyoung myope yes normal hardyoung hypermetrope yes reduced noneyoung hypermetrope yes normal hardpre-presbyopic myope yes reduced nonepre-presbyopic myope yes normal hardpre-presbyopic hypermetrope yes reduced nonepre-presbyopic hypermetrope yes normal nonepresbyopic myope yes reduced nonepresbyopic myope yes normal hardpresbyopic hypermetrope yes reduced nonepresbyopic hypermetrope yes normal none

Page 15: Algoritma PRISM.ppt

April 19, 2023 15

PRISM untuk Contact Lens (#3)IF astigmatism = yes AND ? THEN recommended = hard

Untuk kondisi pada LHS yang masih kosong terdapat 7 pilihan:age = young 2/4age = pre-presbyopic1/4age = presbyopic 1/4spectacle prescription = myope 3/6spectacle prescription = hypermetrope 1/6tear production rate = reduced 0/6tear production rate = normal 4/6

dipilih bagian yang terbesar = 4/6, yaitu nomor 6:IF astigmatism = yes AND tear production rate = normal THEN recommended = hard

Sebenarnya untuk sebuah class (misalnya hard), algoritma dapat dipaksa berhenti (misalnya disini pada kasus contact lens). Namun, bagaimana jika exact rule harus diperoleh, tanpa mempedulikan sekompleks apapun rulenya?

Page 16: Algoritma PRISM.ppt

April 19, 2023 16

PRISM untuk Contact Lens (#4)Rule IF astigmatism = yes AND tear production rate = normal THEN recommended = hard jelas masih belum akurat. Lihat tabel berikut:

Tampak bahwa rule tersebut hanya mengcover 4 instance yang benar dari total 6 instances. Sehingga refinement perlu dilakukan kembali untuk rule: IF astigmatism = yes AND tear production rate = normal AND ? THEN recommended = hard

age spectacle prescription

Astigmatism tear production rate

reccomended lenses

young myope yes normal hardyoung hypermetrope yes normal hardpre-presbyopic myope yes normal hardpre-presbyopic hypermetrope yes normal nonepresbyopic myope yes normal hardpresbyopic hypermetrope yes normal none

Page 17: Algoritma PRISM.ppt

April 19, 2023 17

PRISM untuk Contact Lens (#5)IF astigmatism = yes AND tear production rate = normal AND ? THEN recommended = hard

Untuk kondisi pada LHS yang masih kosong terdapat 5 pilihan:age = young 2/2age = pre-presbyopic 1/2age = presbyopic 1/2spectacle prescription = myope 3/3spectacle prescription = hypermetrope 1/3

Sehingga harus dipilih bagian yang terbesar, tetapi yang mana?2/2 atau 3/3? Dalam hal ini “sebaiknya dipilih yang mengcover lebih banyak instance”, atau nomor 4, sehingga rule sejauh ini adalah:IF astigmatism = yes AND tear production rate = normal AND spectacle presciption = myope THEN recommended = hard

Page 18: Algoritma PRISM.ppt

April 19, 2023 18

PRISM untuk Contact Lens (#6)Karena rule IF astigmatism = yes AND tear production rate = normal AND spectacle prescription = myope THEN recommended = hard sudah akurat. Lihat tabel berikut:

Tampak bahwa rule tersebut hanya mengcover 3 instance yang benar dari total 24 instances, dan baru 3 dari 4 instance untuk recommended = hard. Selanjutnya 3 instance pada tabel di atas dihapus dari total 24 instances, dan mencari rule lainnya dengan bentuk:

IF ? THEN recommended = hard

age spectacle prescription

astigmatism tear production rate

reccomended lenses

young myope yes normal hardpre-presbyopic myope yes normal hardpresbyopic myope yes normal hard

Page 19: Algoritma PRISM.ppt

April 19, 2023 19

PRISM untuk Contact Lens (#7) Dengan cara yang sama pada stage sebelumnya, berturut-turut

diperoleh:– age = young, adalah yang terbaik untuk condition pertama

(mengcover 1 dari 7). Mengapa angka 7 ?– astigmatism = yes, adalah yang terbaik untuk condition

kedua (dipilih 1/3). Apakah pilihan ini karena “tips” ?– tear production rate = normal, adalah yang terbaik

untuk condition ketiga (dipilih 1/1). Rule yang diperoleh adalah: IF age = young AND antigmatism = yes AND tear production rate = normal THEN recommended = hard sudah akurat. Mengcover 1/1? Atau 3/3?

Jadi seluruh kasus hard telah tercover, sehingga langkah-langkah berikutnya adalah untuk kasus soft dan none.

Page 20: Algoritma PRISM.ppt

April 19, 2023 20

PRISM untuk Contact Lens (#8)Koleksi Rule Lengkap pada Akhir Proses (9 Rule)• If spectacle prescription = myope and astigmatic = yes

and tear production rate = normal then recommendation = hard

• If age = young and astigmatic = yes and tear production rate = normal then recommendation = hard

• If age = young and astigmatic = no and tear production rate = normal then recommendation = soft

• If age = pre-presbyopic and astigmatic = no and tear production rate = normal then recommendation = soft

• If spectacle prescription = hypermetrope and astigmatic = no and tear production rate = normal then recommendation = soft

• If tear production rate = reduced then recommendation = none

• If age = presbyopic and spectacle prescription = myope and astigmatic = no then recommendation = none

• If age = pre-presbyopic and spectacle prescription = hypermetrope and astigmatic = yes then recommendation = none

• If age = presbyopic and spectacle prescription = hypermetrope and astigmatic = yes then recommendation = none