# learning from observations

Post on 19-Mar-2016

38 views

Embed Size (px)

DESCRIPTION

Learning from Observations. Chapter 18 Section 1 – 3. Outline. Learning agents Inductive learning Decision tree learning. The idea behind learning. Percepts should be used not only for acting, but also for improving the agent's ability to act in the future. Learning. - PowerPoint PPT PresentationTRANSCRIPT

Learning from Observations

Chapter 18Section 1 3

OutlineLearning agentsInductive learningDecision tree learning

The idea behind learningPercepts should be used not only for acting, but also for improving the agent's ability to act in the future.

Learningtakes place as the agent observes its interactions with the world and its own decision-making processescan range from trivial memorization of experience, as exhibited by the wumnpus-world agent, to the creation of entire scientific theories, as exhibited by Albert Einstein

LearningLearning is essential for unknown environments,i.e., when designer lacks omniscience

Learning is useful as a system construction method,i.e., expose the agent to reality rather than trying to write it down

Learning modifies the agent's decision mechanisms to improve performance

Learning agents performance element: decides what actions to take learning element: modifies the performance element so that it makes better decisions.

Learning elementDesign of a learning element is affected byWhich components of the performance element are to be learned (chapter 2)What feedback is available to learn these componentsWhat representation is used for the components

Type of feedback:Supervised learning: correct answers for each exampleUnsupervised learning: correct answers not givenReinforcement learning: occasional rewards

Learning typesSupervised learning: a situation in which sample (input, output) pairs of the function to be learned can be perceived or are givenYou can think it as if there is a kind teacherEg. an agent training to become a taxi driver. Every time the instructor shouts "Brake!" the agent can learn a condition-action rule for when to brake

Reinforcement learning: in the case of the agent acts on its environment, it receives some evaluation of its action (reinforcement), but is not told of which action is the correct one to achieve its goal

Inductive learningSimplest form: learn a function from examples

f is the target function

An example is a pair (x, f(x))

Problem: find a hypothesis hsuch that h fgiven a training set of examples

(This is a highly simplified model of real learning:Ignores prior knowledgeAssumes examples are given)

Inductive learning methodConstruct/adjust h to agree with f on training set(h is consistent if it agrees with f on all examples)

E.g., curve fitting():

Inductive learning methodConstruct/adjust h to agree with f on training set(h is consistent if it agrees with f on all examples)

E.g., curve fitting:

Not consistent!(1) linear hypothesis. F(x)=ax+b

Inductive learning methodConstruct/adjust h to agree with f on training set(h is consistent if it agrees with f on all examples)

E.g., curve fitting:

Not consistent!(2) F(x)=ax2+bx+c

E.g., curve fitting:

(c)

E.g., curve fitting:

(d)

E.g., curve fitting:

(c),(d),(e) consistent, which one should be chosen?Ockhams razor: prefer the simplest hypothesis consistent with datadegree- 1 polynomial is simpler than a degree- 12 polynomial.

(e)

Learning decision treesDecision tree induction is one of the simplest, and yet most successful forms of learning algorithm.A decision tree takes as input an object or situation described by a set of attributes and returns a "decision-the predicted output value for the input. Section 18.3. Learning Decision Trees

Learning decision treesThe input attributes can be discrete or continuous.learning a discrete-valued function is called classification learning;learning a continuous function is called regression.

Section 18.3. Learning Decision Trees

How to construct decision treesA decision tree reaches its decision by performing a sequence of tests. Each internal node in the tree corresponds to a test of the value of one of the properties the branches from the node are labeled with the possible values of the testEach leaf node in the tree specifies the value to be returned if that leaf is reached.

Learning decision treesProblem: decide whether to wait for a table at a restaurant, based on the following attributes:Alternate: is there an alternative restaurant nearby?Bar: is there a comfortable bar area to wait in?Fri/Sat: is today Friday or Saturday?Hungry: are we hungry?Patrons: number of people in the restaurant (None, Some, Full)Price: price range ($, $$, $$$)Raining: is it raining outside?Reservation: have we made a reservation?Type: kind of restaurant (French, Italian, Thai, Burger) WaitEstimate: estimated waiting time (0-10, 10-30, 30-60, >60)Section 18.3. Learning Decision Trees

