Intelligent Systems
Rule Learning
Tom Mitchell “Machine Learning”

Slides in this lecture are partially based
on [1], Section 3 “Decision Tree Learning”.
Outline
 Motivation
 Technical Solution
 Rule learning tasks
 Rule learning approaches
 Specialization
 The ID3 Algorithm
 Generalization
 The RELAX Algorithm
 Combining specialization and generalization
 The JoJo Algorithm
 Refinement of rule sets with JoJo
 Illustration by a Larger Example
 Extensions
 The C4.5 Algorithm
 Summary
MOTIVATION
Motivation: Definition of Learning in AI

Research on learning in AI is made up of diverse subfields (cf. [5])
 “Learning as adaptation”: Adaptive systems monitor their own performance and attempt to improve it by adjusting internal parameters, e.g.,
 Selfimproving programs for playing games
 Pole balancing

Problem solving methods
 “Learning as the acquisition of structured knowledge” in the form of
 Concepts
 Production rules

Discrimination nets
Machine Learning
 Machine learning (ML) is concerned with the design and development of algorithms that allow computers to change behavior based on data. A major focus is to automatically learn to recognize complex patterns and make intelligent decisions based on data (Source: Wikipedia)
 Driving question: “How can we build computer systems that automatically improve with experience, and what are the fundamental laws that govern all learning processes?” (cf. [2])
 Three niches for machine learning [1]:
 Data mining: using historical data to improve decisions, e.g. from medical records to medical knowledge
 Software applications hard to program by hand, e.g. autonomous driving or speech recognition
 Selfcustomizing programs, e.g., a newsreader that learns users interest
 Practical success of ML:
 Speech recognition
 Computer vision, i.e. to recognize faces, to automatically classify microscope images of cells, or for recognition of hand writings
 Bio surveillance, i.e. to detect and track disease outbreaks
 Robot control
Rule learning

Machine Learning is a central research area in AI to acquire knowledge [1].
 Rule learning
 is a popular approach for discovering interesting relations in data sets and to acquire structured knowledge.

is a means to alleviate the „bottleneck“ (knowledge aquisition) – problem in expert systems [4].
Simple Motivating Example

I = {milk, bread, butter, beer}

Sample database
ID

Milk

Bread

Butter

Beer

1

1

1

1

0

2

0

1

1

0

3

0

0

0

1

4

1

1

1

0

5

0

1

0

0


A possible rule would be {milk, bread} → {butter}
TECHNICAL SOLUTIONS
Decision Trees

Many inductive knowledge acquisition algorithms generate („induce“) classifiers in form of decision trees.
 A decision tree is a simple recursive structure for expressing a sequential classification process.
 Leaf nodes denote classes

Intermediate nodes represent tests

Decision trees classify instances by sorting them down the tree from the root to some leaf node which provides the classification of the instance.
Decision Tree: Example

{Outlook = Sunny, Temperature = Hot,
Humidity = High, Wind = Strong}:
Negative Instance
Decision Trees and Rules
 Rules can represent a decision tree:

if item1 then subtree1
elseif item2 then subtree2
elseif...
 There are as many rules as there are leaf nodes in the decision tree.
 Advantage of rules over decision trees:
 Rules are a widelyused and wellunderstood representation formalism for knowledge in expert systems;
 Rules are easier to understand, modify and combine; and
 Rules can significantly improve classification performance by eliminating unnecessary tests.
 Rules make it possible to combine different decision trees for the same task.
Advantages of Decision Trees
 Decision trees are simple to understand.
People are able to understand decision trees model after a brief explanation.
 Decision trees have a clear evaluation strategy
Decision trees are easily interpreted
 Decision trees are able to handle both nominal and categorical data
Other techniques are usually specialised in analysing datasets that have only one type of variable. Ex: neural networks can be used only with numerical variables
Advantages of Decision Trees (1)
 Decision trees are a white box model.
