Learning What is learning? Foundations of Artificial Intelligence - - PowerPoint PPT Presentation

learning
SMART_READER_LITE
LIVE PREVIEW

Learning What is learning? Foundations of Artificial Intelligence - - PowerPoint PPT Presentation

Learning What is learning? Foundations of Artificial Intelligence An agent learns when it improves its performance w.r.t. a specific task 8. Machine Learning with experience. Learning from Observations E.g., game programs Why learn?


slide-1
SLIDE 1

Foundations of Artificial Intelligence

  • 8. Machine Learning

Learning from Observations Wolfram Burgard, Bernhard Nebel, and Martin Riedmiller

Albert-Ludwigs-Universit¨ at Freiburg

Juli 1, 2011

Learning

What is learning? An agent learns when it improves its performance w.r.t. a specific task with experience. → E.g., game programs Why learn? → Engineering, philosophy, cognitive science → Data Mining (discovery of new knowledge through data analysis) No intelligence without learning!

(University of Freiburg) Foundations of AI Juli 1, 2011 2 / 37

Contents

1

The learning agent

2

Types of learning

3

Decision trees

(University of Freiburg) Foundations of AI Juli 1, 2011 3 / 37

The Learning Agent

So far an agent’s percepts have only served to help the agent choose its

  • actions. Now they will also serve to improve future behavior.

Performance standard

Agent Environment

Sensors Performance element changes knowledge learning goals Problem generator feedback Learning element Critic Actuators

  • (University of Freiburg)

Foundations of AI Juli 1, 2011 4 / 37

slide-2
SLIDE 2

Building Blocks of the Learning Agent

Performance element: Processes percepts and chooses actions. → Corresponds to the agent model we have studied so far. Learning element: Carries out improvements → requires self knowledge and feedback on how the agent is doing in the environment. Critic: Evaluation of the agent’s behaviour based on a given external behavioral measure → feedback. Problem generator: Suggests explorative actions that lead the agent to new experiences.

(University of Freiburg) Foundations of AI Juli 1, 2011 5 / 37

The Learning Element

Its design is affected by four major issues: Which components of the performance element are to be learned? What representation should be chosen? What form of feedback is available? Which prior information is available?

(University of Freiburg) Foundations of AI Juli 1, 2011 6 / 37

Types of Feedback During Learning

The type of feedback available for learning is usually the most important factor in determining the nature of the learning problem. Supervised learning: Involves learning a function from examples of its inputs and outputs. Unsupervised learning: The agent has to learn patterns in the input when no specific output values are given. Reinforcement learning: The most general form of learning in which the agent is not told what to do by a teacher. Rather it must learn from a reinforcement or reward. It typically involves learning how the environment works.

(University of Freiburg) Foundations of AI Juli 1, 2011 7 / 37

Inductive Learning

An example is a pair (x, f(x)). The complete set of examples is called the training set. Pure inductive inference: for a collection of examples for f, return a function h (hypothesis) that approximates f. The function h typically is member of a hypothesis space H. A good hypothesis should generalize the data well, i.e., will predict unseen examples correctly. A hypothesis is consistent with the data set if it agrees with all the data. How do we choose from among multiple consistent hypotheses? Ockham’s razor: prefer the simplest hypothesis consistent with the data.

(University of Freiburg) Foundations of AI Juli 1, 2011 8 / 37

slide-3
SLIDE 3

Example: Fitting a Function to a Data Set

(c) (a) (b) (d) x x x x f(x) f(x) f(x) f(x)

(a) consistent hypothesis that agrees with all the data (b) degree-7 polynomial that is also consistent with the data set (c) data set that can be approximated consistently with a degree-6 polynomial (d) sinusoidal exact fit to the same data

(University of Freiburg) Foundations of AI Juli 1, 2011 9 / 37

Decision Trees

Input: Description of an object or a situation through a set of attributes. Output: a decision, that is the predicted output value for the input. Both, input and output can be discrete or continuous. Discrete-valued functions lead to classification problems. Learning a continuous function is called regression.

