Machine Learning
Chapter 2. Concept Learning
and The General-to-specific Ordering
Tom M. Mitchell
Outline
Learning from examples
General-to-specific ordering over hypotheses
Version spaces and candidate elimination algorith
m
Picking new examples
The need for inductive bias
Note: simple approach assuming no noise,
illustrates key concepts
2
Training Examples for EnjoySport
Sky Temp Humid Wind Water Forecst EnjoySpt
Sunny Warm Normal Strong Warm Same Yes
Sunny Warm High Strong Warm Same Yes
Rainy Cold High Strong Warm Change No
Sunny Warm High Strong Cool Change Yes
What is the general concept?
3
Representing Hypotheses
Many possible representations
Here, h is conjunction of constraints on attributes
Each constraint can be
a specific value (e.g., Water = Warm)
don’t care (e.g., “Water =?”)
no value allowed (e.g., “Water=0”)
For example,
Sky AirTemp Humid Wind Water Forecst
<Sunny ? ? Strong ? Same>
4
Prototypical Concept Learning Task(1/2)
Given:
– Instances X: Possible days, each described by the attributes Sky, Ai
rTemp, Humidity, Wind, Water, Forecast
– Target function c: EnjoySport : X → {0, 1}
– Hypotheses H: Conjunctions of literals. E.g.
<?, Cold, High, ?, ?, ?>.
– Training examples D: Positive and negative examples of the target
function
< x1, c(x1)>, … <xm, c(xm)>
Determine: A hypothesis h in H such that h(x) =c(x) for al
l x in D.
5
Prototypical Concept Learning Task(2/2)
The inductive learning hypothesis:
Any hypothesis found to approximate the target
function well over a sufficiently large set of
training examples will also approximate the target
function well over other unobserved examples.
6
Instance, Hypotheses, and More-
General-Than
7
Find-S Algorithm
1. Initialize h to the most specific hypothesis in H
2. For each positive training instance x
– For each attribute constraint ai in h
If the constraint ai in h is satisfied by x
Then do nothing
Else replace ai in h by the next more
general constraint that is satisfied by x
3. Output hypothesis h
8
Hypothesis Space Search by Find-S
9
Complaints about Find-S
Can’t tell whether it has learned concept
Can’t tell when training data inconsistent
Picks a maximally specific h (why?)
Depending on H, there might be several!
10
Version Spaces
A hypothesis h is consistent with a set of training examples D
of target concept c if and only if h(x) = c(x) for each training
example <x, c(x)> in D.
Consistent(h, D) ≡ (∀<x, c(x)>∈D) h(x) = c(x)
The version space, V SH,D, with respect to hypothesis space H
and training examples D, is the subset of hypotheses from H
consistent with all training examples in D.
V SH,D ≡ {h ∈ H | Consistent(h, D)}
11
The List-Then-Eliminate Algorithm:
1. VersionSpace a list containing every hypothesi
s in H
2. For each training example, <x, c(x)>
remove from VersionSpace any hypothesis h for w
hich h(x) c(x)
3. Output the list of hypotheses in VersionSpace
12
Example Version Space
13
Representing Version Spaces
The General boundary, G, of version space V SH,D is the
set of its maximally general members
The Specific boundary, S, of version space V SH,D is the
set of its maximally specific members
Every member of the version space lies between these
boundaries
V SH,D = {h ∈ H | (∃s ∈ S)(∃g ∈ G) (g ≥ h ≥ s)}
where x ≥ y means x is more general or equal to y
14
Candidate Elimination Algorithm
(1/2)
G ← maximally general hypotheses in H
S ← maximally specific hypotheses in H
For each training example d, do
If d is a positive example
– Remove from G any hypothesis inconsistent with d
– For each hypothesis s in S that is not consistent with d
• Remove s from S
• Add to S all minimal generalizations h of s such that
1. h is consistent with d, and
2. some member of G is more general than h
• Remove from S any hypothesis that is more general than another hyp
othesis in S
15
Candidate Elimination Algorithm
(2/2)
If d is a negative example
– Remove from S any hypothesis inconsistent with d
– For each hypothesis g in G that is not consistent with d
• Remove g from G
• Add to G all minimal specializations h of g such that
1. h is consistent with d, and
2. some member of S is more specific than h
• Remove from G any hypothesis that is less general than another
hypothesis in G
16
Example Trace
17
What Next Training Example?
18
How Should These Be Classified?
<Sunny Warm Normal Strong Cool Change>
<Rainy Cool Normal Light Warm Same>
<Sunny Warm Normal Light Warm Same>
19
What Justifies this Inductive Leap?
+ <Sunny Warm Normal Strong Cool Change>
+ <Sunny Warm Normal Light Warm Same>
S : <Sunny Warm Normal ? ? ?>
Why believe we can classify the unseen
<Sunny Warm Normal Strong Warm Same>
20
An UNBiased Learner
Idea: Choose H that expresses every teachable
concept (i.e., H is the power set of X)
Consider H' = disjunctions, conjunctions,
negations over previous H. E.g.,
<Sunny Warm Normal ???> ∨ <?????Change>
What are S, G in this case?
S←
G←
21
Inductive Bias
Consider
concept learning algorithm L
instances X, target concept c
training examples Dc = {<x, c(x)>}
let L(xi, Dc) denote the classification assigned to the instance xi by L after tra
ining on data Dc.
Definition:
The inductive bias of L is any minimal set of assertions B such
that for any target concept c and corresponding training
examples Dc
(∀xi ∈ X)[(B ∧ Dc ∧ xi) ├ L(xi, Dc)]
where A├ B means A logically entails B
22
Inductive Systems and Equivalent
Deductive Systems
23
Three Learners with Different Biases
1. Rote learner: Store examples, Classify x iff it m
atches previously observed example.
2. Version space candidate elimination algorithm
3. Find-S
24
Summary Points
1. Concept learning as search through H
2. General-to-specific ordering over H
3. Version space candidate elimination algorithm
4. S and G boundaries characterize learner’s uncertainty
5. Learner can generate useful queries
6. Inductive leaps possible only if learner is biased
7. Inductive learners can be modelled by equivalent deductive
systems
25