If a given situation is observable in a model the explanation for the condition is easily explained by boolean logic. An example of a black box model is an artificial neural network since the explanation for the results is excessively complex to be comprehended.
 Decision trees are robust, perform well with large data in a short time.
Large amounts of data can be analysed using personal computers in a time short enough to enable stakeholders to take decisions based on its analysis.
Converting a Decision Tree to Rules
RULE LEARNING TASKS
Rule learning tasks

There are two major rule learning tasks:

Learning of correct rule that cover a maximal number of positive examples but no negative ones. We call this maximal requirement for each rule.

Learning of a minimal rule set that covers all positive example. We call this minimal requirement for the rule set.

Rule learning tasks
To illustrate the two rule learning tasks let’s consider a data set, containing both positive and negative examples, as depicted in the following chart
Maximal requirement for each rule
We want to learn a correct rule that cover a maximal number of positive examples but no negative examples (maximal requirement for each rule).
Maximal requirement for each rule

We start with deriving a rule that cover the positive example (x=3;y=3).
If x=3 and y=3 then class = positive
Maximal requirement for each rule

We try to cover more positive examples by refining the rule. We need to make sure that we don’t cover negative examples. The new rule

if x>=2 and x<=4 and y=3 then class = positive

covers positive example (x=2;y=3),(x=3;y=3),(x=4;y=3)
Maximal requirement for each rule

We try to cover more positive examples by further refining the rule. The new rule

if x>=2 and x<=4 and y>=3 and y<=4 then class = positive

covers positive example (x=2;y=3),(x=3;y=3),(x=4;y=3), (x=2;y=4),(x=3;y=4),(x=4;y=4)
Maximal requirement for each rule

We try to cover more positive examples by further refining the rule. The new rule

if x>=2 and x<=4 and y>=2 and y<=5 then class = positive

covers all positive example in the lower part of the space
Maximal requirement for each rule

We can not refine anymore the rule

if x>=2 and x<=4 and y>=2 and y<=5 then class = positive to cover more positive without covering negative examples as well. To cover the rest of the positive examples we need to learn a new rule.
Maximal requirement for each rule

Following the same approach as illustrated before we can learn a second rule that covers the rest of the positive examples:

if x>=5 and x<=6 and y>=6 and y<=8 then class = positive
Maximal requirement for each rule

The full set of positive examples is covered by the following two rules:

if x>=2 and x<=4 and y>=2 and y<=5 then class = positive
if x>=5 and x<=6 and y>=6 and y<=8 then class = positive
Minimal requirement for the rule set

In general, for a decision problem, there are many possible sets of rules that cover all positive examples without covering negative examples. Possible sets of rules for our previous example are:
Solution 1:
if x>=2 and x<=4 and y>=2 and y<=5 then class = positive
if x>=5 and x<=6 and y>=6 and y<=8 then class = positive
Minimal requirement for the rule set
Solution 2:
if x>=2 and x<=4 and y>=2 and y<=3 then class = positive
if x>=2 and x<=4 and y>3 and y<=5 then class = positive
if x>=5 and x<=6 and y>=6 and y<=7 then class = positive
if x>=5 and x<=6 and y>7 and y<=8 then class = positive
Minimal requirement for the rule set

The minimal requirement for the rule set is about learning of a minimal rule set that covers all positive example.

The minimal requirement for the rule set is similar with the minimal set cover problem [18]

The minimal requirement for the rule set, which basically translates to building the optimal linear decision tree, is NPhard [19].
RULE LEARNING APPROACHES
Latice of possible rules
Rule learning approaches

Rule learning can be seen as a search problem in the latice of possible rules
 Depending on the starting point and on the direction of search we can distinguished three classes of rule learning approaches:
 Specialization – the search procedure starts at the top of the lattice and searches towards the bottom of the latice, towards the concrete descriptions. Specialization is topdown .
 Generalization – the search procedure starts at the bottom of the lattice and advances up the lattice towards the t o p element. Generalization is bottomup .

