48
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

1 Chapter 2 - Concept learning Learning from examples Concept Learning General-to specific ordering of hypotheses Version spaces and candidate

  • View
    225

  • Download
    0

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

27

Candidate Elimination Algorithm

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.