Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Inductive Logic Programming
Pemrograman Logika Induktif
Hendy Irawan
23214344
TMDG 9 – STEI ITB
Latar Belakang dan Pengertian
Umum
● a subfield of machine learning which uses logic
programming as a uniform representati...
Pemrograman Logika
● Paradigma pemrograman berdasarkan logika formal, terdiri dari
kalimat-kalimat berbentuk logika yang m...
Bentuk-bentuk Penalaran
● Deduksi: Dari sebab ke efek (Prediksi)
– fakta a, aturan a => b
DUGA b ( Logika order-pertama )
...
Konsep Dasar ILP
● Mempelajari aturan logika secara otomatis dari contoh-contoh dan
pengetahuan latar belakang
● Misalnya:...
Contoh
● Pengetahuan
latar belakang B:
● Contoh-contoh
positif E+:
● Buat dugaan H:
eyang_dari(X,Y) :- ortu_dari(X,Z),
ort...
Algoritma
● Relative Least General Generalization (rlgg)
Plotkin, Gordon D. (1970). Meltzer, B.; Michie, D., eds. "A Note ...
Algoritma: Relative Least General Generalization (rlgg)
1)Merelatifkan tiap literal contoh positif dengan pengetahuan
lata...
Algoritma FOIL
● Masukan Daftar contoh
● Keluaran Aturan dalam bentuk logika predikat order-pertama
● FOIL (Contoh-contoh)...
Demo
● Live JavaScript App
http://ceefour.github.io/foiljs/www/
● Video
https://www.youtube.com/watch?v=y6uKDnOVQSc
Contoh Penggunaan / Aplikasi
● Constructing Biological Knowledge Bases by Extracting Information from Text
Sources (M. Cra...
Tren Mendatang dan Tantangan
● Mengkombinasikan pemrograman logika dengan probabilistik /
ketidakpastian => Pembelajaran R...
Daftar Pustaka
● Inductive Logic Programming. T.K. Prasad.
http://www.knoesis.org/tkprasad/
● Wikipedia
● https://class.co...
Upcoming SlideShare
Loading in …5
×

Inductive Logic Programming

796 views

Published on

Menggunakan pemrograman logika sebagai representasi seragam untuk
Contoh
Pengetahuan latar belakang
Dugaan

Published in: Science
  • Be the first to comment

Inductive Logic Programming

  1. 1. Inductive Logic Programming Pemrograman Logika Induktif Hendy Irawan 23214344 TMDG 9 – STEI ITB
  2. 2. Latar Belakang dan Pengertian Umum ● a subfield of machine learning which uses logic programming as a uniform representation for examples, background knowledge and hypotheses (Wikipedia) ● Menggunakan pemrograman logika sebagai representasi seragam untuk – Contoh – Pengetahuan latar belakang – Dugaan
  3. 3. Pemrograman Logika ● Paradigma pemrograman berdasarkan logika formal, terdiri dari kalimat-kalimat berbentuk logika yang mengekspresikan fakta dan aturan (Wikipedia) ● Contoh program logika: ● Dari program tersebut, kita dapat menanyakan tentang eyang: ortu_dari(candra,gilang). ortu_dari(gilang,wati). ortu_dari(bobi,haris). ortu_dari(haris,eli). eyang_dari(X,Y) :- ortu_dari(X,Z), ortu_dari(Z,Y). Query: eyang_dari(X,Y)? Answers: eyang_dari(candra,wati). eyang_dari(bobi,eli).
  4. 4. Bentuk-bentuk Penalaran ● Deduksi: Dari sebab ke efek (Prediksi) – fakta a, aturan a => b DUGA b ( Logika order-pertama ) ● Abduksi: Dari efek ke kemungkinan penyebab (Penjelasan) – aturan a => b, diketahui b PENJELASAN a ● Induksi: Dari pengamatan terkorelasi ke aturan (Belajar) – amati korelasi antara a1, b1, ..., an, bn BELAJAR a -> b
  5. 5. Konsep Dasar ILP ● Mempelajari aturan logika secara otomatis dari contoh-contoh dan pengetahuan latar belakang ● Misalnya: Pelajari aturan eyang_dari(A, B), bila diberikan pengetahuan latar belakang ortu-ortunya beserta contoh-contoh eyang ● Contoh positif + contoh negatif + pengetahuan latar belakang => dugaan ● Dapat digunakan untuk: – Klasifikasi – Prediksi ● Kelebihan ILP: dapat menggunakan lebih dari satu relasi: istri(X,Y) :- wanita(X), menikah(X,Y).
  6. 6. Contoh ● Pengetahuan latar belakang B: ● Contoh-contoh positif E+: ● Buat dugaan H: eyang_dari(X,Y) :- ortu_dari(X,Z), ortu_dari(Z,Y). ortu_dari(candra,gilang). ortu_dari(gilang,wati). ortu_dari(bobi,haris). ortu_dari(haris,eli). eyang_dari(candra,wati). eyang_dari(bobi,eli).
  7. 7. Algoritma ● Relative Least General Generalization (rlgg) Plotkin, Gordon D. (1970). Meltzer, B.; Michie, D., eds. "A Note on Inductive Generalization". Machine Intelligence (Edinburgh University Press) 5: 153–163. ● Progol Muggleton, S. (1991). "Inductive logic programming". New Generation Computing 8 (4): 295–318. doi:10.1007/BF03037089. Learning from positive data, S. Muggleton, "Proceedings of the Sixth International Workshop on Inductive Logic progrramming", Springer-Verlag, LNAI 1314, 1997. ● FOIL http://en.wikipedia.org/wiki/First_Order_Inductive_Learner ● Hail Ray, O., Broda, K., & Russo, A. M. (2003). Hybrid abductive inductive learning. In LNCS: Vol. 2835. Proceedings of the 13th international conference on inductive logic programming (pp. 311–328). Berlin: Springer. ● Imparo Kimber, T., Broda, K., & Russo, A. (2009). Induction on failure: learning connected Horn theories. In LNCS: Vol. 5753. Proceedings of the 10th international conference on logic programing and nonmonotonic reasoning (pp. 169–181). Berlin: Springer. ● Tilde http://www-ai.ijs.si/~ilpnet/systems/tilde.html
  8. 8. Algoritma: Relative Least General Generalization (rlgg) 1)Merelatifkan tiap literal contoh positif dengan pengetahuan latar belakang lengkap 2)Ubah dari bentuk Horn menjadi bentuk normal klausa 3)Anti-unifikasi tiap pasangan literal yang cocok 4)Hapus semua literal ternegasi yang mengandung variabel yang tidak muncul di literal positif 5)Ubah kembali tiap klausa menjadi bentuk Horn
  9. 9. Algoritma FOIL ● Masukan Daftar contoh ● Keluaran Aturan dalam bentuk logika predikat order-pertama ● FOIL (Contoh-contoh) – Anggap Pos adalah contoh-contoh positif – Anggap Pred adalah predikat yang hendak dipelajari – Ulang sampai Pos kosong: ● Anggap Neg adalah contoh-contoh negatif ● Set Body menjadi kosong ● Panggil LearnClauseBody ● Tambahkan Pred ← Body ke dalam aturan ● Hapus dari Pos semua contoh yang sesuai Body ● Prosedur LearnClauseBody – Ulang sampai Neg kosong: ● Pilih literal L ● Gabungkan L ke Body ● Hapus dari Neg contoh-contoh yang tidak sesuai L http://en.wikipedia.org/wiki/First_Order_Inductive_Learner
  10. 10. Demo ● Live JavaScript App http://ceefour.github.io/foiljs/www/ ● Video https://www.youtube.com/watch?v=y6uKDnOVQSc
  11. 11. Contoh Penggunaan / Aplikasi ● Constructing Biological Knowledge Bases by Extracting Information from Text Sources (M. Craven & J. Kumlien) [Craven99] ● The automatic discovery of structural principles describing protein fold space (A. Cootes, S.H. Muggleton, and M.J.E. Sternberg) [Cootes03] ● Mining Library Specifications Mempelajari spesifikasi antarmuka pemrograman aplikasi (API) sebagai relasi dan pola. Sriram Sankaranarayanan. ICSE 2008. http://www.cs.colorado.edu/~srirams/papers/icse2008.pdf ● Pola kehamilan yang memburuk berdasarkan mammogram ● Pola virus HIV ● Contoh-contoh lain dari kelompok UT-ML (Ray Mooney) http://www.cs.utexas.edu/~ml/publication/ilp.html
  12. 12. Tren Mendatang dan Tantangan ● Mengkombinasikan pemrograman logika dengan probabilistik / ketidakpastian => Pembelajaran Relasional Statistik (Statistical Relational Learning) ● Menggunakan pengukuran jarak relasional untuk klasifikasi dan klusterisasi, sehingga dapat memperhatikan ukuran kemiripan sekaligus struktur logika Bruynooghe [1998], Kirsten et al. [2001] ● Memadukan representasi logika atau relasional dalam reinforcement learning => relational reinforcement learning [Dzeroski et al., 2001] Inductive Logic Programming. Luc De Raedt.
  13. 13. Daftar Pustaka ● Inductive Logic Programming. T.K. Prasad. http://www.knoesis.org/tkprasad/ ● Wikipedia ● https://class.coursera.org/machlearning-001/lecture/195 ● Inductive Logic Programming. Luc De Raedt. https://lirias.kuleuven.be/bitstream/123456789/301407/1/il p

×