Combining of specialization and generalization – the search procedure can start at any arbitrary point in the lattice and can move freely up or down as needed.
Rule learning approaches

Specialization and Generalization are dual search directions in a given rule set.
SPECIALIZATION
Specialization
 Specialization algorithms start from very general descriptions and specializes those until they are correct.

This is done by adding additional premises to the antecedent of a rule, or by restricting the range of an attribute which is used in an antecedent.
 Algorithms relying on specialization generally have the problem of overspecialization: previous specialization steps could become unnecessary due to subsequent specialization steps.

This brings along the risk for ending up with results that are not maximalgeneral.

Some examples of (heuristic) specialization algorithms are the following: ID3, AQ, C4, CN2, CABRO, FOIL, or PRISM; references at the end of the lecture.
THE ID3 ALGORITHM
ID3
 Most algorithms apply a topdown, greedy search through the space of possible trees.
 e.g., ID3 [5] or its successor C4.5 [6]
 ID3
 Learns trees by constructing them top down.
 Initial question: “Which attribute should be tested at the root of the tree?” >each attribute is evaluated using a statistical test to see how well it classifies.
 A descendant of the root node is created for each possible value of this attribute.
 Entire process is repeated using the training examples associated with each descendant node to select the best attribute to test at that point in the tree.
The Basic ID3 Algorithm
Selecting the Best Classifier

Core question: Which attribute is the best classifier?

ID3 uses a statistical measure called information gain that measures how well a given example separates the training examples according to their target classification.
Entropy
 Entropy characterizes the (im)purity of an arbitrary collection of examples.
 Given a collection S (containing positive and negative examples), the entropy of S relative to this boolean classification is




Information Gain

Information gain measures the expected reduction in entropy caused by partitioning the examples according to an attribute:

First term: entropy of the original collection S; second term: expected value of entropy after S is partitioned using attribute A (Sv subset of S).

Gain(S,A): The expected reduction in entropy caused by knowing the value of attribute A.

ID3 uses information gain to select the best attribute at each step in growing the tree.
Example: Which attribute is the best classifier?
Hypothesis Space Search in Decision Tree Learning
 ID3 performs a simpletocomplex hillclimbing search through the space of possible decision trees (the hypothesis search).
 Start: empty tree; progressively more elaborate hypotheses in search of a decision tree are tested.
Capabilities and Limitations of ID3

ID3’s hypothesis space is the complete space of finite discretevalued functions, relative to the available attributes.

ID3 maintains only a single current hypothesis, as it searches through the space of trees (earlier (perhaps better) versions are eliminated).

ID3 performs no backtracking in search; it converges to locally optimal solutions that are not globally optimal.

ID3 uses all training data at each step to make statistically based decisions regarding how to refine its current hypothesis.
Inductive Bias in Decision Tree Learning
 Definition: Inductive bias is the set of assumptions that, together with the training data, deductively justifies the classifications assigned by the learner to future instances [1].
 Central question: How does ID3 generalize from observed training examples to classify unseen instances? What is its inductive bias?
 ID3 search strategy:
 ID3 chooses the first acceptable tree it encounters.
 ID3 selects in favour of shorter trees over longer ones.
 ID3 selects trees that place the attributes with the highest information gain closest to the root.
 Approximate inductive bias of ID3: Shorter trees are preferred over larger trees. Trees that place high information gain attributes close to the root are preferred over those that do not.
ID3’s Inductive Bias

ID3 searches a complete hypothesis search.
 It searches incompletely through this space, from simple to complex hypotheses, until its termination condition is met.

Termination condition: Discovery of a hypothesis consistent with the data

ID3’s inductive bias is a preference bias (it prefers certain hypotheses over others).

Alternatively: A restriction bias categorically restricts considered hypotheses.
Occam’s Razor

…or why prefer short hypotheses?

William Occam was one of the first to discuss this question around year 1320.

