Presentation is loading. Please wait.

Presentation is loading. Please wait.

An Introduction to Boosting Yoav Freund Banter Inc.

Similar presentations


Presentation on theme: "An Introduction to Boosting Yoav Freund Banter Inc."— Presentation transcript:

1

2 An Introduction to Boosting Yoav Freund Banter Inc.

3 Plan of talk Generative vs. non-generative modeling Boosting Alternating decision trees Boosting and over-fitting Applications

4 Toy Example Computer receives telephone call Measures Pitch of voice Decides gender of caller Human Voice Male Female

5 Generative modeling Voice Pitch Probability mean1 var1 mean2 var2

6 Discriminative approach Voice Pitch No. of mistakes

7 Ill-behaved data Voice Pitch Probability mean1mean2 No. of mistakes

8 Traditional Statistics vs. Machine Learning Data Estimated world state Predictions Actions Statistics Decision Theory Machine Learning

9 ModelGenerativeDiscriminative GoalProbability estimates Classification rule Performance measure LikelihoodMisclassification rate Mismatch problems OutliersMisclassifications Comparison of methodologies

10

11 A weak learner weak learner A weak rule h Weighted training set (x1,y1,w1),(x2,y2,w2) … (xn,yn,wn) instances x1,x2,x3,…,xn h labels y1,y2,y3,…,yn The weak requirement: Feature vector Binary label Non-negative weights sum to 1

12 The boosting process weak learner h1 (x1,y1,1/n), … (xn,yn,1/n) weak learner h2 (x1,y1,w1), … (xn,yn,wn) h3 (x1,y1,w1), … (xn,yn,wn) h4 (x1,y1,w1), … (xn,yn,wn) h5 (x1,y1,w1), … (xn,yn,wn) h6 (x1,y1,w1), … (xn,yn,wn) h7 (x1,y1,w1), … (xn,yn,wn) h8 (x1,y1,w1), … (xn,yn,wn) h9 (x1,y1,w1), … (xn,yn,wn) hT (x1,y1,w1), … (xn,yn,wn) Final rule: Sign [ ] h1   h2   hT  

13 Adaboost Binary labels y = -1,+1 margin(x,y) = y [  t  t  h t (x)] P(x,y) = (1/Z) exp (-margin(x,y)) Given h t, we choose  t to minimize  (x,y) exp (-margin(x,y))

14 Main property of adaboost If advantages of weak rules over random guessing are:      T then in-sample error of final rule is at most (w.r.t. the initial weights)

15 A demo www.cs.huji.ac.il/~yoavf/adabooost

16 Adaboost as gradient descent Discriminator class: a linear discriminator in the space of “weak hypotheses” Original goal: find hyper plane with smallest number of mistakes –Known to be an NP-hard problem (no algorithm that runs in time polynomial in d, where d is the dimension of the space) Computational method: Use exponential loss as a surrogate, perform gradient descent.

17 Margins view Prediction = + - + + + + + + - - - - - - - w Correct Mistakes Project Margin Cumulative # examples MistakesCorrect Margin =

18 Adaboost et al. Loss Correct Margin Mistakes Brownboost Logitboost Adaboost = 0-1 loss

19 One coordinate at a time Adaboost performs gradient descent on exponential loss Adds one coordinate (“weak learner”) at each iteration. Weak learning in binary classification = slightly better than random guessing. Weak learning in regression – unclear. Uses example-weights to communicate the gradient direction to the weak learner Solves a computational problem

20 What is a good weak learner? The set of weak rules (features) should be flexible enough to be (weakly) correlated with most conceivable relations between feature vector and label. Small enough to allow exhaustive search for the minimal weighted training error. Small enough to avoid over-fitting. Should be able to calculate predicted label very efficiently. Rules can be “specialists” – predict only on a small subset of the input space and abstain from predicting on the rest (output 0).

21 Alternating Trees Joint work with Llew Mason

22 Decision Trees X>3 Y>5 +1 no yes no X Y 3 5 +1

