Inductive Logic Programming Includes slides by Luis Tari CS7741L16ILP.

Slides:



Advertisements
Similar presentations
Explanation-Based Learning (borrowed from mooney et al)
Advertisements

Analytical Learning.
Bayesian Abductive Logic Programs Sindhu Raghavan Raymond J. Mooney The University of Texas at Austin 1.
CPSC 502, Lecture 15Slide 1 Introduction to Artificial Intelligence (AI) Computer Science cpsc502, Lecture 15 Nov, 1, 2011 Slide credit: C. Conati, S.
Knowledge Representation and Reasoning Learning Sets of Rules and Analytical Learning Harris Georgiou – 4.
Combining Inductive and Analytical Learning Ch 12. in Machine Learning Tom M. Mitchell 고려대학교 자연어처리 연구실 한 경 수
Knowledge in Learning Copyright, 1996 © Dale Carnegie & Associates, Inc. Chapter 19 Spring 2004.
Induction and Decision Trees. Artificial Intelligence The design and development of computer systems that exhibit intelligent behavior. What is intelligence?
Chapter 10 Learning Sets Of Rules
CPSC 322 Introduction to Artificial Intelligence September 15, 2004.
CPSC 322, Lecture 19Slide 1 Propositional Logic Intro, Syntax Computer Science cpsc322, Lecture 19 (Textbook Chpt ) February, 23, 2009.
UNIVERSITY OF SOUTH CAROLINA Department of Computer Science and Engineering CSCE 580 Artificial Intelligence Ch.5 [P]: Propositions and Inference Sections.
CSCI 5582 Fall 2006 CSCI 5582 Artificial Intelligence Lecture 21 Jim Martin.
Relational Data Mining in Finance Haonan Zhang CFWin /04/2003.
Statistical Relational Learning for Link Prediction Alexandrin Popescul and Lyle H. Unger Presented by Ron Bjarnason 11 November 2003.
Data Mining with Decision Trees Lutz Hamel Dept. of Computer Science and Statistics University of Rhode Island.
Scientific Thinking - 1 A. It is not what the man of science believes that distinguishes him, but how and why he believes it. B. A hypothesis is scientific.
1 MACHINE LEARNING TECHNIQUES IN IMAGE PROCESSING By Kaan Tariman M.S. in Computer Science CSCI 8810 Course Project.
Chapter 3: Methods of Inference Expert Systems: Principles and Programming, Fourth Edition.
CSCI 5582 Fall 2006 CSCI 5582 Artificial Intelligence Lecture 22 Jim Martin.
Introduction to Earth Science Doing Science.  Scientific method – a systemic approach to answering questions about the natural world  Sufficient observation.
Inductive Logic Programming (for Dummies) Anoop & Hector.
Recognition of Multi-sentence n-ary Subcellular Localization Mentions in Biomedical Abstracts G. Melli, M. Ester, A. Sarkar Dec. 6, 2007
Copyright R. Weber Machine Learning, Data Mining ISYS370 Dr. R. Weber.
Notes for Chapter 12 Logic Programming The AI War Basic Concepts of Logic Programming Prolog Review questions.
INTRODUCTION TO MACHINE LEARNING. $1,000,000 Machine Learning  Learn models from data  Three main types of learning :  Supervised learning  Unsupervised.
1 Machine Learning: Lecture 11 Analytical Learning / Explanation-Based Learning (Based on Chapter 11 of Mitchell, T., Machine Learning, 1997)
Learning Structure in Bayes Nets (Typically also learn CPTs here) Given the set of random variables (features), the space of all possible networks.
Machine Learning Chapter 11. Analytical Learning
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.
Machine Learning CSE 681 CH2 - Supervised Learning.
Sampletalk Technology Presentation Andrew Gleibman
CS Learning Rules1 Learning Sets of Rules. CS Learning Rules2 Learning Rules If (Color = Red) and (Shape = round) then Class is A If (Color.
Kansas State University Department of Computing and Information Sciences CIS 830: Advanced Topics in Artificial Intelligence Friday, February 4, 2000 Lijun.
November 10, Machine Learning: Lecture 9 Rule Learning / Inductive Logic Programming.
Speeding Up Relational Data Mining by Learning to Estimate Candidate Hypothesis Scores Frank DiMaio and Jude Shavlik UW-Madison Computer Sciences ICDM.
Machine Learning Chapter 2. Concept Learning and The General-to-specific Ordering Tom M. Mitchell.
A Learning System for Decision Support in Telecommunications Filip Železný, Olga Štěpánková (Czech Technical University in Prague) Jiří Zídek (Atlantis.
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 จากความทรงจำ.
Copyright R. Weber Machine Learning, Data Mining INFO 629 Dr. R. Weber.
Kansas State University Department of Computing and Information Sciences CIS 732: Machine Learning and Pattern Recognition Thursday, November 29, 2001.
The AI War LISP and Prolog Basic Concepts of Logic Programming
For Monday Finish chapter 19 No homework. Program 4 Any questions?
For Monday Finish chapter 19 Take-home exam due. Program 4 Any questions?
CS Inductive Bias1 Inductive Bias: How to generalize on novel data.
CS 5751 Machine Learning Chapter 10 Learning Sets of Rules1 Learning Sets of Rules Sequential covering algorithms FOIL Induction as the inverse of deduction.
CpSc 810: Machine Learning Analytical learning. 2 Copy Right Notice Most slides in this presentation are adopted from slides of text book and various.
CS 8751 ML & KDDComputational Learning Theory1 Notions of interest: efficiency, accuracy, complexity Probably, Approximately Correct (PAC) Learning Agnostic.
Abduction CIS308 Dr Harry Erwin. Contents Definition of abduction An abductive learning method Recommended reading.
More Symbolic Learning CPSC 386 Artificial Intelligence Ellen Walker Hiram College.
Chap. 10 Learning Sets of Rules 박성배 서울대학교 컴퓨터공학과.
Network Management Lecture 13. MACHINE LEARNING TECHNIQUES 2 Dr. Atiq Ahmed Université de Balouchistan.
CS 9633 Machine Learning Explanation Based Learning
Chapter 2 Concept Learning
CS 9633 Machine Learning Concept Learning
CS 9633 Machine Learning Inductive-Analytical Methods
Chapter 11: Learning Introduction
Data Mining Lecture 11.
Introduction.
The Scientific Method Section 2.1.
3.1.1 Introduction to Machine Learning
MACHINE LEARNING TECHNIQUES IN IMAGE PROCESSING
MACHINE LEARNING TECHNIQUES IN IMAGE PROCESSING
Lecture 14 Learning Inductive inference
Machine Learning Chapter 2
Chapter 2: Prolog (Introduction and Basic Concepts)
Machine Learning Chapter 2
Presentation transcript:

Inductive Logic Programming Includes slides by Luis Tari CS7741L16ILP

Logic Programming Consider the following example of a logic program: parent_of(charles,george). parent_of(george,diana). parent_of(bob,harry). parent_of(harry,elizabeth). grandparent_of(X,Y) :- parent_of(X,Z), parent_of(Z,Y). Query: grandparent_of(X,Y)? Answers: grandparent_of(charles,diana). grandparent_of(bob,elizabeth). From the program, we can ask queries about grandparents. CS7742L16ILP

(Machine) Learning The process by which relatively permanent changes occur in behavioral potential as a result of experience. (Anderson) Learning is constructing or modifying representations of what is being experienced. (Michalski) A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with experience E. (Mitchell) CS7743L16ILP

Forms of Reasoning Deduction: From causes to effect (Prediction) fact a, rule a => b INFER b (*First-order logic*) Abduction: From effects to possible causes (Explanation) rule a => b, observe b AN EXPLANATION a Induction: From correlated observations to rules (Learning) observe correlation between a 1, b 1,... a n, b n LEARN a -> b CS7744L16ILP

What is ILP? Inductive Logic Programming (ILP) Automated learning of logic rules from examples and background knowledge E.g., learn the rule for grandparents, given background knowledge of parents and examples of grandparents ILP can be used for classification and prediction CS7745L16ILP

Why ILP ? – multiple relations Genealogy example: Given known relations… father(Old,Young) and mother(Old,Young) male(Somebody) and female(Somebody) …learn new relations parent(X,Y) :- father(X,Y). parent(X,Y) :- mother(X,Y). brother(X,Y) :- male(X),father(Z,X),father(Z,Y). Most ML techniques cannot use more than one relation e.g., decision trees, neural networks, … CS7746L16ILP

ILP – formal definitions Given a logic program B representing background knowledge a set of positive examples E + a set of negative examples E - Find hypothesis H such that: 1. B U H e for every e  E B U H f for every f  E B U H is consistent. Assume that B e for some e  E +. CS7747L16ILP

ILP – logical foundation Prolog = Programming with Logic is used to represent: Background knowledge (of the domain): facts Examples (of the relation to be learned): facts Theories (as a result of learning): rules Supports two forms of logical reasoning Deduction Induction CS7748L16ILP

Logical reasoning: deduction From rules to facts… B  T |- E mother(penelope,victoria). mother(penelope,arthur). father(christopher,victoria). father(christopher,arthur). parent(X,Y) :- father(X,Y). parent(X,Y) :- mother(X,Y). parent(penelope,victoria). parent(penelope,arthur). parent(christopher,victoria). parent(christopher,arthur). CS7749L16ILP

Logical reasoning: induction From facts to rules… B  E |- T mother(penelope,victoria). mother(penelope,arthur). father(christopher,victoria). father(christopher,arthur). parent(X,Y) :- father(X,Y). parent(X,Y) :- mother(X,Y). parent(penelope,victoria). parent(penelope,arthur). parent(christopher,victoria). parent(christopher,arthur). CS77410L16ILP

Example Background knowledge B: parent_of(charles,george). parent_of(george,diana). parent_of(bob,harry). parent_of(harry,elizabeth). Positive examples E +: grandparent_of(charles,diana). grandparent_of(bob,elizabeth). Generate hypothesis H: grandparent_of(X,Y) :- parent_of(X,Z), parent_of(Z,Y). CS77411L16ILP

12 Example: Same Generation CS774

Why ILP ? - Structured data Seed example of East-West trains (Michalski) What makes a train to go eastward ? CS77413L16ILP

Why ILP ? – multiple relations This is related to structured data TrainCar t1 c11 t1 c12 t1 c13 t1 c14 t2 c21 … … CarLengthShapeAxesRoof… c11shortrectangle2none… c12longrectangle3none… c13shortrectangle2peaked… c14longrectangle2none… c21shortrectangle2flat… ……………… has_carcar_properties CS77414L16ILP

Induction of a classifier: example Example of East-West trains B: relations has_car and car_properties ( length, roof, shape, etc.) e.g., has_car(t1,c11) E: the trains t1 to t10 C: east, west Possible T: east(T) :- has_car(T,C), length(C,short), roof(C,_). CS77415L16ILP

ILP systems Two of the most popular ILP systems: Progol FOIL Progol [Muggleton95] Developed by S. Muggleton et. al. Learns first-order Horn clauses (no negation in head and body literals of hypotheses) FOIL [Quinlan93] Developed by J. Quinlan et. al. Learns first-order rules (no negation in head literals of the hypotheses) CS77416L16ILP

Rule Learning (Intuition) How to come up with a rule for grandparent_of(X,Y) ? 1. Take the example grandparent_of(bob,elizabeth). 2. Find the subset of background knowledge relevant to this example: parent_of(bob,harry), parent_of(harry,elizabeth). 3. Form a rule from these facts grandparent_of(bob,elizabeth) :- parent_of(bob,harry), parent_of(harry,elizabeth). 4. Generalize the rule grandparent_of(X,Y) :- parent_of(X,Z), parent_of(Z,Y). 5. Check if this rule is valid w.r.t the positive and the negative examples CS77417L16ILP

Top-down induction of logic programs Employs refinement operators Typical refinement operators on a clause: Apply a substitution to clause Add a literal to the body of clause Refinement graph: Nodes correspond to clauses Arcs correspond to refinements CS77418L16ILP

Part of refinement graph has_a_daughter(X). has_a_daughter(X) :- has_a_daughter(X) :- has_a_daughter(X) :- male(Y). female(Y). parent(Y,Z). has_a_daughter(X) :- has_a_daughter(X) :- has_a_daughter(X) :- male(X). female(Y), parent(X,Z). parent(S,T) has_a_daughter(X) :- parent(X,Z), female(U). has_a_daughter(X) :- parent(X,Z), female(Z). CS77419L16ILP

Progol Algorithm Outline 1. From a subset of positive examples, construct the most specific rule r s. 2. Based on r s, find a generalized form r g of r s so that score(r g ) has the highest value among all candidates. 3. Remove all positive examples that are covered by r g. 4. Go to step 1 if there are still positive examples that are not yet covered. CS77420L16ILP

Scoring hypotheses score(r) is a measure of how well a rule r explains all the examples with preference given to shorter rules. p r = number of +ve examples correctly deducible from r n r = number of -ve examples correctly deducible from r c r = number of body literals in rule r score(r) = p r – (n r + c r ) CS77421L16ILP

Applications of ILP 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] More from UT-ML group (Ray Mooney) CS77422L16ILP

Example of relation from text We want to extract the following relation: Sample sentence from biomedical articles: CS77423L16ILP

References [Quinlan93] J. R. Quinlan, R. M. Cameron-Jones. FOIL: A Midterm Report. Proceedings of Machine Learning: ECML-93 [Muggleton95] S. Muggleton. Inverse Entailment and Progol. New Generation Computing Journal, 13: , [Craven99] M. Craven & J. Kumlien (1999). Constructing Biological Knowledge Bases by Extracting Information from Text Sources. ISMB 99. [Cootes03] A. Cootes, S.H. Muggleton, and M.J.E. Sternberg. The automatic discovery of structural principles describing protein fold space. Journal of Molecular Biology, 330(4): , CS77424L16ILP