Several arguments have been discussed since then.
 Arguments:
 Based on combinatorial arguments there are fewer short hypothesis that coincidentally fit the training data.

Very complex hypotheses fail to generalize correctly to subsequent data.
ID3 by Example ([1])

Target attribute: PlayTennis (values: yes / no)
Example: Which attribute should be tested first in the tree?

ID3 determines information gain for each candidate attribute (e.g., Outlook, Temperature, Humidity, and Wind) and selects the one with the highest information gain

Gain(S, Outlook) = 0.246 ; Gain(S, Humidity) = 0.151; Gain(S, Wind) = 0.048; Gain(S, Temperature)=0.029
Example: Resulting Tree
Example: Continue Selecting New Attributes

Determing new attributes at the „Sunny“ – branch only using the examples classified there:

Process continues for each new leaf node until either of two conditions are met:
 Every attribute has already been included along this path through the tree, or

The training examples associated with this leaf node all have the same target attribute value (i.e., their entropy is zero).
Example: Final Decision Tree
GENERALIZATION
Generalization
 Generalization starts from very special descriptions and generalizes them as long as they are not incorrect, i.e. in every step some unnecessary premises are deleted from the antecedent.

The generalization procedure stops if no more premises to remove exist.
 Generalization avoids the maximalgeneral issue of specialization, in fact it guarantees mostgeneral descriptions.

However, generalization of course risks to derive final results that are not mostspecific.

RELAX is an example of a generalizationbased algorithm; references at the end of the lecture.
THE RELAX ALGORITHM
RELAX
 RELAX is a generalization algorithm, and proceeds as long as the resulting rule set is not incorrect.
 The RELAX algorithm:
 RELAX considers every example as a specific rule that is generalized.
 The algorithm then starts from a first rule and relaxes the first premise.
 The resulting rule is tested against the negative examples.
 If the new (generalized) rule covers negative examples, the premise is added again, and the next premise is relaxed.
 A rule is considered minimal, if any further relaxation would destroy the correctness of the rule.
 The search for minimal rules starts from any not yet considered example, i.e. examples that are not covered by already discovered minimal rules.
RELAX: Ilustration by an example

Consider the following positive example for a consequent C:
(pos, (x=1, y=0, z=1))
 This example is represented as a rule: x ∩ ¬ y ∩ z → C

In case of no negative examples, RELAX constructs and tests the following set of rules:
1) x ∩ ¬ y ∩ z → C5) x → C2) ¬ y ∩ z → C6) ¬ y → C3) x ∩ z → C7) z → C4) x ∩ ¬ y → C8) → C
COMBINING SPECIALIZATION AND GENERALIZATION
THE JOJO ALGORITHM
JoJo

In general, it cannot be determined which search direction is the better one.

JoJo is an algorithm that combines both search directions in one heuristic search procedure.

JoJo can start at an arbitrary point in the lattice of complexes and generalizes and specializes as long as the quality and correctness can be improved, i.e. until a local optimum can be found, or no more search resources are available (e.g., time, memory).
JoJo (1)
 While specialization moves solely from ‘Top‘ towards ‘Bottom‘ and generalization from ‘Bottom‘ towards ‘Top‘, JoJo is able to move freely in the search space.

Either of the two strategies can be used interchangeable, which makes JoJo more expressive than comparable algorithms that apply the two in sequential order (e.g. ID3).
JoJo (2)
 A starting point in JoJo is described by two parameters:
 Vertical position (length of the description)

Horizontal position (chosen premises)

Reminder: JoJo can start at any arbitrary point, while specialization requires a highly general point and generalization requires a most specific point.

In general, it is possible to carry out several runs of JoJo with different starting points. Rules that were already produced can be used as subsequent starting points.
JoJo (4)

Criteria for choosing a vertical position:

Approximation of possible lenght or experience from earlier runs.

