SlideShare a Scribd company logo
Part II 	Boosting and Tree-structured 	ClassifierTae-Kyun Kim
The classification speed is not just for time-efficiency but good accuracy
Object Detection by a Cascade of ClassifiersICCV09 Tutorial Tae-Kyun Kim University of Cambridge3Pictures from Romdhani et al. ICCV01
Object Tracking by Fast (Re-) Detection4Search regionFrom Time t to t+1Previous object locationDetection againOnline discriminative feature selection [Collins et al 03], Ensemble tracking [Avidan 07]ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Semantic SegmentationRequiring pixel-wise classification5ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Structure of this talkSecond halfUnified Boosting frameworkTree-structured classifiersMCBoostSpeeding upSuper treeComparison6First half
Introduction to Boosting
Bagging/RF
Adaboost
Robust real-time object detector
Boosting as a tree-structured classifierICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Things not coveredFast Training (e.g. Pham and Cham ICCV07)Randomised learning for Boosting (Rahimi et al NIPS 08)Variations such as Real valued AdaBoost (Freund and Schapire 95)GentleBoost etc by FriedmanEtc.7ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Introduction to Boosting Classifiers
Introduction to Boosting[Meir et al 03, Schapire 03] The underlying idea is to combine simple “rules”to form an ensemble such that the performance of the single ensemble member is improved, i.e. “boosted” .The strong classifier isA brief historyPAC (Prob. Approx. Correct) learning (Valiant 1984, Kearns and Valiant 1994): learners, each performing slightly better than random, can be combined to form a good hypothesis.Schapire (1990) first provided a polynomial time algorithm and applied to a OCR task, relying on neural networks as base learners.: a set of hypotheses: weights9ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
A brief history (continued)AdaBoost(Adaptive Boosting) is most common (Freund and Schapire 94). Lots of variations are formalised in an unified gradient descent procedure (Mason et al 00) .Grove et al (98) have shown overfitting effects on high noise data sets. New types have emerged for e.g. Regression (Duffy et al 00), multi-class (Allwein et al 2000), unsupervised learning (Ratsch et al 00). Real-time object detector of Viola and Jones (01) is a landmark in CV.10ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
It is to estimate a function  f: X->Y , using input-output training data pairs generated independently at random from an unknown prob. dist. P(x,y) 	such that f will correctly predict unseen examples (x,y). Soft classifier takes  Y=R , assigning the label according to sign(f(x)).     The risk (or generalisation error) is 	where λ is a loss ftn. E.g. Formalisation11ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Formalisation(continued)Empirical risk is minimisedWhen N goes to an infinity, Occam’s razor: A “simple function” that explains most of data is preferable to a complex one which fits the data very well.Ensemble Learning - Bagging/Boosting12ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Bagging (Bootstrap AGGregatING)BootstrapFor each set, randomly draw examples from the uniform dist. allowing duplication and missing.Ensemble classifier 		        are chosen on T bootstrap sets.                       .More theory on bias/variance [Geurts et al 06]or majority votingMachine Learning Basics: 3. Ensemble Learning13ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
14BaggingLSLS1LS2LSTtree t1tree tTtree t2……xy2(x)y1(x)yT(x)y(x)In classification:               = the majority class in {         ,…,         } y1(x)yT(x)ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Randomized Decision Forest [Breiman 01, Geurts et al 06]Forest is an ensemble of random decision treesClassification is15vvtnfn(v) >tree t1tree tT……category cfeature vector 	v
split functions 	fn(v)
thresholds 	tn
Classifications	Pn(c)category cICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Randomized Tree Learning16left splitright splitFeatures f(v)chosen from a random feature pool f2FThresholds t chosen in rangeChoose f and t to maximize gain in informationICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Random Forest – SummaryProsGeneralization through bagging (random samples) & randomised tree learning (random features)Very fastclassificationInherently multi-classSimpletrainingConsInconsistencyDifficulty for adaptation17ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
BoostingIteratively reweighting training samples.
Higher weights to previously misclassified samples.181 round2 rounds3 rounds4 rounds5 rounds50 roundsICCV09 Tutorial Tae-Kyun Kim University of Cambridge
19Boosting TreesLSLS1LS2LS3tree t1tree tTtree t2……xy2(x)y1(x)yT(x)y(x)In classification:               = the majority class in {         ,…,         } 				according to the weights y1(x)yT(x)ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Input/output:				  Init:For t=1 to TLearn ht that minimises Set the hypothesis weightUpdate the sample weightsBreak if  AdaBoost[Freund and Schapire 04] 20ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Existence of weak learnersDefinition of a baseline learnerData weights:SetBaseline classifier: 			  for all xError is at most ½.Each weak learner in Boosting is demanded s.t. 	-> Error of the composite hypothesis goes to zero as boosting rounds increase [Duffy et al 00].XOR problems (Matlab demo) 21ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Does AdaBoost generalize?Margins in AdaBoostMaximizing margins in AdaBoostUpper boundsEtcTutorials By JiriMatas (www.robots.ox.ac.uk/~az/lectures/cv/adaboost_matas.pdf)By Derek Hoiem(http://www.cs.uiuc.edu/homes/dhoiem/)22ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Multiple classifier system
Mixture of Experts [Jordan, Jacobs 94]Gating network encourages specialization (local experts) instead of cooperation24Gating ftny1(x)Expert 1g1(x)y2(x)Expert 2Input xoutput…Sg2(x)yL(x)Expert LgL(x)Gating NetworkICCV09 Tutorial Tae-Kyun Kim University of Cambridge
25Ensemble learning: Boosting and Bagging constantCooperation instead of specializationy1(x)Expert 1g1y2(x)Expert 2Input xoutputg2S…yL(x)gLExpert LICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Robust real-time object detector
Boosting Simple Features [Viola and Jones CVPR 01]Adaboost classificationWeak classifiers: Haar-basis like functions (45,396 in total)27Strong classifierWeak classifierICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Boosting Simple Features [Viola and Jones CVPR 01]Integral imageA value at (x,y) is the sum of the pixel values above and to the left of (x,y).The sum of original image values within the rectangle can be computed: Sum = A-B-C+D28ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Boosting as a Tree-structured Classifier
Boosting	(very shallow network)	   The strong classifier H as boosted decision stumps has a flat structureCf. Decision “ferns” has been shown to outperform “trees” [Zisserman et al, 07] [Fua et al, 07]30c0 c1c0 c1c0 c1c0 c1c0 c1c0 c1ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Boosting -continuedGood generalisation by a flat structureFast (slower than RF) classificationGreedy optimisationA strong boosting classifierBoosting Cascade [viola & Jones 04], Boosting chain [Xiao et al]
Very unbalanced tree
Speeds up for unbalanced binary problems
Hard to design31ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
32BaggingRandom ferns?Bagged boosting classifiersRandom forest?Boosting decision stumpsA decision stumpBoostingDecision treeBoosted decision treesTree hierarchyInspired by Yin, Crinimisi CVPR07ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
BREAK !!
Unified Boosting Framework
AnyBoost : an unified framework[Mason et al 00]Most boosting algorithms have in common that they iteratively update sample weights and select the next hypothesis based on the weighted samples.Input: 		     ,Loss ftn  		    ,  Output: Init: For t=1 to TFind       that minimises the weighted errorSet Update35ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
AnyBoost an exampleLoss ftn:Weight samples:36ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
AnyBoost related37Noisy-OR boosting for multiple instance learning [Viola et al NIPS06]Multi-component boosting [Dollar et al ECCV08]MP boosting [Babenko et al ECCVW08]MCBoost [Kim and Cipolla NIPS08]ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Tree-structured Classifiers
Multi-view and multi-category object detectionImages exhibit multi-modality.A single boosting classifier is not sufficient.Manual labeling sub-categories.39ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Multiclass object detection [Torralba et al PAMI 07]Learning multiple boosting classifiers by sharing featuresTree structure speeds up the classification40ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
41Multiclass object detection [Torralba et al PAMI 07]ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
42Multiclass object detection [Torralba et al PAMI 07]ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
ClusterBoost[Wu et al ICCV07]AlgorithmStart with one sub-categorySelect a feature per branch by BoostingDivide the branch if the feature is too weak by clustering on the feature valueContinue to grow while updating the weak-learners of parent nodesCf. VBT [Huang et al ICCV05],PBT [Tu ICCV05]43Feature sharing←Splitting←SplittingICCV09 Tutorial Tae-Kyun Kim University of Cambridge
ClusterBoost result44ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
AdaTree (Grossmann CVPRW04) Result451% Noise in data10% Noise in data0.50.40.3Error0.20.100       		      90Boosting round0.50.40.3Error0.20.100       		      90Mean computation costICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Boosting for XOR- MCBoost [T-K Kim, R Cipolla NIPS 08]
ProblemFace cluster 1Face cluster 2K-means clusteringMCBoost47ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
MCBoost: Multiple Strong Classifier BoostingObjective ftn:The joint prob. as a Noisy-OR:	whereBy AnyBoost Framework [Mason et al. 00]For t=1 to TFor k=1 to KUpdate sample weights48ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Toy XOR classification problemDiscriminative clustering positive samples.It doesn’t partition an input space.49ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Toy XOR classification problemclassifier1classifier2classifier31.21.11.00.90.80.7Weaklearner weight0.60.50.40.30.210       20       30Boosting roundMatlab demo50ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
ExperimentsINRIA pedestrian data set containing 1207 pedestrian images and 11466 random images.PIE face data set involving 1800 face images and 14616 random images. A total number of 21780 simple rectangle features. Random images + simple featuresImage cluster centersPedestrian imagesK=5Face imagesK=351ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Pedestrian detection by MCBoost[Wojek, Walk, Schiele et al CVPR09]52TUD Brussels onboard datasetICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Pedestrian detection by MCBoost[Wojek, Walk, Schiele et al CVPR09]1.0recall0.00.0       		     		     1.01-precision53ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
54ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Speeding up
A sequential structure of varying lengthFloatBoost [Li et al PAMI04]A backtrack mechanism deleting non-effective weak-learners at each round.WaldBoost[Sochman and Matas CVPR05]Sequential probability ratio test for the shortest set of weak-learners for the given error rate.56Classify x as + and exitClassify x as - and exitICCV09 Tutorial Tae-Kyun Kim University of Cambridge
vMaking a shallow network deep- Super tree [Kim, Budvytis, Cipolla, 09]v
Converting a boosting classifier to a decision treeMany short paths for speeding upPreserving (smooth) decision regions for good generalisation58Decision treeBoostingICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Converting a boosting classifier to a decision treeMany short paths for speeding upPreserving (smooth) decision regions for good generalisation5928162631175 times speed up11342BoostingSuper treeICCV09 Tutorial Tae-Kyun Kim University of Cambridge
ICCV09 Tutorial Tae-Kyun Kim University of Cambridge60
Boolean optimisation formulationFor a learnt boosting classifier	split a data space into 2mprimitive regions by m binary weak-learners.Code regions Rii=1,..., 2m by boolean expressions.61W11R60R5R2R10W21R4R7R310W3ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Boolean expression minimizationOptimally joining the regions of the same class label or don’t care label.A short tree built from the minimised boolean expression.62W11R60W1R5R2R1001W21R41R7R3R5,R6,R7,R81010W30W3W2R1,R21010R3R4W1W2W3 v W1W2W3 v W1W2W3 vW1W2W3W1 v W1W2W3ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
Boolean optimisation formulationOptimally short tree defined with average expected path length of data points 	where p(Ri)=Mi/M and the tree must duplicate the Boosting decision regions.63Solutions
Boolean expression minimization
Growing a tree from the decision regions

More Related Content

PPT
iccv2009 tutorial: boosting and random forest - part III
PDF
Georgetown B-school Talk 2021
PDF
Search relevance
PDF
Slides: Simplifying Gaussian Mixture Models Via Entropic Quantization (EUSIPC...
PDF
Particle filtering in Computer Vision (2003)
PDF
Structured Interactive Scores with formal semantics
PPT
CS221: HMM and Particle Filters
PDF
RSS 2012 - ipdforest
iccv2009 tutorial: boosting and random forest - part III
Georgetown B-school Talk 2021
Search relevance
Slides: Simplifying Gaussian Mixture Models Via Entropic Quantization (EUSIPC...
Particle filtering in Computer Vision (2003)
Structured Interactive Scores with formal semantics
CS221: HMM and Particle Filters
RSS 2012 - ipdforest

Viewers also liked (20)

PDF
Cvpr2010 open source vision software, intro and training part-iii introduct...
PDF
Skiena algorithm 2007 lecture13 minimum spanning trees
PPTX
iccv2009 tutorial: boosting and random forest - part I
PDF
Fcv cross durand
PPT
Fcv learn yu
PPTX
06 cv mil_learning_and_inference
PPTX
20 cv mil_models_for_words
PPTX
CVPR2010: modeling mutual context of object and human pose in human-object in...
PDF
Fcv bio cv_simoncelli
PDF
Cvpr2010 open source vision software, intro and training part viii point clou...
PPTX
05 cv mil_normal_distribution
PPTX
03 cv mil_probability_distributions
PDF
Skiena algorithm 2007 lecture09 linear sorting
PDF
Ahuntsic appuie Les Jardins Millen (SOM)
PPT
PréSentation Citoyens 7 Dec 09 Fc
PDF
Fcv hum mach_geman
PDF
Skiena algorithm 2007 lecture20 satisfiability
PDF
Particle Filters and Applications in Computer Vision
PPT
Making sense of Urodynamic studies for women with Urinary Incontinence and ...
PDF
Skiena algorithm 2007 lecture17 edit distance
Cvpr2010 open source vision software, intro and training part-iii introduct...
Skiena algorithm 2007 lecture13 minimum spanning trees
iccv2009 tutorial: boosting and random forest - part I
Fcv cross durand
Fcv learn yu
06 cv mil_learning_and_inference
20 cv mil_models_for_words
CVPR2010: modeling mutual context of object and human pose in human-object in...
Fcv bio cv_simoncelli
Cvpr2010 open source vision software, intro and training part viii point clou...
05 cv mil_normal_distribution
03 cv mil_probability_distributions
Skiena algorithm 2007 lecture09 linear sorting
Ahuntsic appuie Les Jardins Millen (SOM)
PréSentation Citoyens 7 Dec 09 Fc
Fcv hum mach_geman
Skiena algorithm 2007 lecture20 satisfiability
Particle Filters and Applications in Computer Vision
Making sense of Urodynamic studies for women with Urinary Incontinence and ...
Skiena algorithm 2007 lecture17 edit distance
Ad

Similar to iccv2009 tutorial: boosting and random forest - part II (20)

PDF
Decision Forests and discriminant analysis
PPT
An Introduction to boosting
PDF
MLHEP 2015: Introductory Lecture #3
PDF
Boosting Algorithms Omar Odibat
PDF
To bag, or to boost? A question of balance
PDF
BaggingBoosting.pdf
PDF
DMTM Lecture 10 Classification ensembles
PPT
Download It
PDF
C3.5.1
PPT
Ensemble Learning in Machine Learning.ppt
PPT
Ensembles_Unit_IV.ppt
PDF
DMTM 2015 - 15 Classification Ensembles
PDF
dm1.pdf
PPTX
Gradient Boosted trees
PPTX
Comparison Study of Decision Tree Ensembles for Regression
PPT
Ensemble Learning bagging, boosting and stacking
PPT
Ensemble Learning bagging and boosting in ML
PPT
Ensemble_Learning.ppt
PPT
Ensemble_Learning_AND_ITS_TECHNIQUES.ppt
PPTX
Ml8 boosting and-stacking
Decision Forests and discriminant analysis
An Introduction to boosting
MLHEP 2015: Introductory Lecture #3
Boosting Algorithms Omar Odibat
To bag, or to boost? A question of balance
BaggingBoosting.pdf
DMTM Lecture 10 Classification ensembles
Download It
C3.5.1
Ensemble Learning in Machine Learning.ppt
Ensembles_Unit_IV.ppt
DMTM 2015 - 15 Classification Ensembles
dm1.pdf
Gradient Boosted trees
Comparison Study of Decision Tree Ensembles for Regression
Ensemble Learning bagging, boosting and stacking
Ensemble Learning bagging and boosting in ML
Ensemble_Learning.ppt
Ensemble_Learning_AND_ITS_TECHNIQUES.ppt
Ml8 boosting and-stacking
Ad

More from zukun (20)

PDF
My lyn tutorial 2009
PDF
ETHZ CV2012: Tutorial openCV
PDF
ETHZ CV2012: Information
PDF
Siwei lyu: natural image statistics
PDF
Lecture9 camera calibration
PDF
Brunelli 2008: template matching techniques in computer vision
PDF
Modern features-part-4-evaluation
PDF
Modern features-part-3-software
PDF
Modern features-part-2-descriptors
PDF
Modern features-part-1-detectors
PDF
Modern features-part-0-intro
PDF
Lecture 02 internet video search
PDF
Lecture 01 internet video search
PDF
Lecture 03 internet video search
PDF
Icml2012 tutorial representation_learning
PPT
Advances in discrete energy minimisation for computer vision
PDF
Gephi tutorial: quick start
PDF
EM algorithm and its application in probabilistic latent semantic analysis
PDF
Object recognition with pictorial structures
PDF
Iccv2011 learning spatiotemporal graphs of human activities
My lyn tutorial 2009
ETHZ CV2012: Tutorial openCV
ETHZ CV2012: Information
Siwei lyu: natural image statistics
Lecture9 camera calibration
Brunelli 2008: template matching techniques in computer vision
Modern features-part-4-evaluation
Modern features-part-3-software
Modern features-part-2-descriptors
Modern features-part-1-detectors
Modern features-part-0-intro
Lecture 02 internet video search
Lecture 01 internet video search
Lecture 03 internet video search
Icml2012 tutorial representation_learning
Advances in discrete energy minimisation for computer vision
Gephi tutorial: quick start
EM algorithm and its application in probabilistic latent semantic analysis
Object recognition with pictorial structures
Iccv2011 learning spatiotemporal graphs of human activities

Recently uploaded (20)

PPTX
Cell Types and Its function , kingdom of life
PPTX
Final Presentation General Medicine 03-08-2024.pptx
PDF
OBE - B.A.(HON'S) IN INTERIOR ARCHITECTURE -Ar.MOHIUDDIN.pdf
PPTX
Chinmaya Tiranga Azadi Quiz (Class 7-8 )
PPTX
202450812 BayCHI UCSC-SV 20250812 v17.pptx
PPTX
UV-Visible spectroscopy..pptx UV-Visible Spectroscopy – Electronic Transition...
PDF
Empowerment Technology for Senior High School Guide
PDF
Hazard Identification & Risk Assessment .pdf
PDF
Classroom Observation Tools for Teachers
PDF
GENETICS IN BIOLOGY IN SECONDARY LEVEL FORM 3
PDF
What if we spent less time fighting change, and more time building what’s rig...
PPTX
Lesson notes of climatology university.
PPTX
Introduction to Building Materials
PPTX
Introduction-to-Literarature-and-Literary-Studies-week-Prelim-coverage.pptx
PDF
Computing-Curriculum for Schools in Ghana
PDF
Black Hat USA 2025 - Micro ICS Summit - ICS/OT Threat Landscape
PDF
LDMMIA Reiki Yoga Finals Review Spring Summer
PPTX
Final Presentation General Medicine 03-08-2024.pptx
PPTX
Tissue processing ( HISTOPATHOLOGICAL TECHNIQUE
PDF
RTP_AR_KS1_Tutor's Guide_English [FOR REPRODUCTION].pdf
Cell Types and Its function , kingdom of life
Final Presentation General Medicine 03-08-2024.pptx
OBE - B.A.(HON'S) IN INTERIOR ARCHITECTURE -Ar.MOHIUDDIN.pdf
Chinmaya Tiranga Azadi Quiz (Class 7-8 )
202450812 BayCHI UCSC-SV 20250812 v17.pptx
UV-Visible spectroscopy..pptx UV-Visible Spectroscopy – Electronic Transition...
Empowerment Technology for Senior High School Guide
Hazard Identification & Risk Assessment .pdf
Classroom Observation Tools for Teachers
GENETICS IN BIOLOGY IN SECONDARY LEVEL FORM 3
What if we spent less time fighting change, and more time building what’s rig...
Lesson notes of climatology university.
Introduction to Building Materials
Introduction-to-Literarature-and-Literary-Studies-week-Prelim-coverage.pptx
Computing-Curriculum for Schools in Ghana
Black Hat USA 2025 - Micro ICS Summit - ICS/OT Threat Landscape
LDMMIA Reiki Yoga Finals Review Spring Summer
Final Presentation General Medicine 03-08-2024.pptx
Tissue processing ( HISTOPATHOLOGICAL TECHNIQUE
RTP_AR_KS1_Tutor's Guide_English [FOR REPRODUCTION].pdf

iccv2009 tutorial: boosting and random forest - part II

  • 1. Part II Boosting and Tree-structured ClassifierTae-Kyun Kim
  • 2. The classification speed is not just for time-efficiency but good accuracy
  • 3. Object Detection by a Cascade of ClassifiersICCV09 Tutorial Tae-Kyun Kim University of Cambridge3Pictures from Romdhani et al. ICCV01
  • 4. Object Tracking by Fast (Re-) Detection4Search regionFrom Time t to t+1Previous object locationDetection againOnline discriminative feature selection [Collins et al 03], Ensemble tracking [Avidan 07]ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 5. Semantic SegmentationRequiring pixel-wise classification5ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 6. Structure of this talkSecond halfUnified Boosting frameworkTree-structured classifiersMCBoostSpeeding upSuper treeComparison6First half
  • 11. Boosting as a tree-structured classifierICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 12. Things not coveredFast Training (e.g. Pham and Cham ICCV07)Randomised learning for Boosting (Rahimi et al NIPS 08)Variations such as Real valued AdaBoost (Freund and Schapire 95)GentleBoost etc by FriedmanEtc.7ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 14. Introduction to Boosting[Meir et al 03, Schapire 03] The underlying idea is to combine simple “rules”to form an ensemble such that the performance of the single ensemble member is improved, i.e. “boosted” .The strong classifier isA brief historyPAC (Prob. Approx. Correct) learning (Valiant 1984, Kearns and Valiant 1994): learners, each performing slightly better than random, can be combined to form a good hypothesis.Schapire (1990) first provided a polynomial time algorithm and applied to a OCR task, relying on neural networks as base learners.: a set of hypotheses: weights9ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 15. A brief history (continued)AdaBoost(Adaptive Boosting) is most common (Freund and Schapire 94). Lots of variations are formalised in an unified gradient descent procedure (Mason et al 00) .Grove et al (98) have shown overfitting effects on high noise data sets. New types have emerged for e.g. Regression (Duffy et al 00), multi-class (Allwein et al 2000), unsupervised learning (Ratsch et al 00). Real-time object detector of Viola and Jones (01) is a landmark in CV.10ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 16. It is to estimate a function f: X->Y , using input-output training data pairs generated independently at random from an unknown prob. dist. P(x,y) such that f will correctly predict unseen examples (x,y). Soft classifier takes Y=R , assigning the label according to sign(f(x)). The risk (or generalisation error) is where λ is a loss ftn. E.g. Formalisation11ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 17. Formalisation(continued)Empirical risk is minimisedWhen N goes to an infinity, Occam’s razor: A “simple function” that explains most of data is preferable to a complex one which fits the data very well.Ensemble Learning - Bagging/Boosting12ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 18. Bagging (Bootstrap AGGregatING)BootstrapFor each set, randomly draw examples from the uniform dist. allowing duplication and missing.Ensemble classifier are chosen on T bootstrap sets. .More theory on bias/variance [Geurts et al 06]or majority votingMachine Learning Basics: 3. Ensemble Learning13ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 19. 14BaggingLSLS1LS2LSTtree t1tree tTtree t2……xy2(x)y1(x)yT(x)y(x)In classification: = the majority class in { ,…, } y1(x)yT(x)ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 20. Randomized Decision Forest [Breiman 01, Geurts et al 06]Forest is an ensemble of random decision treesClassification is15vvtnfn(v) >tree t1tree tT……category cfeature vector v
  • 23. Classifications Pn(c)category cICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 24. Randomized Tree Learning16left splitright splitFeatures f(v)chosen from a random feature pool f2FThresholds t chosen in rangeChoose f and t to maximize gain in informationICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 25. Random Forest – SummaryProsGeneralization through bagging (random samples) & randomised tree learning (random features)Very fastclassificationInherently multi-classSimpletrainingConsInconsistencyDifficulty for adaptation17ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 27. Higher weights to previously misclassified samples.181 round2 rounds3 rounds4 rounds5 rounds50 roundsICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 28. 19Boosting TreesLSLS1LS2LS3tree t1tree tTtree t2……xy2(x)y1(x)yT(x)y(x)In classification: = the majority class in { ,…, } according to the weights y1(x)yT(x)ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 29. Input/output: Init:For t=1 to TLearn ht that minimises Set the hypothesis weightUpdate the sample weightsBreak if AdaBoost[Freund and Schapire 04] 20ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 30. Existence of weak learnersDefinition of a baseline learnerData weights:SetBaseline classifier: for all xError is at most ½.Each weak learner in Boosting is demanded s.t. -> Error of the composite hypothesis goes to zero as boosting rounds increase [Duffy et al 00].XOR problems (Matlab demo) 21ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 31. Does AdaBoost generalize?Margins in AdaBoostMaximizing margins in AdaBoostUpper boundsEtcTutorials By JiriMatas (www.robots.ox.ac.uk/~az/lectures/cv/adaboost_matas.pdf)By Derek Hoiem(http://www.cs.uiuc.edu/homes/dhoiem/)22ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 33. Mixture of Experts [Jordan, Jacobs 94]Gating network encourages specialization (local experts) instead of cooperation24Gating ftny1(x)Expert 1g1(x)y2(x)Expert 2Input xoutput…Sg2(x)yL(x)Expert LgL(x)Gating NetworkICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 34. 25Ensemble learning: Boosting and Bagging constantCooperation instead of specializationy1(x)Expert 1g1y2(x)Expert 2Input xoutputg2S…yL(x)gLExpert LICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 36. Boosting Simple Features [Viola and Jones CVPR 01]Adaboost classificationWeak classifiers: Haar-basis like functions (45,396 in total)27Strong classifierWeak classifierICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 37. Boosting Simple Features [Viola and Jones CVPR 01]Integral imageA value at (x,y) is the sum of the pixel values above and to the left of (x,y).The sum of original image values within the rectangle can be computed: Sum = A-B-C+D28ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 38. Boosting as a Tree-structured Classifier
  • 39. Boosting (very shallow network) The strong classifier H as boosted decision stumps has a flat structureCf. Decision “ferns” has been shown to outperform “trees” [Zisserman et al, 07] [Fua et al, 07]30c0 c1c0 c1c0 c1c0 c1c0 c1c0 c1ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 40. Boosting -continuedGood generalisation by a flat structureFast (slower than RF) classificationGreedy optimisationA strong boosting classifierBoosting Cascade [viola & Jones 04], Boosting chain [Xiao et al]
  • 42. Speeds up for unbalanced binary problems
  • 43. Hard to design31ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 44. 32BaggingRandom ferns?Bagged boosting classifiersRandom forest?Boosting decision stumpsA decision stumpBoostingDecision treeBoosted decision treesTree hierarchyInspired by Yin, Crinimisi CVPR07ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 47. AnyBoost : an unified framework[Mason et al 00]Most boosting algorithms have in common that they iteratively update sample weights and select the next hypothesis based on the weighted samples.Input: ,Loss ftn , Output: Init: For t=1 to TFind that minimises the weighted errorSet Update35ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 48. AnyBoost an exampleLoss ftn:Weight samples:36ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 49. AnyBoost related37Noisy-OR boosting for multiple instance learning [Viola et al NIPS06]Multi-component boosting [Dollar et al ECCV08]MP boosting [Babenko et al ECCVW08]MCBoost [Kim and Cipolla NIPS08]ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 51. Multi-view and multi-category object detectionImages exhibit multi-modality.A single boosting classifier is not sufficient.Manual labeling sub-categories.39ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 52. Multiclass object detection [Torralba et al PAMI 07]Learning multiple boosting classifiers by sharing featuresTree structure speeds up the classification40ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 53. 41Multiclass object detection [Torralba et al PAMI 07]ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 54. 42Multiclass object detection [Torralba et al PAMI 07]ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 55. ClusterBoost[Wu et al ICCV07]AlgorithmStart with one sub-categorySelect a feature per branch by BoostingDivide the branch if the feature is too weak by clustering on the feature valueContinue to grow while updating the weak-learners of parent nodesCf. VBT [Huang et al ICCV05],PBT [Tu ICCV05]43Feature sharing←Splitting←SplittingICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 56. ClusterBoost result44ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 57. AdaTree (Grossmann CVPRW04) Result451% Noise in data10% Noise in data0.50.40.3Error0.20.100 90Boosting round0.50.40.3Error0.20.100 90Mean computation costICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 58. Boosting for XOR- MCBoost [T-K Kim, R Cipolla NIPS 08]
  • 59. ProblemFace cluster 1Face cluster 2K-means clusteringMCBoost47ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 60. MCBoost: Multiple Strong Classifier BoostingObjective ftn:The joint prob. as a Noisy-OR: whereBy AnyBoost Framework [Mason et al. 00]For t=1 to TFor k=1 to KUpdate sample weights48ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 61. Toy XOR classification problemDiscriminative clustering positive samples.It doesn’t partition an input space.49ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 62. Toy XOR classification problemclassifier1classifier2classifier31.21.11.00.90.80.7Weaklearner weight0.60.50.40.30.210 20 30Boosting roundMatlab demo50ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 63. ExperimentsINRIA pedestrian data set containing 1207 pedestrian images and 11466 random images.PIE face data set involving 1800 face images and 14616 random images. A total number of 21780 simple rectangle features. Random images + simple featuresImage cluster centersPedestrian imagesK=5Face imagesK=351ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 64. Pedestrian detection by MCBoost[Wojek, Walk, Schiele et al CVPR09]52TUD Brussels onboard datasetICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 65. Pedestrian detection by MCBoost[Wojek, Walk, Schiele et al CVPR09]1.0recall0.00.0 1.01-precision53ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 66. 54ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 68. A sequential structure of varying lengthFloatBoost [Li et al PAMI04]A backtrack mechanism deleting non-effective weak-learners at each round.WaldBoost[Sochman and Matas CVPR05]Sequential probability ratio test for the shortest set of weak-learners for the given error rate.56Classify x as + and exitClassify x as - and exitICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 69. vMaking a shallow network deep- Super tree [Kim, Budvytis, Cipolla, 09]v
  • 70. Converting a boosting classifier to a decision treeMany short paths for speeding upPreserving (smooth) decision regions for good generalisation58Decision treeBoostingICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 71. Converting a boosting classifier to a decision treeMany short paths for speeding upPreserving (smooth) decision regions for good generalisation5928162631175 times speed up11342BoostingSuper treeICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 72. ICCV09 Tutorial Tae-Kyun Kim University of Cambridge60
  • 73. Boolean optimisation formulationFor a learnt boosting classifier split a data space into 2mprimitive regions by m binary weak-learners.Code regions Rii=1,..., 2m by boolean expressions.61W11R60R5R2R10W21R4R7R310W3ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 74. Boolean expression minimizationOptimally joining the regions of the same class label or don’t care label.A short tree built from the minimised boolean expression.62W11R60W1R5R2R1001W21R41R7R3R5,R6,R7,R81010W30W3W2R1,R21010R3R4W1W2W3 v W1W2W3 v W1W2W3 vW1W2W3W1 v W1W2W3ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 75. Boolean optimisation formulationOptimally short tree defined with average expected path length of data points where p(Ri)=Mi/M and the tree must duplicate the Boosting decision regions.63Solutions
  • 77. Growing a tree from the decision regions
  • 78. Extended region codingICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 79. Synthetic data exp1Examples generated from GMMs64ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 80. Face detection experiment65Total data points = 57499The proposed solution is about 3 to 5 times faster than boosting and 1.5 to 2.8 times faster than [Zhou 05], at the similar accuracy.ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 81. ST vs Random forestST is about 2 to 3 times faster than RF at similar accuracy66ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 82. Experiments with tracking and segmentation by ST67ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 83. More segmentation experiments by Boosting and RF
  • 84. MCBoost building class segmentationBuilding class: average class accuracy = 77% Ground TruthSegmentationGround TruthSegmentationICVSS09 Tae-Kyun Kim University of Cambridge69
  • 85. Segmentation by binary-class RFs70RoadNon-roadErrorBuildingNon-buildingErrorglobal : 74.50% average: 79.89% global: 88.33%, average: 87.26% CarNon-carErrorTree Non-treeErrorglobal: 77.46%, average: 80.45% global: 85.55 %, average: 85.24 % ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 86. Boosting for Segmentation SpatialBoost[Avidan ECCV06]AdaBoost with Spatial ReasoningTextonBoost[Shottonet al IJCV07]71ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 88. Comparisons in literatureIn motion segmentation [Yin, Crinimisi CVPR07],RF>GB(Boosting stumps)>=BT(Boosting trees) in accuracyRF=GB>BT in speed at their best accuracyIn face detection/recognition [Belle et al ICPR08],RF>AB (AdaBoost) at low false positive rate, AB>RF at high false positive rate, in face detection accuracyRF>AB in speedSVM>RF in face recognition73ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 89. 74BaggingRandom ferns?Bagged boosting classifiersRandom forest?Boosted decision stumpsA decision stumpBoostingDecision treeBoosted decision treesTree hierarchyInspired by Yin, Crinimisi CVPR07ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 90. Summary75ICCV09 Tutorial Tae-Kyun Kim University of Cambridge
  • 91. Thanks toBjorn StengerJamie ShottonGiovanni FarinellaIgnasBudvytisRoberto CipollaTom Woodley
  • 92. Thanks77ICCV09 Tutorial Tae-Kyun Kim University of Cambridge

Editor's Notes

  • #62: We formulate this by boolean optimisation problem.