Learning from Observations Chapter 18 Section 1 – 3, 5-8 (presentation TBC)
-
Upload
jasmine-berry -
Category
Documents
-
view
220 -
download
0
Transcript of Learning from Observations Chapter 18 Section 1 – 3, 5-8 (presentation TBC)
Learning from Observations
Chapter 18Section 1 – 3, 5-8
(presentation TBC)
Learning
• Learning 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
Types of Learning– Supervised learning: correct answer for each
example. Answer can be a numeric variable, categorical variable etc.
– Unsupervised learning: correct answers not given – just examples (e.g. – the same figures as above , without the labels)
– Reinforcement learning: occasional rewards
M M MF F F
Inductive learning
Simplest 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 knowledge– Assumes examples are given)
–
•
Inductive learning method
• Construct/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 method
• Construct/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 method
• Construct/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 method
• Construct/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 method
• Construct/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 method
• Construct/adjust h to agree with f on training set• (h is consistent if it agrees with f on all examples)• E.g., curve fitting:
• Ockham’s razor: prefer the simplest hypothesis consistent with data
•
Learning decision trees
Problem: decide whether to wait for a table at a restaurant, based on the following attributes:1. Alternate: is there an alternative restaurant nearby?2. Bar: is there a comfortable bar area to wait in?3. Fri/Sat: is today Friday or Saturday?4. Hungry: are we hungry?5. Patrons: number of people in the restaurant (None,
Some, Full)6. Price: price range ($, $$, $$$)7. Raining: is it raining outside?8. Reservation: have we made a reservation?9. Type: kind of restaurant (French, Italian, Thai, Burger)10. WaitEstimate: estimated waiting time (0-10, 10-30, 30-
60, >60)
Attribute-based representations
• Examples 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)• The set of examples used for learning is called training set.
Decision trees
• One possible representation for hypotheses• E.g., here is the “true” tree for deciding whether
to wait:
Expressiveness• Decision 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
Finding ‘compact’ decision trees
• Motivated by Ockham’s razor.• However, finding the smallest
decision tree is an unsolved problem (NPc).
• There are heuristics that find reasonable decision trees in most practical cases.
Hypothesis spaces
How 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
Decision tree learning
• Aim: find a small tree consistent with the training examples• Idea: (recursively) choose "most significant" attribute as
root of (sub)tree
Choosing an attribute
• Idea: a good attribute splits the examples into subsets that are (ideally) "all positive" or "all negative"
• Patrons? is a better choice
•
Example contd.
• Decision tree learned from the 12 examples:
• Substantially simpler than “true” tree---a more complex hypothesis isn’t justified by small amount of data
Using information theory
• To implement Choose-Attribute in the DTL algorithm
• Information Content (Entropy):I(P(v1), … , P(vn)) = Σi=1 -P(vi) log2 P(vi)
• For a training set containing p positive examples and n negative examples:
np
n
np
n
np
p
np
p
np
n
np
pI
22 loglog),(
Information gain
• A 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
v
i ii
i
ii
iii
np
n
np
pI
np
npAremainder
1
),()(
)(),()( Aremaindernp
n
np
pIAIG
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
Given Patrons as root node, the next attribute chosen is Hungry?, with IG(Hungry?) = I(1/3, 2/3) – ( 2/3*1 + 1/3*0) = 0.252
bits 0)]4
2,
4
2(
12
4)
4
2,
4
2(
12
4)
2
1,
2
1(
12
2)
2
1,
2
1(
12
2[1)(
bits 541.)]6
4,
6
2(
12
6)0,1(
12
4)1,0(
12
2[1)(
IIIITypeIG
IIIPatronsIG
Next step
Given Patrons as root node, the next attribute chosen is Hungry?, with IG(Hungry?) = I(1/3, 2/3) – ( 2/3*1 + 1/3*0) = 0.252
Final decision tree induced by 12-example training set
Braodening the applicability of Decision Trees
• Missing data
• Multivalued attributes
• Continuous or integer values attributes
• Continuous output attributes
Computational Learning Theory – why learning works
• PAC learning )Probably Approximately Correct) • This has been a breakthrough in the theory of
machine learning.• Basic idea: A really bad hypothesis will be easy to
identify, With high probability it will err on one of the training examples.
• A consistent hypothesis will be probably approximately correct.
• Notice that if there are more training example, then the probability of “approximately correct” becomes higher!
Computational Learning Theory – how many examples
are neededLet:• X the set of all possible examples• D the distribution from which samples are
drawn• H the set of possible hypothesis• m the number of examples in the training
set
And assume that f, the true function is in H.
error• Error(h) = P( h(x) f(x) | x drawn from D)• An approximately correct hypothesis h, is a hypothesis that
satisfies Error(h) <
• m 1/ (ln|H| - ln ) , where is the probability that Hbad contains a hypothesis consistent with all examples
H
Hbad
f
Examples
• Learning a Boolean function; • Learning a conjunction of n literals• Learning decision lists
Boolean function
• A general boolean function on n attributes can be represented by its truth table
• Size of truth table 2n
A B C F(A,B,C)
T T T F
T T F T
T F T T
T F F F
F T T F
F T F F
F F T F
F F F T
Arbitrary boolean function on 3 attributes
Conjuntion of literals
• A literal is a variable or its negation
• A B C is an example of conjunction of literals
Learning Decision Lists
• A decision list consists of a series of tests, each of which is a conjunction of literals. If the tests succeeds, the decision list specifies the value to be returned. Otherwise, the processing continues with the next test in the list.
• Decision lists can represent any boolean function hence are not learnable.
K- DL
• A k-DL is a decision list where each test is restricted to at most k literals.
• K- Dl is learnable!
Performance measurement
• How do we know that h ≈ f ?1. Use theorems of computational/statistical learning theory2. Try 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
Learning curve for learning decision trees – restaurant problem
Regression and Classification with Linear Models• Univariate linear regression
• Multivariate linear regression
• Linear classifiers with a hard threshold
• Linear classifiers with a logistic regression
Artificial Neural Networds
• NN structures
• Single layer networks - perceptrons
• Multilayer neural networks
Non Parametric models
• Nearest Neighbor models
Summary
• Learning needed for unknown environments, lazy designers
• Learning agent = performance element + learning element
• For supervised learning, the aim is to find a simple hypothesis approximately consistent with training examples
• Decision tree learning using information gain
• Learning performance = prediction accuracy measured on test set