Random production of rules; distribution by means of the average correctness of the rules with the same length (socalled quality criterion).

Start with a small sample or very limited resources to discover a real starting point from an arbitrary one.

Randomly chosen starting point (same average expectation of success as starting with ‘Top‘ or ‘Bottom‘).

Heuristic: few positive examples and maximalspecific descriptions suggest long rules, few negative examples and maximalgeneric descriptions rather short rules.

JoJo Principle Components
 JoJo consists of three components: The Specializer , Generalizer , and Scheduler
 The former two can be provided by any such components depending on the chosen strategies and preference criterias.
 The Scheduler is responsible for selecting the next description out of all possible generalizations and specializations available (by means of a tpreference, total preference).
 Simple example scheduler:
 Specialize, if the error rate is above threshold;
 Otherwise, choose the best generalization with allowable error rate;
 Otherwise stop.
REFINEMENT OF RULES WITH JOJO
Refinement of rules with JoJo

Refinement of rules refers to the modification of a given rule set based on additonal examples.

The input to the task is a socalled hypothesis (a set of rules) and a set of old and new positive and negative examples.

The output of the algorithm are a refined set of rules and the total set of examples.

The new set of rules is correct, complete, nonredundant and (if necessary) minimal.
Refinement of rules with JoJo (1)

There is a four step procedure for the refinment of rules:

Rules that become incorrect because of new examples are refined: incorrect rules are replaced by new rules that cover the positive examples, but not the new negative ones.

Complete the rule set to cover new positive examples.

Redundant rules are deleted to correct the rule set.
 Minimize the rule set.


Steps 1 and 2 are subject to the algorithm JoJo that integrates generalization and specification via a heuristic search procedure.
Refinement of rules with JoJo (3)
 Correctness:
 Modify overly general rules that cover too many negative examples.

Replace a rule by a new set of rules that cover the positive examples, but not the negative ones.
 Completeness:

Compute new correct rules that cover the not yet considered positive examples (up to a threshold).
 Nonredundancy:

Remove rules that are more specific than other rules (i.e. rules that have premises that are a superset of the premises of another rule).
ILLUSTRATION BY A LARGER EXAMPLE: ID3
ID3 Example: The Simpsons
ID3 Example: The Simpsons
ID3 Example: The Simpsons
ID3 Example: The Simpsons
ID3 Example: The Simpsons
ID3 Example: The Simpsons
ID3 Example: The Simpsons
EXTENSIONS
Issues in Decision Tree Learning
 How deeply to grow the decision tree?
 Handling continuous attributes.
 Choosing an appropriate attribute selection measure.
 Handling training data with missing attribute values.
 Handling attributes with differing costs.
 Improving computational efficiency.
 Successor of ID3, named C4.5 , addresses most of these issues (see [6]).
THE C4.5 ALGORITHM
Avoiding Overfitting the Data
 Definition: Given a hypothesis space H, a hypothesis h є H is said to overfit the training data if there exists some alternative hypothesis h’ є H, such that h’ has smaller error than h’ over the training examples, but h’ has a smaller error than h over the entire distribution of instances. [1]
 ID3 grows each branch of the tree just deeply enough to perfectly classify the training examples.
 This can lead to difficulties when there is noise in the data or when the number of training examples is too small to produce a representative sample of the true target function.
 Overfitting trees could be produced!

Example: Overfitting due to Random Noise
 Original decision tree based on correct data:

Incorrectly labelled data leads to construction of a more complex tree, e.g., {Outlook=Sunny, Temperature=Hot, Humidity=Normal,
Wind=Strong, PlayTennis=No}