(University of Freiburg) Foundations of AI Juli 1, 2011 10 / 37

Boolean Decision Tree

Input: set of vectors of input attributes X and a single Boolean output value y (goal predicate). Output: Yes/No decision based on a goal predicate. Goal of the learning process: Definition of the goal predicate in the form of a decision tree. Boolean decision trees represent Boolean functions. Properties of (Boolean) Decision Trees: An internal node of the decision tree represents a test of a property. Branches are labeled with the possible values of the test. Each leaf node specifies the Boolean value to be returned if that leaf is reached.

(University of Freiburg) Foundations of AI Juli 1, 2011 11 / 37

When to Wait for Available Seats at a Restaurant

Goal predicate: WillWait Test predicates: Patrons: How many guests are there? (none, some, full) WaitEstimate: How long do we have to wait? (0-10, 10-30, 30-60, >60) Alternate: Is there an alternative? (T/F) Hungry: Am I hungry? (T/F) Reservation: Have I made a reservation? (T/F) Bar: Does the restaurant have a bar to wait in? (T/F) Fri/Sat: Is it Friday or Saturday? (T/F) Raining: Is it raining outside? (T/F) Price: How expensive is the food? ($, $$, $$$) Type: What kind of restaurant is it? (French, Italian, Thai, Burger)

(University of Freiburg) Foundations of AI Juli 1, 2011 12 / 37

slide-4
SLIDE 4

Restaurant Example (Decision Tree)

No Yes No Yes No Yes No Yes None Some Full >60 30-60 10-30 0-10 No Yes Alternate? Hungry? Reservation? Bar? Raining? Alternate? Patrons? Fri/Sat? No Yes No Yes Yes Yes No Yes No Yes Yes No Yes No Yes Yes No WaitEstimate?

(University of Freiburg) Foundations of AI Juli 1, 2011 13 / 37

Expressiveness of Decision Trees

Each decision tree hypothesis for the WillWait goal predicate can be seen as an assertion of the form ∀sWillWait(s) ⇔ (P1(s) ∨ P2(s) ∨ . . . ∨ Pn(s)) where each Pi(s) is the conjunction of tests along a path from the root of the tree to a leaf with a positive outcome. Any Boolean function can be represented by a decision tree. Limitation: All tests always involve only one object and the language of traditional decision trees is inherently propositional. ∃r2NearBy(r2, s) ∧ Price(r, p) ∧ Price(r2, p2) ∧ Cheaper(p2, p) cannot be represented as a test. We could always add another test called CheaperRestaurantNearby, but a decision tree with all such attributes would grow exponentially.

(University of Freiburg) Foundations of AI Juli 1, 2011 14 / 37

Compact Representations

For every Boolean function we can construct a decision tree by translating every row of a truth table to a path in the tree. This can lead to a tree whose size is exponential in the number of attributes. Although decision trees can represent functions with smaller trees, there are functions that require an exponentially large decision tree:

Parity function: p(x) =

  • 1

even number of inputs are 1

  • therwise

Majority function: m(x) =

  • 1

half of the inputs are 1

  • therwise

There is no consistent representation that is compact for all possible Boolean functions.

(University of Freiburg) Foundations of AI Juli 1, 2011 15 / 37

The Training Set of the Restaurant Example

Classification of an example = Value of the goal predicate true → positive example false → negative example

(University of Freiburg) Foundations of AI Juli 1, 2011 16 / 37

slide-5
SLIDE 5

Inducing Decision Trees from Examples

Na¨ ıve solution: we simply construct a tree with one path to a leaf for each example. In this case we test all the attributes along the path and attach the classification of the example to the leaf. Whereas the resulting tree will correctly classify all given examples, it will not say much about other cases. It just memorizes the observations and does not generalize.

(University of Freiburg) Foundations of AI Juli 1, 2011 17 / 37

Inducing Decision Trees from Examples (2)