23 -0.2 Decision tree as a sum X Y -0.2 Y>5 +0.2-0.3 yes no X>3 -0.1 no yes +0.1 -0.1 +0.2 -0.3 +1 sign

24 An alternating decision tree X Y +0.1-0.1 +0.2 -0.3 sign -0.2 Y>5 +0.2-0.3 yes no X>3 -0.1 no yes +0.1 +0.7 Y<1 0.0 no yes +0.7 +1 +1

25 Example: Medical Diagnostics Cleve dataset from UC Irvine database. Heart disease diagnostics (+1=healthy,-1=sick) 13 features from tests (real valued and discrete). 303 instances.

26 Adtree for Cleveland heart-disease diagnostics problem

27 Cross-validated accuracy Learning algorithm Number of splits Average test error Test error variance ADtree617.0%0.6% C5.02727.2%0.5% C5.0 + boosting 44620.2%0.5% Boost Stumps 1616.5%0.8%

28

29 Curious phenomenon Boosting decision trees Using 2,000,000 parameters

30 Explanation using margins Margin 0-1 loss

31 Explanation using margins Margin 0-1 loss No examples with small margins!!

32 Experimental Evidence

33 Theorem For any convex combination and any threshold Probability of mistake Fraction of training example with small margin Size of training sample VC dimension of weak rules No dependence on number of weak rules of weak rules that are combined!!! Schapire, Freund, Bartlett & Lee Annals of stat. 98

34 Suggested optimization problem Margin

35 Idea of Proof

36

37 Applications of Boosting Academic research Applied research Commercial deployment

38 Academic research DatabaseOtherBoosting Error reduction Cleveland27.2 (DT)16.539% Promoters22.0 (DT)11.846% Letter13.8 (DT)3.574% Reuters 45.8, 6.0, 9.82.95~60% Reuters 811.3, 12.1, 13.47.4~40% % test error rates

39 Applied research “AT&T, How may I help you?” Classify voice requests Voice -> text -> category Fourteen categories Area code, AT&T service, billing credit, calling card, collect, competitor, dial assistance, directory, how to dial, person to person, rate, third party, time charge,time Schapire, Singer, Gorin 98

40 Yes I’d like to place a collect call long distance please Operator I need to make a call but I need to bill it to my office Yes I’d like to place a call on my master card please I just called a number in Sioux city and I musta rang the wrong number because I got the wrong party and I would like to have that taken off my bill Examples  collect  third party  billing credit  calling card

41 Calling card Collect call Third party Weak Rule Category Word occurs Word does not occur Weak rules generated by “boostexter”

42 Results 7844 training examples – hand transcribed 1000 test examples –hand / machine transcribed Accuracy with 20% rejected –Machine transcribed: 75% –Hand transcribed: 90%

43 Commercial deployment Distinguish business/residence customers Using statistics from call-detail records Alternating decision trees –Similar to boosting decision trees, more flexible –Combines very simple rules –Can over-fit, cross validation used to stop Freund, Mason, Rogers, Pregibon, Cortes 2000

44 Massive datasets 260M calls / day 230M telephone numbers Label unknown for ~30% Hancock: software for computing statistical signatures. 100K randomly selected training examples, ~10K is enough Training takes about 2 hours. Generated classifier has to be both accurate and efficient

45 Alternating tree for “buizocity”

46 Alternating Tree (Detail)

47 Precision/recall graphs Score Accuracy

48 Business impact Increased coverage from 44% to 56% Accuracy ~94% Saved AT&T 15M$ in the year 2000 in operations costs and missed opportunities.

49 Summary Boosting is a computational method for learning accurate classifiers Resistance to over-fit explained by margins Underlying explanation – large “neighborhoods” of good classifiers Boosting has been applied successfully to a variety of classification problems

50 Come talk with me! Yfreund@banter.com http://www.cs.huji.ac.il/~yoavf


Download ppt "An Introduction to Boosting Yoav Freund Banter Inc."

Similar presentations


Ads by Google