ID3 would search for new refinements at the bottom of the left tree.
Strategies to Avoid Overfitting
 Overfitting might occur based on erroneous input data or based on coincidental regularities.
 Different types of strategies:
 Stopping to grow the tree earlier, before it reaches the point where it perfectly classifies the training data.
 Allowing the tree to overfit the data, and then postprune the tree (more successful approach).
 Key question: How to determine the correct final tree size?
 Use of a separate set of examples to evaluate the utility of postpruning nodes from the tree (“Training and Validation Set” – approach); two approaches applied by Quinlain: “Reduced Error Pruning” and “RulePost Pruning”
 Use all available data for training, but apply a statistical test to estimate whether expanding (or pruning) a particular node is likely to produce an improvement beyond the training set.
 Use an explicit measure of the complexity for encoding the training examples and the decision trees, halting growth of the tree when this encoding size is minimized (“Minimum Decision Length” – principle, see [1] Chapter 6)
Rule PostPruning
 Applied in C4.5.

Steps ( [1])

Infer the decision tree from the training set, growing the set until the training data is fit as well as possible and allowing overfitting to occur.

Convert the learned tree into an equivalent set of rules by creating one rule for each path from the root node to a leaf node.

Prune (generalize) each rule by removing any preconditions that result in improving its estimated accuracy.
 Sort the pruned rules by their estimated accuracy, and consider them in this sequence when classifying subsequent instances.


Rule accuracy estimation based on the training set using a pessimistic estimate: C4.5 calculates standard deviation and takes the lower bound as estimate for rule performance.
Incorporating ContinuousValued Attributes
 ID3 is restricted to attributes with discrete values.

Continuousvalued attributes  example:
 C4.5 allows continuousvalued attributes in the decision nodes inside the tree.
 Approach: Dynamic definition of new discretevalued attributes that partition the continuous attribute value into a discrete set of intervals (e.g. A_{c} is true if A < c, false otherwise).

Central question: How to select the best value for a threshold c?
Computing a Threshold
 Goal: Determining a threshold c that produces the greatest information gain.

Approach:

Sort examples according to the continuous attribute A.

Identify adjacent examples that differ in their target classification.

Generate a set of candidate thresholds midway between the corresponding values of A (c must always lie at such a boundary, see [5]).
 Evaluate candidate thresholds by computing the information gain associated with each.

 Example:
 Two candidate thresholds at which the value of PlayTennis changes: (48+60)/2, (80+90)/2

Information gain for the first threshold is higher.
Alternative Measures for Selecting Attributes
 Natural bias in the information gain measure favours attributes with many values over those with few values (e.g. a “Date” – field)
 Example:
 Date – attributes has (too) many possible values; thus it separates the training examples into very small subsets.
 It would have a very high information gain.

But it would be a very poor predictor of the target function over unseen instances

Alternative selection measure: gain ratio (see [5]).
Gain Ratio

Gain ratio penalizes attributes such as Date by incorporating split information (entropy of S with respect to A) that is sensitive to how broadly and uniformly the attribute splits the data:

Definition GainRatio:
Handling Training Examples with Missing Attribute Values
 If data with missing attribute values exist, it is common to estimate the missing attribute value based on other examples for which the attribute has a known value.
 Common strategy: Assign value that is most common among training examples at a certain node n that have the same classification as the current example.
 More complex strategy used in C4.5: Assign a probability to each of the possible values.
 Probabilities can be estimated based on the observed frequencies of various values of a certain attribute among examples at a certain node n, e.g., A(x) = 1: 0.6
 Fractional of probability 0.6 is propagated down the branch of the tree for A=1.
 Fractional examples are used to compute information gain.
 Classification of a new instance is simply the most probable classification (computed by summing weights of instance fragments classified in different ways at leaf nodes of the tree).
SUMMARY
Summary
 Machine learning is a prominent topic in the field of AI.
 Rule learning is a means to learn rules from instance data to classify unseen instances.
 Decision tree learning can be used for concept learning, rule learning, or for learning of other discrete valued functions.
 The ID3 family of algorithms infers decision trees by growing them from the root downward in a greedy manner.
 ID3 searches a complete hypothesis space.
 ID3’s inductive bias includes a preference for smaller trees; it grows trees only as large as needed.
 A variety of extensions to basic ID3 have been developed; extensions include: methods for postpruning trees, handling realvalued attributes, accommodating training examples with missing attribute values, or using alternative selection measures.
