1 / 52

For Monday

For Monday. Read Chapter 18, sections 10-12 Homework: Chapter 18, exercise 6. Program 4. What Is a Good Test?. Want a test which creates subsets which are relatively “pure” in one class so that they are closer to being leaf nodes.

osric
Download Presentation

For Monday

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. For Monday • Read Chapter 18, sections 10-12 • Homework: • Chapter 18, exercise 6

  2. Program 4

  3. What Is a Good Test? • Want a test which creates subsets which are relatively “pure” in one class so that they are closer to being leaf nodes. • There are various heuristics for picking a good test, the most popular one based on information gain (mutual information) originated with ID3 system of Quinlan (1979)

  4. Entropy • Entropy (impurity, disorder) of a set of examples,S, relative to a binary classification is: Entropy(S) = -p+log2(p+) - p-log2(p-) where p+ is the proportion of positive examples in S and p­ is the proportion of negatives. • If all examples belong to the same category, entropy is 0 (by definition 0log(0) is defined to be 0). • If examples are equally mixed (p + =p ­ = 0.5) then entropy is a maximum at 1.0.

  5. Entropy can be viewed as the number of bits required on average to encode the class of an example in S, where data compression (e.g Huffman coding) is used to give shorter codes to more likely cases. • For multiple­category problems with c categories, entropy generalizes to: Entropy(S) = -pilog2(pi) where pi is proportion of category i examples in S.

  6. Information Gain • The information gain of an attribute is the expected reduction in entropy caused by partitioning on this attribute: Gain(S,A) = Entropy(S) - (|Sv|/|S|) Entropy(Sv) where Sv is the subset of S for which attribute A has value v and the entropy of the partitioned data is calculated by weighting the entropy of each partition by its size relative to the original set.

  7. Example: big, red, circle: + small, red, circle: + small, red, square: ­ big, blue, circle: ­ Split on size: big: 1+, 1-, E = 1 small: 1+, 1-, E = 1 gain = 1 - ((.5)1 + (.5)1) = 0 Split on color: red: 2+, 1-, E = 0.918 blue: 0+, 1-, E = 0 gain = 1 - ((.75)0.918 + (.25)0) = 0.311 Split on shape: circle: 2+, 1-, E = 0.918 square: 0+, 1-, E = 0 gain = 1 - ((.75)0.918 + (.25)0) = 0.311 Information Gain Example

  8. Hypothesis Space in Decision Tree Induction • Conducts a search of the space of decision trees which can represent all possible discrete functions. • Creates a single discrete hypothesis consistent with the data, so there is no way to provide confidences or create useful queries.

  9. Algorithm Characteristics • Performs hill­climbing search so may find a locally optimal solution. Guaranteed to find a tree that fits any noise­free training set, but it may not be the smallest. • Performs batch learning. Bases each decision on a batch of examples and can terminate early to avoid fitting noisy data.

  10. Bias • Bias is for trees of minimal depth; however, greedy search introduces a complication that it may not find the minimal tree and positions features with high information gain high in the tree. • Implements a preference bias (search bias) as opposed to a restriction bias (language bias) like candidate­elimination.

  11. Simplicity • Occam's razor can be defended on the basis that there are relatively few simple hypotheses compared to complex ones, therefore, a simple hypothesis that is consistent with the data is less likely to be a statistical coincidence than finding a complex, consistent hypothesis. • However, • Simplicity is relative to the hypothesis language used. • This is an argument for any small hypothesis space and holds equally well for a small space of arcane complex hypotheses, e.g. decision trees with exactly 133 nodes where attributes along every branch are ordered alphabetically from root to leaf.

  12. Overfitting • Learning a tree that classifies the training data perfectly may not lead to the tree with the best generalization performance since • There may be noise in the training data that the tree is fitting. • The algorithm might be making some decisions toward the leaves of the tree that are based on very little data and may not reflect reliable trends in the data. • A hypothesis, h, is said to overfit the training data if there exists another hypothesis, h’, such that h has smaller error than h’ on the training data but h’ has smaller error on the test data than h.

  13. Overfitting and Noise • Category or attribute noise can cause overfitting. • Add noisy instance: • <<medium, green, circle>, +> (really ­) • Noise can also cause directly conflicting examples with same description and different class. Impossible to fit this data and must label leaf with majority category. • <<big, red, circle>, ­> (really +) • Conflicting examples can also arise if attributes are incomplete and inadequate to discriminate the categories.

  14. Avoiding Overfitting • Two basic approaches • Prepruning: Stop growing the tree at some point during construction when it is determined that there is not enough data to make reliable choices. • Postpruning: Grow the full tree and then remove nodes that seem to not have sufficient evidence.

  15. Evaluating Subtrees to Prune • Cross­validation: • Reserve some of the training data as a hold­out set (validation set, tuning set) to evaluate utility of subtrees. • Statistical testing: • Perform some statistical test on the training data to determine if any observed regularity can be dismissed as likely to to random chance. • Minimum Description Length (MDL): • Determine if the additional complexity of the hypothesis is less complex than just explicitly remembering any exceptions.

  16. Learning Theory • Theorems that characterize classes of learning problems or specific algorithms in terms of computational complexity or sample complexity, i.e. the number of training examples necessary or sufficient to learn hypotheses of a given accuracy. • Complexity of a learning problem depends on: • Size or expressiveness of the hypothesis space. • Accuracy to which target concept must be approximated. • Probability with which the learner must produce a successful hypothesis. • Manner in which training examples are presented, e.g. randomly or by query to an oracle.

  17. Types of Results • Learning in the limit: Is the learner guaranteed to converge to the correct hypothesis in the limit as the number of training examples increases indefinitely? • Sample Complexity: How many training examples are needed for a learner to construct (with high probability) a highly accurate concept? • Computational Complexity: How much computational resources (time and space) are needed for a learner to construct (with high probability) a highly accurate concept? • High sample complexity implies high computational complexity, since learner at least needs to read the input data. • Mistake Bound: Learning incrementally, how many training examples will the learner misclassify before constructing a highly accurate concept.

  18. Learning in the Limit • Given a continuous stream of examples where the learner predicts whether each one is a member of the concept or not and is then is told the correct answer, does the learner eventually converge to a correct concept and never make a mistake again? • No limit on the number of examples required or computational demands, but must eventually learn the concept exactly. • By simple enumeration, concepts from any known finite hypothesis space are learnable in the limit, although typically requires an exponential (or doubly exponential) number of examples and time. • Class of total recursive (Turing computable) functions is not learnable in the limit.

  19. Learning in the Limit vs.PAC Model • Learning in the limit model is too strong. • Requires learning correct exact concept • Learning in the limit model is too weak • Allows unlimited data and computational resources. • PAC Model • Only requires learning a Probably Approximately CorrectConcept: Learn a decent approximation most of the time. • Requires polynomial sample complexity and computational complexity.

  20. Cannot Learn Exact Conceptsfrom Limited Data, Only Approximations Positive Classifier Learner Negative Positive Negative Wrong! Right!

  21. Cannot Learn Even Approximate Conceptsfrom Pathological Training Sets Positive Classifier Learner Negative Positive Negative Wrong!

  22. PAC Learning • The only reasonable expectation of a learner is that with high probabilityit learns a close approximation to the target concept. • In the PAC model, we specify two small parameters, ε and δ, and require that with probability at least (1  δ) a system learn a concept with error at most ε.

  23. Formal Definition of PAC-Learnable • Consider a concept class C defined over an instance space X containing instances of length n, and a learner, L, using a hypothesis space, H. • Cis said to be PAC-learnableby L using Hiff for all cC, distributions D over X, 0<ε<0.5, 0<δ<0.5; learner L by sampling random examples from distribution D, will with probability at least 1 δ output a hypothesis hH such that errorD(h) ε, in time polynomial in 1/ε, 1/δ, n and size(c). • Example: • X: instances described by n binary features • C: conjunctive descriptions over these features • H: conjunctive descriptions over these features • L: most-specific conjunctive generalization algorithm (Find-S) • size(c): the number of literals in c (i.e. length of the conjunction).

  24. Issues of PAC Learnability • The computational limitation also imposes a polynomial constraint on the training set size, since a learner can process at most polynomial data in polynomial time. • How to prove PAC learnability: • First, prove sample complexity of learning C using H is polynomial. • Second, prove that the learner can train on a polynomial-sized data set in polynomial time. • To be PAC-learnable, there must be a hypothesis in H with arbitrarily small error for every concept in C, generally CH.

  25. Version Space • Bounds on generalizations of a set of examples

  26. Consistent Learners • A learner L using a hypothesis H and training data D is said to be a consistent learner if it always outputs a hypothesis with zero error on D whenever H contains such a hypothesis. • By definition, a consistent learner must produce a hypothesis in the version space for H given D. • Therefore, to bound the number of examples needed by a consistent learner, we just need to bound the number of examples needed to ensure that the version-space contains no hypotheses with unacceptably high error.

  27. ε-Exhausted Version Space • The version space, VSH,D, is said to be ε-exhaustediff every hypothesis in it has true error less than or equal to ε. • In other words, there are enough training examples to guarantee than any consistent hypothesis has error at most ε. • One can never be sure that the version-space is ε-exhausted, but one can bound the probability that it is not. • Theorem 7.1(Haussler, 1988): If the hypothesis space H is finite, and D is a sequence of m1 independent random examples for some target concept c, then for any 0 ε 1, the probability that the version space VSH,D is not ε-exhausted is less than or equal to: |H|e–εm

  28. Sample Complexity Analysis • Let δ be an upper bound on the probability of not exhausting the version space. So:

  29. Sample Complexity Result • Therefore, any consistent learner, given at least: examples will produce a result that is PAC. • Just need to determine the size of a hypothesis space to instantiate this result for learning specific classes of concepts. • This gives a sufficient number of examples for PAC learning, but not a necessary number. Several approximations like that used to bound the probability of a disjunction make this a gross over-estimate in practice.

  30. Sample Complexity of Conjunction Learning • Consider conjunctions over nboolean features. There are 3n of these since each feature can appear positively, appear negatively, or not appear in a given conjunction. Therefore |H|= 3n, so a sufficient number of examples to learn a PAC concept is: • Concrete examples: • δ=ε=0.05, n=10 gives 280 examples • δ=0.01, ε=0.05, n=10 gives 312 examples • δ=ε=0.01, n=10 gives 1,560 examples • δ=ε=0.01, n=50 gives 5,954 examples • Result holds for any consistent learner.

  31. Sample Complexity of LearningArbitrary Boolean Functions • Consider any boolean function over nboolean features such as the hypothesis space of DNF or decision trees. There are 22^n of these, so a sufficient number of examples to learn a PAC concept is: • Concrete examples: • δ=ε=0.05, n=10 gives 14,256 examples • δ=ε=0.05, n=20 gives 14,536,410 examples • δ=ε=0.05, n=50 gives 1.561x1016 examples

  32. COLT Conclusions • The PAC framework provides a theoretical framework for analyzing the effectiveness of learning algorithms. • The sample complexity for any consistent learner using some hypothesis space, H, can be determined from a measure of its expressiveness |H| or VC(H), quantifying bias and relating it to generalization. • If sample complexity is tractable, then the computational complexity of finding a consistent hypothesis in H governs its PAC learnability. • Constant factors are more important in sample complexity than in computational complexity, since our ability to gather data is generally not growing exponentially. • Experimental results suggest that theoretical sample complexity bounds over-estimate the number of training instances needed in practice since they are worst-case upper bounds.

  33. COLT Conclusions (cont) • Additional results produced for analyzing: • Learning with queries • Learning with noisy data • Average case sample complexity given assumptions about the data distribution. • Learning finite automata • Learning neural networks • Analyzing practical algorithms that use a preference bias is difficult. • Some effective practical algorithms motivated by theoretical results: • Winnow • Boosting • Support Vector Machines (SVM)

  34. Why Neural Networks?

  35. Why Neural Networks? • Analogy to biological systems, the best examples we have of robust learning systems. • Models of biological systems allowing us to understand how they learn and adapt. • Massive parallelism that allows for computational efficiency. • Graceful degradation due to distributed represent-ations that spread knowledge representation over large numbers of computational units. • Intelligent behavior is an emergent property from large numbers of simple units rather than resulting from explicit symbolically encoded rules.

  36. Neural Speed Constraints • Neuron “switching time” is on the order of milliseconds compared to nanoseconds for current transistors. • A factor of a million difference in speed. • However, biological systems can perform significant cognitive tasks (vision, language understanding) in seconds or tenths of seconds.

  37. What That Means • Therefore, there is only time for about a hundred serial steps needed to perform such tasks. • Even with limited abilties, current AI systems require orders of magnitude more serial steps. • Human brain has approximately 1011 neurons each connected on average to 104 others, therefore must exploit massive parallelism.

  38. Real Neurons • Cells forming the basis of neural tissue • Cell body • Dendrites • Axon • Syntaptic terminals • The electrical potential across the cell membrane exhibits spikes called action potentials. • Originating in the cell body, this spike travels down the axon and causes chemical neuro-transmitters to be released at syntaptic terminals. • This chemical difuses across the synapse into dendrites of neighboring cells.

  39. Real Neurons (cont) • Synapses can be excitory or inhibitory. • Size of synaptic terminal influences strength of connection. • Cells “add up” the incoming chemical messages from all neighboring cells and if the net positive influence exceeds a threshold, they “fire” and emit an action potential.

  40. Model Neuron(Linear Threshold Unit) • Neuron modelled by a unit (j) connected by weights, wji, to other units (i): • Net input to a unit is defined as: netj = S wji * oi • Output of a unit is a threshold function on the net input: • 1 if netj > Tj • 0 otherwise

  41. Neural Computation • McCollough and Pitts (1943) show how linear threshold units can be used to compute logical functions. • Can build basic logic gates • AND: Let all wji be (Tj /n)+e where n = number of inputs • OR: Let all wji be Tj+e • NOT: Let one input be a constant 1 with weight Tj+e and the input to be inverted have weight ­Tj

  42. Neural Computation (cont) • Can build arbitrary logic circuits, finite­state machines, and computers given these basis gates. • Given negated inputs, two layers of linear threshold units can specify any boolean function using a two­layer AND­OR network.

  43. Learning • Hebb (1949) suggested if two units are both active (firing) then the weight between them should increase: wji = wji + ojoi • h is a constant called the learning rate • Supported by physiological evidence

  44. Alternate Learning Rule • Rosenblatt (1959) suggested that if a target output value is provided for a single neuron with fixed inputs, can incrementally change weights to learn to produce these outputs using the perceptron learning rule. • Assumes binary valued input/outputs • Assumes a single linear threshold unit. • Assumes input features are detected by fixed networks.

  45. Perceptron Learning Rule • If the target output for output unitj is tj wji = wji + h(tj - oj)oi • Equivalent to the intuitive rules: • If output is correct, don't change the weights • If output is low (oj = 0, tj =1), increment weights for all inputs which are 1. • If output is high (oj = 1, tj =0), decrement weights for all inputs which are 1. • Must also adjust threshold: Tj = Tj + h(tj - oj) • or equivalently assume there is a weight wj0 = -Tj for an extra input unit 0 that has constant output o0 =1 and that the threshold is always 0.

  46. Perceptron Learning Algorithm • Repeatedly iterate through examples adjusting weights according to the perceptron learning rule until all outputs are correct Initialize the weights to all zero (or randomly) Until outputs for all training examples are correct For each training example, e, do Compute the current output oj Compare it to the target tj and update the weights according to the perceptron learning rule.

  47. Algorithm Notes • Each execution of the outer loop is called an epoch. • If the output is considered as concept membership and inputs as binary input features, then easily applied to concept learning problems. • For multiple category problems, learn a separate perceptron for each category and assign to the class whose perceptron most exceeds its threshold. • When will this algorithm terminate (converge) ??

  48. Representational Limitations • Perceptrons can only represent linear threshold functions and can therefore only learn data which is linearly separable (positive and negative examples are separable by a hyperplane in n­dimensional space) • Cannot represent exclusive­or (xor)

  49. Perceptron Learnability • System obviously cannot learn what it cannot represent. • Minsky and Papert(1969) demonstrated that many functions like parity (n­input generalization of xor) could not be represented. • In visual pattern recognition, assumed that input features are local and extract feature within a fixed radius. In which case no input features support learning • Symmetry • Connectivity • These limitations discouraged subsequent research on neural networks.

  50. Perceptron Convergence and Cycling Theorems • Perceptron Convergence Theorem: If there are a set of weights that are consistent with the training data (i.e. the data is linearly separable), the perceptron learning algorithm will converge (Minsky & Papert, 1969). • Perceptron Cycling Theorem: If the training data is not linearly separable, the Perceptron learning algorithm will eventually repeat the same set of weights and threshold at the end of some epoch and therefore enter an infinite loop.

More Related