Smallest solution: applying Ockham’s razor we should instead find the smallest decision tree that is consistent with the training set. Unfortunately, for any reasonable definition of smallest finding the smallest tree is intractable. Dilemma: smallest simplest

?

intractable no learning We can give a decision tree learning algorithm that generates “smallish” trees.

(University of Freiburg) Foundations of AI Juli 1, 2011 18 / 37

Idea of Decision Tree Learning

Divide and Conquer approach: Choose an (or better: the best) attribute. Split the training set into subsets each corresponding to a particular value of that attribute. Now that we have divided the training set into several smaller training sets, we can recursively apply this process to the smaller training sets.

(University of Freiburg) Foundations of AI Juli 1, 2011 19 / 37

Splitting Examples (1)

Type is a poor attribute, since it leaves us with four subsets each of them containing the same number of positive and negative examples. It does not reduce the problem complexity.

(University of Freiburg) Foundations of AI Juli 1, 2011 20 / 37

slide-6
SLIDE 6

Splitting Examples (2)

Patrons is a better choice, since if the value is None or Some, then we are left with example sets for which we can answer definitely (Yes or No). Only for the value Full we are left with a mixed set of examples. One potential next choice is Hungry.

(University of Freiburg) Foundations of AI Juli 1, 2011 21 / 37

Recursive Learning Process

In each recursive step there are four cases to consider: Positive and negative examples: choose a new attribute. Only positive (or only negative) examples: done (answer is Yes or No). No examples: there was no example with the desired property. Answer Yes if the majority of the parent node’s examples is positive, otherwise No. No attributes left, but there are still examples with different classifications: there were errors in the data (→ NOISE) or the attributes do not give sufficient information. Answer Yes if the majority

  • f examples is positive, otherwise No.

(University of Freiburg) Foundations of AI Juli 1, 2011 22 / 37

The Decision Tree Learning Algorithm

(University of Freiburg) Foundations of AI Juli 1, 2011 23 / 37

Application to the Restaurant Data

No Yes No Yes No Yes No Yes None Some Full >60 30-60 10-30 0-10 No Yes Alternate? Hungry? Reservation? Bar? Raining? Alternate? Patrons? Fri/Sat? No Yes No Yes Yes Yes No Yes No Yes Yes No Yes No Yes Yes No WaitEstimate?

Original tree:

None Some Full Patrons? No Yes No Yes Hungry? No No Yes Fri/Sat? Yes No Yes Type? French Italian Thai Burger Yes No

(University of Freiburg) Foundations of AI Juli 1, 2011 24 / 37

slide-7
SLIDE 7

Properties of the Resulting Tree

The resulting tree is considerably simpler than the one originally given (and from which the training examples were generated). The learning algorithm outputs a tree that is consistent with all examples it has seen. The tree does not need to agree with the correct function. For example, it suggests not to wait if we are not hungry. If we are, there are cases in which it tells us to wait. Some tests (Raining, Reservation) are not included since the algorithm can classify the examples without them.

(University of Freiburg) Foundations of AI Juli 1, 2011 25 / 37

Choosing Attribute Tests

Choose-Attribute(attribs, examples) One goal of decision tree learning is to select attributes that minimize the depth of the final tree. The perfect attribute divides the examples into sets that are all positive

  • r all negative.

Patrons is not perfect but fairly good. Type is useless since the resulting proportion of positive and negative examples in the resulting sets are the same as in the original set. What is a formal measure of “fairly good” and “useless”?

(University of Freiburg) Foundations of AI Juli 1, 2011 26 / 37

Evaluation of Attributes

Tossing a coin: What value has prior information about the outcome of the toss when the stakes are $1 and the winnings $1? Rigged coin with 99% heads and 1% tails. (average winnings per toss = $0.98)

→ Worth of information about the outcome is less than $0.02.

Fair coin

→ Value of information about the outcome is less than $1. → The less we know about the outcome, the more valuable the prior information.

(University of Freiburg) Foundations of AI Juli 1, 2011 27 / 37

Information Provided by an Attribute