Attribute-based representationsExamples described by attribute values (Boolean, discrete, continuous)E.g., situations where I will/won't wait for a table:

Classification of examples is positive (T) or negative (F)

training setPositive examples are the ones in which the goal is trueNegative examples are the ones in which it is false The complete set of examples is called the training set.Q: In previous example,training set={x1,x2,x12}which are Positive examples ?which are Negative examples?

Decision treesOne possible representation for hypothesesE.g., here is the true tree for deciding whether to wait:

ExpressivenessLogically speaking, any particular decision tree hypothesis for the Will Wait goal predicate can be seen as an assertion of the form

Pi(s) is a conjunction of tests corresponding to a path from the root of the tree to a leaf with a positive outcome.

ExpressivenessP1(s):Patrons=SomeP2(s):Patrons=Full WaitEstimate=30-60 Alternate=No Reservation=No Bar=Yes

ExpressivenessDecision trees can express any function of the input attributes.E.g., for Boolean functions, truth table row path to leaf:

Trivially, there is a consistent decision tree for any training set with one path to leaf for each example (unless f nondeterministic in x) but it probably won't generalize to new examples

Prefer to find more compact decision trees

Hypothesis spacesHow many distinct decision trees with n Boolean attributes?= number of Boolean functions= number of distinct truth tables with 2n rows = 22n ("answer" column of the table as a 2n-bit number that defines the function).

E.g., with 6 Boolean attributes, there are 18,446,744,073,709,551,616 trees

Hypothesis spacesHow many distinct decision trees with n Boolean attributes?= number of Boolean functions= number of distinct truth tables with 2n rows = 22n

E.g., with 6 Boolean attributes, there are 18,446,744,073,709,551,616 trees

How many purely conjunctive hypotheses (e.g., Hungry Rain)?Each attribute can be in (positive), in (negative), or out 3n distinct conjunctive hypothesesMore expressive hypothesis spaceincreases chance that target function can be expressedincreases number of hypotheses consistent with training set may get worse predictions

Decision tree learningAim: find a small tree consistent with the training examplesSmaller tree means less tests, quicker decisionIdea: (recursively) choose "most important" attribute as root of (sub)tree

"most important" attribute is the one that makes the most difference to the classification of an example

Decision tree learningAim: find a small tree consistent with the training examplesIdea: (recursively) choose "most significant" attribute as root of (sub)tree

Choosing an attributeIdea: a good attribute splits the examples into subsets that are (ideally) "all positive" or "all negative"

Patrons? is a better choice

Using information theoryTo implement Choose-Attribute in the DTL algorithm

Information Content (Entropy): the information content I of the actual answer is given by I(P(v1), , P(vn)) = i=1 -P(vi) log2 P(vi) the possible answers vi have probabilities P(vi),

Using information theoryFor a training set containing p positive examples and n negative examples:

If the coin is loaded to give 99% heads, we get I (1/100,99/100) = 0.08 bits, and as theprobability of heads goes to 1, the information of the actual answer goes to 0.

Information gainA chosen attribute A divides the training set E into subsets E1, , Ev according to their values for A, where A has v distinct values.

Information Gain (IG) or reduction in entropy from the attribute test:

Choose the attribute with the largest IG

Information gainFor the training set, p = n = 6, I(6/12, 6/12) = 1 bit

Consider the attributes Patrons and Type (and others too):

Patrons has the highest IG of all attributes and so is chosen by the DTL algorithm as the root

Example contd.Decision tree learned from the 12 examples:

Substantially simpler than true tree---a more complex hypothesis isnt justified by small amount of data

Performance measurementHow do we know that h f ?Use theorems of computational/statistical learning theoryTry h on a new test set of examples(use same distribution over example space as training set)Learning curve = % correct on test set as a function of training set size

SummaryLearning needed for u

Recommended