Summary (2)
 Rules cover positive examples and should not cover negative examples.
 There are two main approaches for determining rules:
 Generalization

Specification
 RELAX is a presented example of a generalization algorithm
 JoJo combines generalization and specialization and allows the algorithm to traverse the entire search space by either generalizing or specializing rules interchangeably.

JoJo can also be applied to incrementally refine rule sets.
REFERENCES
References
 Mandatory reading:
 [1] Mitchell, T. "Machine Learning", McGraw Hill, 1997. (Section 3)
 [2] Mitchell, T. "The Discipline of Machine Learning" Technical Report CMUML06108, July 2006. Available online: http://www.cs.cmu.edu/~tom/pubs/MachineLearning.pdf
 [3] Fensel, D. “Ein integriertes System zum maschinellen Lernen aus Beispielen” Künstliche Intelligenz (3). 1993.
 Further reading:
 [4] Feigenbaum, E. A. “Expert systems in the 1980s” In: A. Bond (Ed.), State of the art report on machine intelligence. Maidenhea: Pergamoninfotech.
 [5] Quinlan, J. R. “Induction of decision trees”. Machine Learning 1 (1), pp. 81106, 1986.
References

[6] Quinlan, J. R. “C4.5: Programs for Machine Learning” Morgan Kaufmann, 1993.

[7] Fayyad, U. M. “On the induction of decision trees for multiple concept learning” PhD dissertation, University of Michigan, 1991.

[8] Agrawal, Imielinsky and Swami: Mining Association Rules between Sets of Items in Large Databases. ACM SIGMOD Conference, 1993, pp. 207216.

[9] Quinlan: Generating Production Rules From Decision Trees. 10th Int’l Joint Conference on Artificial Intelligence, 1987, pp. 304307.

[10] Fensel and Wiese: Refinement of Rule Sets with JoJo. European Conference on Machine Learning, 1993, pp. 378383.
References
 [11] AQ: Michalski, Mozetic, Hong and Lavrac: The MultiPurpose Incremental Learning System AQ15 and its Testing Application to Three Medical Domains. AAAI86, pp. 10411045.
 [12] C4: Quinlan: Learning Logical Definitions from Relations: Machine Learning 5(3), 1990, pp. 239266.
 [13] CN2: Clark and Boswell: Rule Induction with CN2: Some recent Improvement. EWSL91, pp. 151163.
 [14] CABRO: Huyen and Bao: A method for generating rules from examples and its application. CSNDAL91, pp. 493504.
 [15] FOIL: Quinlan: Learning Logical Definitions from Relations: Machine Learning 5(3), 1990, pp. 239266.
 [16] PRISM: Cendrowska: PRISM: An algorithm for inducing modular rules. Journal ManMachine Studies 27, 1987, pp. 349370.
 [17] RELAX: Fensel and Klein: A new approach to rule induction and pruning. ICTAI91.
References

[18] http://www.ensta.fr/~diam/ro/online/viggo_wwwcompendium/node146.html.

[19] Goodrich, M.T., Mirelli, V. Orletsky, M., and Salowe, J. Decision tree conctruction in fixed dimensions: Being global is hard but local greed is good. Technical Report TR951, Johns Hopkins University, Department of Computer Science, Baltimore, MD 21218, May 1995
References

Wikipedia links:

Machine Learning, http://en.wikipedia.org/wiki/Machine_learning

Rule learning, http://en.wikipedia.org/wiki/Rule_learning

Association rule learning, http://en.wikipedia.org/wiki/Association_rule_learning

ID3 algorithm, http://en.wikipedia.org/wiki/ID3_algorithm

C4.5 algorithm, http://en.wikipedia.org/wiki/C4.5_algorithm
Questions?