General Ideas in Inductive Logic Programming FOPI-RG - 19/4/05.

Slides:



Advertisements
Similar presentations
Inductive Logic Programming
Advertisements

Estimating the detector coverage in a negative selection algorithm Zhou Ji St. Jude Childrens Research Hospital Dipankar Dasgupta The University of Memphis.
Artificial Intelligence 14. Inductive Logic Programming
1/23 Learning from positive examples Main ideas and the particular case of CProgol4.2 Daniel Fredouille, CIG talk,11/2005.
Data Mining Classification: Alternative Techniques
1 CS 391L: Machine Learning: Rule Learning Raymond J. Mooney University of Texas at Austin.
Computer Science CPSC 322 Lecture 25 Top Down Proof Procedure (Ch 5.2.2)
Big Ideas in Cmput366. Search Blind Search State space representation Iterative deepening Heuristic Search A*, f(n)=g(n)+h(n), admissible heuristics Local.
FT228/4 Knowledge Based Decision Support Systems
BY CHASE YOUNG & TUCKER RAMEY
University of Texas at Austin Machine Learning Group Department of Computer Sciences University of Texas at Austin Discriminative Structure and Parameter.
LING 388: Language and Computers Sandiway Fong Lecture 5: 9/8.
ILP : Inductive Logic Programming
Uncertainty in Expert Systems (Certainty Factors).
Rulebase Expert System and Uncertainty. Rule-based ES Rules as a knowledge representation technique Type of rules :- relation, recommendation, directive,
RIPPER Fast Effective Rule Induction
Default Reasoning the problem: in FOL, universally-quantified rules cannot have exceptions –  x bird(x)  can_fly(x) –bird(tweety) –bird(opus)  can_fly(opus)
Methods of Proof Chapter 7, second half.. Proof methods Proof methods divide into (roughly) two kinds: Application of inference rules: Legitimate (sound)
1 DCP 1172 Introduction to Artificial Intelligence Chang-Sheng Chen Topics Covered: Introduction to Nonmonotonic Logic.
Answer Set Programming Overview Dr. Rogelio Dávila Pérez Profesor-Investigador División de Posgrado Universidad Autónoma de Guadalajara
Inductive Logic Programming: The Problem Specification Given: –Examples: first-order atoms or definite clauses, each labeled positive or negative. –Background.
Methods of Proof Chapter 7, Part II. Proof methods Proof methods divide into (roughly) two kinds: Application of inference rules: Legitimate (sound) generation.
ISBN Chapter 3 Describing Syntax and Semantics.
Relational Data Mining in Finance Haonan Zhang CFWin /04/2003.
Auto-Epistemic Logic Proposed by Moore (1985) Contemplates reflection on self knowledge (auto-epistemic) Allows for representing knowledge not just about.
Methods of Proof Chapter 7, second half.
Describing Syntax and Semantics
CSCI 5582 Fall 2006 CSCI 5582 Artificial Intelligence Lecture 22 Jim Martin.
CHAPTER 12 ADVANCED INTELLIGENT SYSTEMS © 2005 Prentice Hall, Decision Support Systems and Intelligent Systems, 7th Edition, Turban, Aronson, and Liang.
Inductive Logic Programming (for Dummies) Anoop & Hector.
Inductive Logic Programming Includes slides by Luis Tari CS7741L16ILP.
APPLICATIONS OF DATA MINING IN INFORMATION RETRIEVAL.
1 Knowledge Based Systems (CM0377) Lecture 12 (Last modified 2nd May 2002)
Introduction to ILP ILP = Inductive Logic Programming = machine learning  logic programming = learning with logic Introduced by Muggleton in 1992.
Kansas State University Department of Computing and Information Sciences CIS 830: Advanced Topics in Artificial Intelligence Wednesday, February 7, 2001.
1 Knowledge Based Systems (CM0377) Lecture 13 (Last modified 2nd May 2002)
November 10, Machine Learning: Lecture 9 Rule Learning / Inductive Logic Programming.
Decision Trees DefinitionDefinition MechanismMechanism Splitting FunctionSplitting Function Issues in Decision-Tree LearningIssues in Decision-Tree Learning.
Speeding Up Relational Data Mining by Learning to Estimate Candidate Hypothesis Scores Frank DiMaio and Jude Shavlik UW-Madison Computer Sciences ICDM.
CS Data Structures I Chapter 2 Principles of Programming & Software Engineering.
Multi-Relational Data Mining: An Introduction Joe Paulowskey.
Predicate Calculus Syntax Countable set of predicate symbols, each with specified arity  0. For example: clinical data with multiple tables of patient.
Machine Learning Chapter 5. Artificial IntelligenceChapter 52 Learning 1. Rote learning rote( โรท ) n. วิถีทาง, ทางเดิน, วิธีการตามปกติ, (by rote จากความทรงจำ.
Outline Inductive bias General-to specific ordering of hypotheses
Detecting Group Differences: Mining Contrast Sets Author: Stephen D. Bay Advisor: Dr. Hsu Graduate: Yan-Cheng Lin.
For Monday No new reading Homework: –Chapter 18, exercises 3 and 4.
1 Features as Constraints Rafael AccorsiUniv. Freiburg Carlos ArecesUniv. Amsterdam Wiet BoumaKPN Research Maarten de RijkeUniv. Amsterdam.
For Monday Finish chapter 19 No homework. Program 4 Any questions?
For Wednesday Read 20.4 Lots of interesting stuff in chapter 20, but we don’t have time to cover it all.
1 Universidad de Buenos Aires Maestría en Data Mining y Knowledge Discovery Aprendizaje Automático 5-Inducción de árboles de decisión (2/2) Eduardo Poggi.
CS 5751 Machine Learning Chapter 3 Decision Tree Learning1 Decision Trees Decision tree representation ID3 learning algorithm Entropy, Information gain.
For Monday Finish chapter 19 Take-home exam due. Program 4 Any questions?
CS 5751 Machine Learning Chapter 10 Learning Sets of Rules1 Learning Sets of Rules Sequential covering algorithms FOIL Induction as the inverse of deduction.
First-Order Logic and Inductive Logic Programming.
Finding frequent and interesting triples in text Janez Brank, Dunja Mladenić, Marko Grobelnik Jožef Stefan Institute, Ljubljana, Slovenia.
NMR98 - Logic Programming1 Learning with Extended Logic Programs Evelina Lamma (1), Fabrizio Riguzzi (1), Luís Moniz Pereira (2) (1)DEIS, University of.
1 Knowledge Based Systems (CM0377) Introductory lecture (Last revised 28th January 2002)
Automated discovery in math Machine learning techniques (GP, ILP, etc.) have been successfully applied in science Machine learning techniques (GP, ILP,
Web Mining and Semantic Web Web Mining and Semantic Web Pınar Şenkul Dept. of Computer Engineering.
Data Mining and Decision Support
1 Propositional Logic Limits The expressive power of propositional logic is limited. The assumption is that everything can be expressed by simple facts.
Chap. 10 Learning Sets of Rules 박성배 서울대학교 컴퓨터공학과.
Bald Eagle By Richard Hau. Eagles live in nest. Their nests can be built on the ground or in a tree. They live in nest so they can lay eggs and raise.
Frank DiMaio and Jude Shavlik Computer Sciences Department
Reasoning Under Uncertainty in Expert System
First-Order Logic and Inductive Logic Programming
Issues in Decision-Tree Learning Avoiding overfitting through pruning
Rule Learning Hankui Zhuo April 28, 2018.
Back to “Serious” Topics…
Methods of Proof Chapter 7, second half.
Presentation transcript:

General Ideas in Inductive Logic Programming FOPI-RG - 19/4/05

Outline ILP Problem settings Bottom-up and top-down learning Major Problem Areas Search Space Positive Only Noise Additional Points Applications Final Thoughts

Inductive Logic Programming Given: a set of examples, E background knowledge, BK Produce a set of relations (clauses) using BK that describe E. ILP has two problem settings: nonmonotonic normal

Given: Two sets, I+ and I-, of Herbrand interpretations (positive and negative examples). Find: A theory which is true under each I in I+, and false under each I in I-. ILP Settings - nonmonotonic Often only use positive examples for this problem setting

ILP Settings - non-monotonic bird(X):- feathers(X). swims(X):- fish(X); penguin(X). Examples: begin(e1) penguin(e1) bird(e1) feathers(e1) swims(e1) end(e1) begin(e2) carp(e2) fish(e2) scales(e2) swims(e2) end(e2) begin(e4) eagle(e4) bird(e4) feathers(e4) flies(e4) end(e4) begin(e3) ostrich(e3) bird(e3) feathers(e3) runs(e3) end(e3) Relations: Background knowledge: (e.g. Claudien - complicated declarative language bias (Dlab) definition)

ILP Settings - normal Given: background knowledge, BK, and evidence E = E+ E Find: A hypothesis H such that BK H E+ BK H E BK can be: Extensional (ground facts) Intensional (more general predicate definitions) Something specialised (depending on the ILP engine)

ILP Settings - normal Examples:bird(penguin) bird(eagle) bird(crow) bird(ostrich) Positive:bird(carp) bird(bat) bird(horse) Negative: fish(X) :- has_scales(X), swims(X). mammal(X):- warm_blooded(X), live_young(X). Background knowledge: swims(carp). swims(penguin). flies(crow). flies(bat). flies(eagle).lays_eggs(penguin). lays_eggs(crow). lays_eggs(eagle). lays_eggs(ostrich). lays_eggs(carp). runs(horse). runs(ostrich). bird(X):- lays_eggs(X), flies(X). Theory (one or more clauses): bird(penguin). bird(X):- lays_eggs(X), runs(X).

Bottom-up vs Top-down bird(X):- true. false. coverset E {} bird(penguin). bird(eagle). bird(crow). ….. bird(X):- flies(X),…..lays_eggs(X). bird(X):- flies(X). everything that is v. like an eagle everything that flies e+ (1 bird) bird(X):- lays_eggs(X). theta subsumption etc.

Bottom-Up Approach bird(crow) bird(eagle) bird(X):-  relative least general generalisation (rlgg) has(X, beak), has(X, talons), makes_nest(X), eats(X,rodents). lays_eggs(X), flies(X), has(X, feathers), bird(ostrich) bird(X):- has(X, talons), makes_nest(X), eats(X,Y), validate_food(X,Y). has(X, feathers), has(X, beak), lays_eggs(X), Used in GOLEM [Muggleton, 90]

Top-down Approach bird(X):-. bird(X):- lays_eggs(X). bird(X):- flies(X). bird(X):- lays_eggs(X), flies(X). … Some ILP engines use standard top-down search algorithms: depth-first, breadth-first, A*, etc. We can improve efficiency by: setting a depth-bound (max clauselength). paying attention to clause evaluation scores - coverage, MDL. — re-ordering candidate clauses based on score — pruning candidate clauses below a score threshold etc.

Problem areas Most commonly encountered: Exploring large search spaces Positive-only data sets Noisy data

Search Space The hypothesis space is bounded by: –Maximum clause length –Size of background knowledge (BK) Techniques to reduce background knowledge include: Excluding redundant predicates –Feature subset selection –Inverse entailment Replacing existing BK with compound predicates (feature construction).

1.Randomly pick a positive example, p. 2.Define the space of possible clauses that could entail that example. —Generate the bottom clause, — contains all the literals defined in BK that could cover p. 3.Search this space. Progol and Aleph’s Approach Uses inverse entailment. (Progol and Aleph were originally C-Progol and P-Progol, I’m unclear on the precise development history)

Positive-only Learning Assume output completeness –Every other pattern in the example space is negative Bottom-up learning Clustering –e.g. Relational Distance Based Clustering

Positive-only Learning Assume output completeness –Every other pattern in the example space is negative Bottom-up learning Clustering –e.g. Relational Distance Based Clustering

Create artificial negative examples –Using constraints to represent artificial negatives –Use a relational distance measure Use Bayes theorem –Progol creates an SLP from the data set and uses this create random artificial negatives Positive-only Learning

Noisy Data Techniques to avoid over-fitting. –Pre-pruning: limit length of clauses learned –Post-pruning: generalise/merge clauses that have a small cover set. –Leniency: don’t insist on a perfect theory Embed the uncertainty into the learning mechanism –Stochastic Logic Programs –Fuzzy ILP

Numerical Reasoning A lot of ILP engines don’t handle numerical reasoning without help. e.g. bird(X):- number_of_legs(X,Y), lessthan(Y, 3). [Karolic & Bratko, 97] First-Order Regression (if possible) add predicates to the background knowledge [Anthony & Frisch, 97] Farm it out to another process [Srinivasan & Camacho, 99] Lazy evaluation

Inventing Predicates Some ILP engines can invent new predicates and add them to the existing BK. FOIL only uses extensional BK and so can’t use this method. e.g. Progol uses constraints to call a predicate invention routine. :- constraint(invent/2)? invent(P,X):- {complicated code that includes asserts}.

Applications Natural Language Processing –Part of speech tagging –Semantic parsing –Learning Language in Logic workshops Bioinformatics –Predicting toxicology (carcinogens) –Discovering rules governing the 3D topology of protein structures It doesn’t work very well for User Modelling.

Final Thoughts There are lots of different approaches to ILP. Well known ILP systems: –Progol (and Aleph) –TILDE –Claudien –WARMR –FOIL –Merlin

Further Reading ILP Theory and Methods Inverse Entailment and Progol Analogical Prediction? – probably the other paper instead. FOIL TILDE Stochastic Logic Programs Lazy Evaluation Interactive Theory Revision (Luc’s book)? Beginning chapters Foundations of ILP, Nienhuys-Cheng and de Wolf Claudien and Dlab Learnability – pick a paper by Dzeroski