View
225
Download
0
Tags:
Embed Size (px)
Citation preview
1
Chapter 2 - Concept learning
Learning from examples Concept Learning General-to specific ordering of hypotheses Version spaces and candidate elimination
algorithm Inductive bias Simple approach
Assumption: no noise Illustrates key concepts
2
Concept learning task
Given examples, learn a general concept (category) subset of some general domain
E.g., birds boolean-valued function over the domain
(characteristic function) a function defined over all animals whose value is
true for birds and false for every other animal
Definition infer a boolean-valued function from samples
of it (input, output)
3
Concept Learning
The problem is to learn a function mapping The problem is to learn a function mapping examples into two classes: positive and negative.examples into two classes: positive and negative.
We are given a database of examples already We are given a database of examples already classified as positive or negative.classified as positive or negative.
Concept learning: the process of inducing a Concept learning: the process of inducing a function mapping input examples into a Boolean function mapping input examples into a Boolean output.output.
Examples:Examples: Classifying objects in astronomical images as Classifying objects in astronomical images as
stars or galaxiesstars or galaxies Classifying animals as vertebrates or invertebratesClassifying animals as vertebrates or invertebrates
4
Training Examples for Enjoy Sport
Sky Temp Humid
Wind Water Fore-cast
Enjoy Sport
Sunny
Sunny
Rainy
Sunny
Warm
Warm
Cold
Warm
Normal
High
High
High
Strong
Strong
Strong
Strong
Warm
Warm
Warm
Cool
Same
SameChange
Change
Yes
Yes
No
Yes
Concept: ”days on which my friend Aldo enjoys his favourite water sports”Task: predict the value of ”Enjoy Sport” for an arbitrary day based on the values of the other attributesattributes
instance
5
Representing Hypothesis
Hypothesis h is a conjunction of constraints on attributes
Each constraint can be: A specific value : e.g. Water=Warm A don’t care value : e.g. Water=? No value allowed (null hypothesis): e.g. Water=Ø
Example: hypothesis h Sky Temp Humid Wind Water Forecast< Sunny ? ? Strong ? Same > Instance x satisfies hypothesis h
all the constraints in h hold for x define h(x) = 1
6
Prototypical Concept Learning Task
Given: Instances X : Possible days decribed by the attributes
Sky, Temp, Humidity, Wind, Water, Forecast Target function c: EnjoySport X {0,1} Hypotheses H: conjunction of literals e.g. < Sunny ? ? Strong ? Same > Training examples D : positive and negative
examples of the target function: <x1,c(x1)>,…, <xn,c(xn)>
Determine: A hypothesis h in H such that h(x)=c(x) for all x in D.
7
Inductive Learning Hypothesis
All we know of c are the examples Best we can do is to produce a h consistent with
example data
Any hypothesis found to approximate the target function well over the training examples, will also approximate the target function well over the unobserved examples. fundamental assumption in inductive learning
8
Concept learning as search
H = search space find h best fitting to D
Selection of representation defines search space size of space (syntactic/semantic)
Efficient search in very large (or infinite) spaces for best h
9
# of Instances, Concepts, Hypo.s
Sky: Sunny, Cloudy, Rainy AirTemp: Warm, Cold Humidity: Normal, High Wind: Strong, Weak Water: Warm, Cold Forecast: Same, Change
#distinct instances : 3*2*2*2*2*2 = 96
#distinct concepts : 296
#syntactically distinct hypotheses : 5*4*4*4*4*4=5120
#semantically distinct hypotheses : 1+4*3*3*3*3*3=973
10
General-to-Specific order
Useful structure organize the search process exists for any concept learning task search possible without enumerating all
members of H (may be infinite)
A concept hj is more general than or equal to hk (written hj hk) if and only if
x X : [ (hk(x) = 1) (hj(x) = 1)]
11
General to Specific Order
Consider two hypotheses: h1=< Sunny,?,?,Strong,?,?> h2=< Sunny,?,?,?,?,?>
Set of instances covered by h1 and h2: h2 imposes fewer constraints than h1 and therefore
classifies more instances x as positive. h2 is more general than h1 or h2 h1
The relation imposes a partial order over the hypothesis space H that is independent of c! utilized by many concept learning methods.
12
Insta., Hypo. and ”more general”
x1=< Sunny,Warm,High,Strong,Cool,Same>
x2=< Sunny,Warm,High,Light,Warm,Same>
h1=< Sunny,?,?,Strong,?,?>
h2=< Sunny,?,?,?,?,?>
h3=< Sunny,?,?,?,Cool,?>
Instances
x2
x1
Hypotheses
h2
h3h1
h2 h1
h2 h3
specific
general
13
Find-S algorithm
Example of using the ordering begin: the most specific member of H generalize it whenever h(x) = 0 and c(x) = 1
(examples)
Ignores negative examples no problem assuming that
H contains a description of c andD has no noise
14
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
15
Hypoth. Space Search by Find-S
Instances Hypotheses
specific
general
h0
h0=< Ø, Ø, Ø, Ø, Ø, Ø,>
h1
x1=<Sunny,Warm,Normal,Strong,Warm,Same>+
x1
h1=< Sunny,Warm,Normal,Strong,Warm,Same>
x3=<Rainy,Cold,High,Strong,Warm,Change> -
x3
h2,3
x2=<Sunny,Warm,High,Strong,Warm,Same>+
x2
h2,3=< Sunny,Warm,?,Strong,Warm,Same>
h4
x4=<Sunny,Warm,High,Strong,Cool,Change> +
x4
h4=< Sunny,Warm,?,Strong,?,?>
16
Find-S – Black board example
Size = large/small, Color = red/white/blue and Shape = cube/brick/round
Examples Positive: obj(small, red, round) Positive: obj(small, white, round) Positive: obj(large, white, round)
What does Find-S find? What if we add the following negative example ?
Negative: obj(large, blue, cube) What if we add the following negative example ?
Negative: obj(large, blue, round)
17
Properties of Find-S
For Hypothesis space described by conjunctions of constraints, Find-S will output the most specific hypothesis within H that is consistent with the positve training examples
The output hypothesis will also be consistent with the negative examples, provided the target concept is contained in H.
18
Complaints about Find-S
Can’t tell if the learner has converged to the target concept, in the sense that it is unable to determine whether it has found the only hypothesis consistent with the training examples.
Can’t tell when training data is inconsistent, as it ignores negative training examples.
Why prefer the most specific hypothesis?
‘most specific’ is not always unique. Find-S cannot backtrack!
19
Version Space and Cand. Elimi.
Another learning approach outputs a description of all members of H that
are consistent with D possible without enumerating members of H
(ordering!) suffers from noise useful framework for introducing many
fundamental issues of ML
20
Version Spaces
A hypothesis h is consistent with a set of training examples D of target concept 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, VSH,D , with respect to hypothesis space H, and training set D, is the subset of all hypotheses in H consistent with all training examples: VSH,D = {h H | Consistent(h,D) }
21
Elimination algorithms
List-then-Eliminate list every hypothesis in H at each example, remove inconsistent hypo output the list of surviving hypotheses
something to start with ineffective
Candidate elimination same principle more compact representation maintain most specific and most general elements of
VS(H,D)
22
Representing Version Spaces
The general boundary, G, of version space VSH,D is
the set of maximally general members.
The specific boundary, S, of version space VSH,D is
the set of maximally specific members.
Every member of the version space lies between these boundaries
VSH,D = {h H| ( s S) ( g G) (g h s)
where x y means x is more general or equal than y
23
Example Version Space
{<Sunny,Warm,?,Strong,?,?>}S:
{<Sunny,?,?,?,?,?>, <?,Warm,?,?,?>, }G:
<Sunny,?,?,Strong,?,?> <Sunny,Warm,?,?,?,?><?,Warm,?,Strong,?,?>
x1 = <Sunny Warm Normal Strong Warm Same> +x2 = <Sunny Warm High Strong Warm Same> +x3 = <Rainy Cold High Strong Warm Change> -x4 = <Sunny Warm High Strong Cool Change> +
24
Representation theorem
For any set of instances X set H of boolean-valued hypotheses over X target concept c: X -> {0,1} set of pairs <x,c(x)> D
VS(H,D) = {h | g >= h >= s} where g & s range over G & S
25
Candidate Elimination Algorithm
G maximally general hypotheses in HS maximally specific hypotheses in HFor each training example d=<x,c(x)>If d is a positive example
Remove from G any hypothesis that is inconsistent with dFor 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
h consistent with d Some member of G is more general than h
Remove from S any hypothesis that is more general than another hypothesis in S
26
Candidate Elimination Algorithm
If d is a negative example
Remove from S any hypothesis that is 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
h consistent with d Some member of S is more specific than h
Remove from G any hypothesis that is less general than another hypothesis in G
28
Example Candidate Elimination
{<, , , , , >}S:
{<?, ?, ?, ?, ?, ?>}G:
{< Sunny Warm Normal Strong Warm Same >}S:
{<?, ?, ?, ?, ?, ?>}G:
{< Sunny Warm ? Strong Warm Same >}S:
{<?, ?, ?, ?, ?, ?>}G:
x1 = <Sunny Warm Normal Strong Warm Same> +
x2 = <Sunny Warm High Strong Warm Same> +
29
Example Candidate Elimination..
{< Sunny Warm ? Strong Warm Same >}S:
{<?, ?, ?, ?, ?, ?>}G:
{< Sunny Warm ? Strong Warm Same >}S:
{<Sunny,?,?,?,?,?>, <?,Warm,?,?,?>, <?,?,?,?,?,Same>}G:
{< Sunny Warm ? Strong ? ? >}S:
{<Sunny,?,?,?,?,?>, <?,Warm,?,?,?> }G:
x3 = <Rainy Cold High Strong Warm Change> -
x4 = <Sunny Warm High Strong Cool Change> +
30
Example Candidate Elimination..
{<Sunny,Warm,?,Strong,?,?>}S:
{<Sunny,?,?,?,?,?>, <?,Warm,?,?,?>, }G:
<Sunny,?,?,Strong,?,?> <Sunny,Warm,?,?,?,?><?,Warm,?,Strong,?,?>
x1 = <Sunny Warm Normal Strong Warm Same> +x2 = <Sunny Warm High Strong Warm Same> +x3 = <Rainy Cold High Strong Warm Change> -x4 = <Sunny Warm High Strong Cool Change> +
31
Cand. Elim. – Black board example
Size = large/small, Color = red/white/blue and Shape = cube/brick/round
Examples Positive (+): obj(small, red, round) Negative (-): obj(small, blue, round) Positive (+): obj(large, red, round) Negative (-): obj(large, red, cube)
What does Candidate Elimination find?
32
Remarks on VS & CE
Converges to correct h? If no errors, H rich enough: yes exact: G = S and both singletons
Effect of errors (noise) example 2 negative -> CE removes the correct
target from VS! detection: VS gets empty
Similarly, VS gets empty when c can not be represented (e.g. disjunctions)
33
Classification of New Data
{<Sunny,Warm,?,Strong,?,?>}S:
{<Sunny,?,?,?,?,?>, <?,Warm,?,?,?>, }G:
<Sunny,?,?,Strong,?,?> <Sunny,Warm,?,?,?,?><?,Warm,?,Strong,?,?>
x5 = <Sunny Warm Normal Strong Cool Change> x6 = <Rainy Cold Normal Light Warm Same>x7 = <Sunny Warm Normal Light Warm Same> x8 = <Sunny Cold Normal Strong Warm Same>
+ 6/0- 0/6? 3/3? 2/4
34
How to use partially learned concepts?
Classification with ambiguous VS h(x) = 0/1 for every h in VS: ok enough to check with G (0) & S (1) 3rd example: 50% support for both 4th: 66% support for 0 majority vote + confidence? Ok if all h are equally likely
35
What example next?
Three settings for learning:Three settings for learning: Tasks are generated by a random process Tasks are generated by a random process
outside the learneroutside the learner The learner can pose queries to be The learner can pose queries to be classified
by a teachera teacher The learner explores its surroundings The learner explores its surroundings
autonomously (conducts an experiment)autonomously (conducts an experiment) What to ask/check as next example/query?
Is there a good general strategy? Should attempt to discriminate among the
alternatives in VS
36
What to ask...
Discriminating example c(x) = 1: S will generalize c(x) = 0: G will specialize
Optimal choice halves VS x satisfies half of VS members for example,
<Sunny, warm, Normal, Light, Warm, Same> not possible to generate one in general if we are able to do this, we can find an optimal if we are able to do this, we can find an optimal
hypothesis in loghypothesis in log2 |VS| steps|VS| steps
37
Inductive Leap
+ <Sunny Warm Normal Strong Cool Change>
+ <Sunny Warm Normal Light Warm Same>
+ <Sunny Warm Normal Strong Warm Same>
• How can we justify to classify the new example as
Bias: We assume that the hypothesis space H contains the target concept c. In other words that c can be described by a conjunction of literals.
S : <Sunny Warm Normal ? ? ?>
38
Biased hypothesis space
Assure H contains c make H general enough what if it’s not?
Example case max specific h consistent with x1 & x2 (+) is too
general for x3 (-) See next slide x1 = <Sunny Warm Normal Strong Cool Change> + x2 = <Cloudy Warm Normal Strong Cool Change> + x3 = <Rainy Warm Normal Strong Cool Change> -
reason: we have biased the learner to consider only conjunctions
39
Biased Hypothesis Space
Our hypothesis space is unable to represent a simple disjunctive target concept : (Sky=Sunny) v (Sky=Cloudy)
x1 = <Sunny Warm Normal Strong Cool Change> +x2 = <Cloudy Warm Normal Strong Cool Change> +
S : { <?, Warm, Normal, Strong, Cool, Change> }
x3 = <Rainy Warm Normal Strong, Cool, Change> -
S : {}
40
Unbiased Learner
Idea: Choose H that expresses every teachable concept, that means H is the set of all possible subsets of X called the power set P(X)
|X|=96, |P(X)|=296 ~ 1028 distinct concepts (too large!)
H = disjunctions, conjunctions, negations e.g. <Sunny Warm Normal ? ? ?> v <? ? ? ? ?
Change> H surely contains the target concept.
Sky = Sunny or Sky = Cloudy eliminates problems of expressibility BUT, also eliminates the ability to generalize!
41
Unbiased Learner
Assume we have positive examples (x1, x2, x3) and negative examples (x4, x5) S : { (x1 v x2 v x3) } G : { (x4 v x5) }
The only examples that are classified are the training examples themselves. Each unobserved instance will be classified positive by
precisely half the hypothesis in VS For every concept classifying x positively, there is
another concept that differs only on x, classifies x negatively.
That’s, in order to learn the target concept one would have to present every single instance in X as a training example.
42
Futility of Bias-Free Learning
If learner makes no a priori assumptions on the
target concept Then
it has no rational basis for classifying any unseen instances
Inductive bias = prior assumptions Inductive bias is the preference for a Inductive bias is the preference for a
hypothesis space hypothesis space HH and a search and a search mechanism over mechanism over HH..
43
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 instance xi by L after training on Dc.
Definition: The inductive bias of L is any minimal set of assertions B such that for any target concept c and corresponding training data Dc
(xi X)[B Dc xi] |-- L(xi, Dc)
Where A |-- B means that A logically entails B.
44
Inductive and Deductive Systems
candidate eliminationalgorithm
using hypothesis space H
equivalent deductive system
trainingexamples
new instance
classification ofnew instance or don’t know
theorem prover training examples
new instance
classification ofnew instance or don’t know
assertion ”H contains targetconcept”
45
Schematic summary
Top: inductive system built-in (implicit) bias
Bottom: deductive system explicit bias non-procedural way for characterizing learning
systems allows comparisons of different learning
algorithms
46
Three learners & their biases
Rote learner: no bias Candidate Elimination
c is (representable) in H
Find-S The hypothesis space contains the target
concept and all instances are negative instances unless the opposite is entailed by its other knowledge. c is the most specific consistent hypotheses of H
47
Summary
The input space is the space of all examples; the output space is the space of all classes.
A hypothesis maps examples into classes. We want a hypothesis close to target concept c. The General-to specific ordering establishes a
natural partial ordering over the hypothesis space.
One can exploit this ordering to move along the corresponding lattice.
48
Summary
The candidate elimination algorithm exploits the general-specific ordering of hypotheses to find all hypotheses consistent with the training data.
The version space contains all consistent hypotheses and is simply represented by two lists: S and G.
Candidate elimination algorithm is not robust to noise and assumes the target concept is included in the hypothesis space.
Any inductive algorithm needs some assumptions about the hypothesis space, otherwise it would be impossible to perform predictions.