ILP menggabungkan pembelajaran mesin induktif dengan pemrograman logika untuk memperoleh hipotesis dalam bentuk klause logika dari contoh positif dan negatif serta latar belakang pengetahuan. Beberapa algoritma ILP seperti FOIL dan Progol telah diterapkan untuk berbagai masalah seperti prediksi struktur protein dan klasifikasi kereta api Michalski.
3. • Istilah Inductive Logic Programming pertama kali diperkenalkan oleh Stephen
Muggleton pada tahun 1991.
• Inductive Logic Programming (ILP)
Inductive machine learning + Logic programming
• Komponen
E+ : Contoh positif
E- : Contoh negativ
B : Latar belakang pengetahuan (Backgroud Knowledge)
H : Hipothesis.
Skema: E + + E- + B => H
PENGENALAN
4. • Contoh Positif (E+):
grandfather (henry, john) ←
grandfather (henry, alice) ←
• Contoh negatif (E-)
← grandfather (john, henry)
← grandfather (alice, john)
• Latar belakang pengetahuan (B):
grandfather (X, Y) ← father (X, Z), parent(Z, Y)
father (henry, jane) ←
mother (jane. john) ←
mother (jane, alice) ←
Contoh Hubungan keluarga
5. • Hipotesis yang mungkin H1 ∈ H
parent (X, Y) ← mother (X, Y)
• H adalah himpunan hipothesis yang berisi jumlah spekulasi individu yang
sesuai dengan latar belakang pengetahuan dan contoh
• Kondisi yang harus dipenuhi oleh hipotesis
• Terkait antara konsistensi dan kelengkapan dengan contoh dan latar belakang
pengetahuan
• Konsistensi:
• Pertama kali, cek solusi dari permasalahan:
B ∪ E- ⊭ □ (prior satisfiability)
• Jika terdapat salah satu contoh negatif yang terbukti benar dari latar belakang informasi, maka
setiap hipotesis yang ditemukan tidak akan dapat mengkompensasi hal ini.
• B dan H konsisten dengan E-:
B ∪ H ∪ E- ⊭ □ (posterior satisfiability)
• Setelah menambah hipotesis seharusnya masih tidak mungkin untuk membuktikan contoh
negatif.
6. • Kelengkapan:
• H diperbolehkan untuk menjelaskan E+ relatif terhadap B:
B ∪ H ⊧ E+ (posterior sufficiency)
• Artinya H harus sesuai dengan contoh positif yang diberikan.
7. First Order Inductive Learner (FOIL; Quinlan 1990).
Ide:
• Aturan dalam membangun mencakup
– beberapa contoh positif
– tetapi tidak ada contoh negatif.
Setelah aturan ditemukan, akan menghapus aturah positif dan melanjutkan proses.
• Membangun Aturan:
– menambahkan literal ke body sampai tidak ada contoh negative
- jika literal memperkenalkan variabel baru, memperpanjang contoh ke semua konstanta yang
mungkin
FOIL
9. 1. Inverse resolution
2. Relative last general generalisations (rlggs)
3. Inverse implication
4. Inverse entailment
Teori
10. • Memberikan klausa C1, C2, disimpulkan menjadi C
Inverse resolution
• Melakukan pencarian, karena mungkin
ada banyak pasang klausa yang
menyebabkan C:
11. • Sistem ILP telah diterapkan untuk berbagai domain masalah. Banyak aplikasi
manfaat membentuk deskripsi relasional yang dihasilkan oleh sistem ILP.
• Area aplikasi meliputi:
- aktivitas struktur batuk (obat untuk penyakit Alzheimer, untuk penghambatan E.
Coli Dihydrofolate Reduktase, dalam analog suramin)
- pembelajaran prediksi mutagenesis;
- pembelajaran prediksi struktur sekunder protein;
- aturan dari database belajar catur;
- pembelajaran diagnostik untuk model kualitatif pasokan listrik satelit; dan
- pembelajaran model kualitatif dari sistem U-tube.
Aplikasi
12. • Memprediksi bentuk tiga dimensi protein dari urutan asam amino secara
luas diyakini menjadi salah satu masalah tersulit dalam biologi molekuler.
• Menarik bagi perusahaan farmasi karena bentuk protein umumnya
menentukan fungsinya sebagai enzim.
Aplikasi: Prediksi struktur sekunder protein
[Muggleton S., King R.D., and Sternberg M.J.E. (1992)].
13. • Asumsikan sepuluh kereta api: lima bepergian ke timur dan lima bepergian ke barat; setiap
kereta api terdiri dari lokomotif yang menarik gerbong; kereta yang bepergian ke arah timur
atau ke arah barat dengan ditentukan beberapa sifat dari kereta api.
Aplikasi: Michalski’s train problem
Tugas: Tentukan kereta mana yang mengarah ke timur dan ke barat?
14. Michalski’s train problem (2)
• Permasalahan kereta Michalski’s = Klasifikasi pekerjaan: tujuanya untuk
menghasilkan classifier (teori) yang dapat mengklasifikasikan kereta
sebagai Eastbound atau Westbound
• Latar belakang pengetahuan dari setiap kereta: bagian kereta, bentuknya,
banyak roda, apakah itu terbuka (yaitu tidak memiliki atap) atau tertutup,
apakah itu panjang atau pendek, menyerupai mobil.
• Selain itu, pasangan gerbong terhubung, pengetahuan yang satu di depan
yang lain dapat diekstraksi.
15. Michalski’s train problem (3)
• Contoh kereta arah ke timur
• Positive examples:
eastbound(east1).
eastbound(east2).
eastbound(east3).
eastbound(east4).
eastbound(east5).
• Negative examples:
eastbound(west6).
eastbound(west7).
eastbound(west8).
eastbound(west9).
eastbound(west10).
16. Michalski’s train problem (4)
• Latar belakang pengalaman kereta east1. Identifikasi : car_xy, dimana x nomor kereta dan y adalah
posisi. Contoh car_12 berarti kereta kedua dibelakang lokomotif kereta pertama
• short(car_12). short(car_14).
• long(car_11). long(car_13).
• closed(car_12).
• open(car_11). open(car_13). open(car_14).
• infront(east1,car_11). infront(car_11,car_12).
• infront(car_12,car_13). infront(car_13,car_14).
• shape(car_11,rectangle). shape(car_12,rectangle).
• shape(car_13,rectangle). shape(car_14,rectangle).
• load(car_11,rectangle,3). load(car_12,triangle,1).
• load(car_13,hexagon,1). load(car_14,circle,1).
• wheels(car_11,2). wheels(car_12,2).
• wheels(car_13,3). wheels(car_14,2).
• has_car(east1,car_11). has_car(east1,car_12).
• has_car(east1,car_13). has_car(east1,car_14).
17. Michalski’s train problem (5)
• Hipotesis yang dihasilkan dari ILP systems yaitu:
eastbound(A) ← has_car(A,B), not(open(B)), not(long(B)).
18. • Duce = menggunakan enam aturan inferensi induktif, empat
diantaranya didefinisikan sebagai klausul logika proposisional.
• CIGOL = membalikkan resolusi klausa dalam urutan pertama
predikat logika.
• Golem = didasarkan pada Relative last general generalisations
(rlggs).
• Progol = menerapkan kerangka inverting entailment
IMPLEMENTATIONS
19. • FOIL
• Inthelex (Incremental Theory Learner for
Example)
• Lime
• MIO
• MIS (Model Inference System)
• RSD
• Warmr
• 1BC dan 1BC2: Klasifikasi Bayesian
• ACE (A Combined Enggine)
• Alep
• Atom
• Claudien
• DL-Learner
• Dmax
20. • S.H. Muggleton. Inductive Logic Programming. New Generation Computing,
8(4):295-318, 1991.
• S.H. Muggleton and L. De Raedt. Inductive logic programming: Theory and
methods. Journal of Logic Programming, 19,20:629-679, 1994.
• Lavrac, N.; Dzeroski, S. (1994). Inductive Logic Programming: Techniques and
Applications. New York. http://www-ai.ijs.si/SasoDzeroski/ILPBook
• http://www.doc.ic.ac.uk/~shm/ilp.html diakses tanngal 12 Nopember 2014
• Use the Progol input file for Michalski's train problem:
http://www.comp.rgu.ac.uk/staff/chb/teaching/cmm510/michalski_train_data
Referensi
Notas del editor
Inductive logika pemrograman (ILP) adalah subfield pembelajaran mesin yang menggunakan logika pemrograman sebagai representasi yang seragam untuk contoh, latar belakang pengetahuan dan hipotesis.
hi·po·te·sis /hipotésis/ n sesuatu yg dianggap benar untuk alasan atau pengutaraan pendapat (teori, proposisi, dsb) meskipun kebenarannya masih harus dibuktikan; anggapan dasar;