One suitable measure is the expected amount of information provided by the attribute. Information theory measures information content in bits. One bit is enough to answer a yes/no question about which one has no idea (fair coin flip). In general, if the possible answers vi have probabilities P(vi), the information content is given as I(P(v1), . . . , P(vn)) =

n

  • i=1

−P(vi) log2(P(vi))

(University of Freiburg) Foundations of AI Juli 1, 2011 28 / 37

slide-8
SLIDE 8

Examples

I 1

2, 1 2

  • I(1, 0)

I(0, 1)

(University of Freiburg) Foundations of AI Juli 1, 2011 29 / 37

Attribute Selection (1)

Suppose training set E consists of p positive and n negative examples: I

  • p

p + n, n p + n

  • =

p p + n log2 p + n p

  • +

n p + n log2 p + n n

  • The value of an attribute A depends on the additional information that we

still need to collect after we selected it. Suppose A divides the training set E into subsets Ei, i = 1, . . . , v. Every subset has I

  • pi

pi+ni , ni pi+ni

  • A random example has value i with probability pi+ni

p+n

(University of Freiburg) Foundations of AI Juli 1, 2011 30 / 37

Attribute Selection (2)

→ The average information content after choosing A is R(A) =

v

  • i=1

pi + ni p + n I

  • pi

pi + ni , ni pi + ni

  • → The information gain from choosing A is

Gain(A) = I

  • p

p + n, n p + n

  • − R(A)

Heuristic in Choose-Attribute is to select the attribute with the largest gain. Examples: Gain(Patrons) = 1 − [ 2

12I(0, 1) + 4 12I(1, 0) + 6 12I( 2 6, 4 6)] ≈ 0.541

Gain(Type) = 1 − [ 2

12I( 1 2, 1 2) + 2 12I( 1 2, 1 2) + 4 12I( 2 4, 2 4) + 4 12I( 2 4, 2 4)] = 0

(University of Freiburg) Foundations of AI Juli 1, 2011 31 / 37

Assessing the Performance of the Learning Algorithm

Methodology for assessing the power of prediction: Collect a large number of examples. Divide it into two disjoint sets: the training set and the test set. Use the training set to generate h. Measure the percentage of examples of the test set that are correctly classified by h. Repeat the process for randomly-selected training sets of different sizes.

(University of Freiburg) Foundations of AI Juli 1, 2011 32 / 37

slide-9
SLIDE 9

Learning Curve for the Restaurant Example

As the training set grows, the prediction quality increases.

(University of Freiburg) Foundations of AI Juli 1, 2011 33 / 37

Important Strategy for Designing Learning Algorithms

The training and test sets must be kept separate. Common error: Changing the algorithm after running a test, and then testing it with training and test sets from the same basic set of

  • examples. By doing this, knowledge about the test set gets stored in the

algorithm, and the training and test sets are no longer independent.

(University of Freiburg) Foundations of AI Juli 1, 2011 34 / 37

Noise

What is noise? Random errors in the learning data Effect: Larger trees make more mistakes on new data (overfitting) Avoidance of overfitting by means of a “validation set”: The training set is divided into two groups; 70% of the training set is used to build the tree, and the remaining 30% to define an appropriate tree size (“pruning”)

(University of Freiburg) Foundations of AI Juli 1, 2011 35 / 37

Post-pruning

One way to deal with noise

  • Split training set into e.g.

70% for learning 30% for validation

  • First build the tree as usual on learning set
  • Then iterate as long as accuracy on validation set increases

Turn each subtree into leaf and measure accuracy on validation set Select that new tree that increases the accuracy the most on the validation set

(University of Freiburg) Foundations of AI Juli 1, 2011 36 / 37

slide-10
SLIDE 10

Summary: Decision Trees

One possibility for representing (Boolean) functions. Decision trees can be exponential in the number of attributes. It is often too difficult to find the minimal DT. One method for generating DTs that are as flat as possible is based on ranking the attributes. The ranks are computed based on the information gain.

(University of Freiburg) Foundations of AI Juli 1, 2011 37 / 37