Multivariate statistical methods and data mining in particle physics Lecture 4 (19 June, 2008)

Similar documents
Statistical Methods for LHC Physics

Multivariate statistical methods and data mining in particle physics

Advanced statistical methods for data analysis Lecture 1

Statistical Methods for Particle Physics Lecture 2: statistical tests, multivariate methods

Advanced statistical methods for data analysis Lecture 2

Jeff Howbert Introduction to Machine Learning Winter

Support Vector Machine (SVM) and Kernel Methods

Machine Learning Lecture 7

Support Vector Machine (SVM) and Kernel Methods

Support Vector Machine (SVM) & Kernel CE-717: Machine Learning Sharif University of Technology. M. Soleymani Fall 2012

Support Vector Machines. Introduction to Data Mining, 2 nd Edition by Tan, Steinbach, Karpatne, Kumar

FINAL: CS 6375 (Machine Learning) Fall 2014

Data Mining. Linear & nonlinear classifiers. Hamid Beigy. Sharif University of Technology. Fall 1396

Support Vector Machine (continued)

Machine Learning : Support Vector Machines

Kernel Methods and Support Vector Machines

Support Vector Machines Explained

Linear & nonlinear classifiers

CS145: INTRODUCTION TO DATA MINING

Statistical Methods in Particle Physics

Linear & nonlinear classifiers

ML (cont.): SUPPORT VECTOR MACHINES

Support Vector Machine (SVM) and Kernel Methods

Midterm Review CS 6375: Machine Learning. Vibhav Gogate The University of Texas at Dallas

Support Vector Machine & Its Applications

TDT4173 Machine Learning

Pattern Recognition 2018 Support Vector Machines

Statistical Methods for Particle Physics Lecture 2: multivariate methods

Frank C Porter and Ilya Narsky: Statistical Analysis Techniques in Particle Physics Chap. c /9/9 page 331 le-tex

Chapter 6: Classification

Midterm Review CS 7301: Advanced Machine Learning. Vibhav Gogate The University of Texas at Dallas

COMS 4771 Introduction to Machine Learning. Nakul Verma

Support Vector Machines II. CAP 5610: Machine Learning Instructor: Guo-Jun QI

Machine Learning Lecture 5

Non-Bayesian Classifiers Part II: Linear Discriminants and Support Vector Machines

Statistical Pattern Recognition

FINAL EXAM: FALL 2013 CS 6375 INSTRUCTOR: VIBHAV GOGATE

10/05/2016. Computational Methods for Data Analysis. Massimo Poesio SUPPORT VECTOR MACHINES. Support Vector Machines Linear classifiers

Machine Learning Support Vector Machines. Prof. Matteo Matteucci

Support'Vector'Machines. Machine(Learning(Spring(2018 March(5(2018 Kasthuri Kannan

Linear Classification and SVM. Dr. Xin Zhang

SUPPORT VECTOR MACHINE

Max Margin-Classifier

CS 484 Data Mining. Classification 7. Some slides are from Professor Padhraic Smyth at UC Irvine

CSE 417T: Introduction to Machine Learning. Final Review. Henry Chai 12/4/18

A Decision Stump. Decision Trees, cont. Boosting. Machine Learning 10701/15781 Carlos Guestrin Carnegie Mellon University. October 1 st, 2007

18.9 SUPPORT VECTOR MACHINES

Machine Learning Ensemble Learning I Hamid R. Rabiee Jafar Muhammadi, Alireza Ghasemi Spring /

Support Vector Machines and Kernel Methods

Artificial Intelligence Roman Barták

Neural networks and support vector machines

LINEAR CLASSIFICATION, PERCEPTRON, LOGISTIC REGRESSION, SVC, NAÏVE BAYES. Supervised Learning

MIRA, SVM, k-nn. Lirong Xia

Support Vector Machines. CSE 6363 Machine Learning Vassilis Athitsos Computer Science and Engineering Department University of Texas at Arlington

Support Vector Machines (SVM) in bioinformatics. Day 1: Introduction to SVM

Support Vector Machines

Support Vector Machines

What makes good ensemble? CS789: Machine Learning and Neural Network. Introduction. More on diversity

CSE 151 Machine Learning. Instructor: Kamalika Chaudhuri

Numerical Learning Algorithms

Voting (Ensemble Methods)

Lecture 10: Support Vector Machine and Large Margin Classifier

Data Mining: Concepts and Techniques. (3 rd ed.) Chapter 8. Chapter 8. Classification: Basic Concepts

Pattern Recognition and Machine Learning. Perceptrons and Support Vector machines

The exam is closed book, closed notes except your one-page (two sides) or two-page (one side) crib sheet.

Review: Support vector machines. Machine learning techniques and image analysis

Lecture 10: A brief introduction to Support Vector Machine

Linear vs Non-linear classifier. CS789: Machine Learning and Neural Network. Introduction

Machine Learning, Fall 2011: Homework 5

Learning with multiple models. Boosting.

(Kernels +) Support Vector Machines

Non-linear Support Vector Machines

Indirect Rule Learning: Support Vector Machines. Donglin Zeng, Department of Biostatistics, University of North Carolina

10-701/ Machine Learning - Midterm Exam, Fall 2010

SVMs, Duality and the Kernel Trick

Background. Adaptive Filters and Machine Learning. Bootstrap. Combining models. Boosting and Bagging. Poltayev Rassulzhan

Cheng Soon Ong & Christian Walder. Canberra February June 2018

Brief Introduction of Machine Learning Techniques for Content Analysis

Midterm: CS 6375 Spring 2015 Solutions

Support Vector Machines and Kernel Methods

Learning theory. Ensemble methods. Boosting. Boosting: history

Introduction to SVM and RVM

CS6375: Machine Learning Gautam Kunapuli. Support Vector Machines

A Tutorial on Support Vector Machine

Linear, threshold units. Linear Discriminant Functions and Support Vector Machines. Biometrics CSE 190 Lecture 11. X i : inputs W i : weights

Lecture 8. Instructor: Haipeng Luo

CS 6375 Machine Learning

Support Vector Machines

ECE662: Pattern Recognition and Decision Making Processes: HW TWO

CS798: Selected topics in Machine Learning

Machine learning comes from Bayesian decision theory in statistics. There we want to minimize the expected value of the loss function.

Lecture Notes on Support Vector Machine

Statistics and learning: Big Data

CS7267 MACHINE LEARNING

Introduction to Machine Learning Midterm Exam Solutions

Useful Equations for solving SVM questions

Brief Introduction to Machine Learning

Support Vector Machines

NONLINEAR CLASSIFICATION AND REGRESSION. J. Elder CSE 4404/5327 Introduction to Machine Learning and Pattern Recognition

Transcription:

Multivariate statistical methods and data mining in particle physics Lecture 4 (19 June, 2008) RHUL Physics www.pp.rhul.ac.uk/~cowan Academic Training Lectures CERN 16 19 June, 2008 1

Outline Statement of the problem Brief review of statistical formalism Some general considerations Multivariate classifiers: Linear discriminant function Neural networks Naive Bayes classifier Density estimation methods Decision trees Support Vector Machines Thursday start 2

Decision trees In a decision tree repeated cuts are made on a single variable until some stop criterion is reached. The decision as to which variable is used is based on best achieved separation. Iterate until stop criterion reached, based e.g. on purity and minimum number of events in a node. Classify resulting cut regions as signal or background based on the signal fraction above/below a specified value (e.g. ½) in the terminal nodes (leaves). Example by MiniBooNE experiment, B. Roe et al., NIM 543 (2005) 577 3

Separation measure Suppose the ith event has a weight wi. The purity at a given node is signal wi P= signal wi background wi Measure of s/b separation in a node can be taken as e.g. Gini=P 1 P Cross entropy = P ln P 1 P ln 1 P Misclassification error = 1 max (P, 1 P) These are maximum for P = 0.5 and zero for P = 0 or 1. Tend to give similar results in real examples; Gini index most common. 4

What variable to cut on The variable is found that provides the greatest increase in the separation measure (e.g., Gini) in the two daughter nodes relative to the parent. Continue splitting until the number of events in a node falls below a specified threshold (could be 1). Terminal nodes called leaves. The leaves are classified as signal or background depending on majority vote (or e.g. signal fraction greater than a specified threshold). This classifies every point in input variable space as either signal or background: a decision tree classifier. Define a discriminant function f(x) as f x =1 if x signal region, 1 otherwise 5

Decision tree size The same variable may be used at several nodes; others may not be used at all. In principle a decision tree classifier can have perfect separation between the event classes (will happen e.g. if the terminal nodes have a single event). This would clearly be a very over trained classifier. Usually one grows the tree first to a very large (e.g. maximum) size and then applies pruning. For example one can recombine leaves based on some measure of generalization performance (e.g. using statistical error of purity estimates). 6

Decision tree stability Decision trees tend to be very sensitive to statistical fluctuations in the training sample. If e.g. two variables have similar separating power, then a small fluctuation in the training data could cause either of the two variables to be chosen to split the tree; all subsequent development of the tree is thereby affected. Methods such as boosting can be used to stabilize the tree. 7

Boosting Boosting is a general method of creating a set of classifiers which can be combined to achieve a new classifier that is more stable and has a smaller error than any individual one. Often applied to decision trees but, can be applied to any classifier. Suppose we have a training sample T consisting of N events with x1,..., xn event data vectors (each x multivariate) y1,..., yn true class labels, +1 for signal, 1 for background w1,..., wn event weights Now define a rule to create from this an ensemble of training samples T1, T2,..., derive a classifier from each and average them. 8

Boosting (2) The framework of a general boosting algorithm can be written: Initialize the first training sample T1 Determine a classifier f1(x, T1) from T1 and assign a weight 1 Determine a new training sample T2 from T1 Iterate K times, so we have: K training samples, T1,..., TK K classifiers f1(x, T1),..., fk(x, TK) K classifier weights, 1,..., K Form the final classifier as a function of those from the individual steps, usually as a weighted sum: K y x = k f k x, T k k =1 9

Boosting (3) The important point is that each classifier fk depends on a modified version of the training sample with different event weights. Trick is to create modifications that give smaller error rates than those of the preceding classifiers. A number of ways exist for doing this a successful one is AdaBoost (Freund and Schapire, 1997); short for Adaptive Boosting. 10

AdaBoost First initialize the training sample T1 using the original x1,..., xn event data vectors y1,..., yn true class labels (+1 or 1) w1(1),..., wn(1) event weights with the weights equal and normalized such that N w i=1 1 i =1 Then train the classifier f1(x) (e.g. a decision tree) with a method that incorporates the event weights. At each step k, associate a weight k with the classifier fk. 11

Updating the event weights Define the training sample for step k+1 from that of k by updating the event weights according to w k 1 i =w k i k f k x i yi / 2 e Zk i = event index k = training sample index where Zk is a normalization factor defined such that the sum of the weights over all events is equal to one. 12

Updating the event weights (2) We can use the sign of fk(x) as a classifier. For an event with data xi, fk(xi) > 0 classify as signal fk(xi) < 0 classify as background Therefore the product of the classifier value fk(xi) and class label yi is yi fk(xi) > 0 if the event is classified correctly yi fk(xi) < 0 if the event is classified incorrectly Therefore event weight for event i is increased in the k+1 training sample if it was classified incorrectly in sample k. Idea is that next time around the classifier should pay more attention to this event and try to get it right. 13

Error rate of the kth classifier Therefore the classification error rate k is N k = w k I yi f k x i 0 i i=1 where I(X) = 1 if X is true and is zero otherwise. 14

Assigning the classifier weight Define the classifier fk(x) such that it minimizes the error rate k. Assign a score to the kth classifier based on its error rate, k =ln 1 k k If we define the final classifier as f x = K k f k x,t k k=1 then one can show that its error rate on the training data satisfies the bound K 2 k 1 k k=1 15

AdaBoost error rate So providing each classifier in the ensemble has k > ½, i.e., better than random guessing, then the error rate for the final classifier on the training data (not on unseen data) drops to zero. That is, for sufficiently large K the training data will be over fitted. The error rate on a validation sample would reach some minimum after a certain number of steps and then could rise. So the procedure is to monitor the error rate of the combined classifier at each step with a validation sample and to stop before it starts to rise. Although in principle AdaBoost must overfit, in practice following this procedure overtraining is not a big problem. 16

Boosted decision tree example First use of boosted decision trees in HEP was for particle identification for the MiniBoone neutrino oscillation experiment. H.J.Yang, B.P. Roe, J. Zhu, Studies of Boosted Decision Trees for MiniBooNE Particle Identification, Physics/0508045, Nucl. Instum. & Meth. A 555(2005) 370 385. B.P. Roe, H.J. Yang, J. Zhu, Y. Liu, I. Stancu, G. McGregor, Boosted decision trees as an alternative to artificial neural networks for particle identification, physics/0408124, NIMA 543 (2005) 577 584. 17

Particle i.d. in MiniBooNE Search for to e oscillations required particle i.d. using information from Cherenkov detector. Large number (~200) input variables measured for each event. H.J. Yang, MiniBooNE PID, DNP06 18

Boosted decision tree example Each individual tree is relatively weak, with a misclassification error rate ~ 0.4 0.45 19

Monitoring overtraining From MiniBooNE example 20

MiniBoone boosted decision tree Here performance stable after a few hundred trees 21

Comparison of boosting algorithms A number of boosting algorithms on the market; differ in the update rule for the tree weight. 22

Decision tree summary Advantage of boosted decision tree is it can handle a large number of inputs. Those that provide little/no separation are rarely used as tree splitters are effectively ignored. Easy to deal with inputs of mixed types (real, integer, categorical...) If a tree has only a few leaves it is easy to visualize (but rarely work with an individual tree). Other ways of combining weaker classifiers: Bagging (Boostrap Aggregating), generates the ensemble of classifiers by random sampling with replacement from the full training sample. 23

Support Vector Machines Support Vector Machines (SVMs) are an example of a kernel based classifier, which exploits a nonlinear mapping of the input variables onto a higher dimensional feature space. The SVM finds a linear decision boundary in the higher dimensional space. But thanks to the kernel trick one does not every have to write down explicitly the feature space transformation. Some references for kernel methods and SVMs: The books mentioned on Monday C. Burges, A Tutorial on Support Vector Machines for Pattern Recognition, research.microsoft.com/~cburges/papers/svmtutorial.pdf N. Cristianini and J.Shawe Taylor. An Introduction to Support Vector Machines and other kernel based learning methods. Cambridge University Press, 2000. The TMVA manual (!) 24

Linear SVMs Consider a training data set consisting of x1,..., xn event data vectors y1,..., yn true class labels (+1 or 1) Suppose the classes can be separated by a hyperplane defined by a normal vector w and scalar offset b (the bias ). We have x i w b 1 for all yi = +1 x i w b 1 for all yi = 1 or equivalently yi x i w b 1 0 for all i Bishop Ch. 7 25

Margin and support vectors The distance between the hyperplanes defined by y(x) = 1 and y(x) = 1 is called the margin, which is: margin= 2 w If the training data are perfectly separated then this means there are no points inside the margin. Suppose there are points on the margin (this is equivalent to defining the scale of w). These points are called support vectors. 26

Linear SVM classifier We can define the classifier using y x =sign x w b which is +1 for points on one side of the hyperplane and 1 on the other. The best classifier should have a large margin, so to maximize margin= 2 w 2 we can minimize w subject to the constraints yi x i w b 1 0 for all i 27

Lagrangian formulation This constrained minimization problem can be reformulated using a Lagrangian N 1 L= w 2 i yi x i w b 1 2 i=1 positive Lagrange multipliers i We need to minimize L with respect to w and b and maximize with respect to i. There is an i for every training point. Those that lie on the margin (the support vectors) have i > 0, all others have i = 0. The solution can be written w= i y i x i i (sum only contains support vectors) 28

Dual formulation The classifier function is thus y x =sign x w b =sign i yi x xi b i It can be shown that one finds the same solution a by minimizing the dual Lagrangian L D = i i 1 2 i j yi y j xi x j i, j So this means that both the classifier function and the Lagrangian only involve dot products of vectors in the input variable space. 29

Nonseparable data If the training data points cannot be separated by a hyperplane, one can redefine the constraints by adding slack variables i: yi x i w b i 1 0 with i 0 for all i Thus the training point xi is allowed to be up to a distance i on the wrong side of the boundary, and i = 0 at or on the right side of the boundary. For an error to occur we have i > 1, so i i is an upper bound on the number of training errors. 30

Cost function for nonseparable case To limit the magnitudes of the i we can define the error function that we minimize to determine w to be E w = 1 2 k w C 2 i i where C is a cost parameter we must choose that limits the amount of misclassification. It turns out that for k=1 or 2 this is a quadratic programming problem and furthermore for k=1 it corresponds to minimizing the same dual Lagrangian L D = i i 1 2 i j yi y j xi x j i, j where the constraints on the i become 0 i C. 31

Nonlinear SVM So far we have only reformulated a way to determine a linear classifier, which we know is useful only in limited circumstances. But the important extension to nonlinear classifiers comes from first transforming the input variables to feature space: x = 1 x,, m x These will behave just as our new input variables. Everything about the mathematical formulation of the SVM will look the same as before except with (x) appearing in the place of x. 32

Only dot products Recall the SVM problem was formulated entirely in terms of dot products of the input variables, e.g., the classifier is y x =sign i yi x xi b i so in the feature space this becomes y x =sign x xi b i yi i 33

The Kernel trick How do the dot products help? It turns on that a broad class of kernel functions can be written in the form: x K x, x ' = x ' Functions having this property must satisfy Mercer's condition K x, x ' g x g x ' d x d x ' 0 for any function g where 2 g x d x is finite. So we don't even need to find explicitly the feature space transformation (x), we only need a kernel. 34

Finding kernels There are a number of techniques for finding kernels, e.g., constructing new ones from known ones according to certain rules (cf. Bishop Ch 6). Frequently used kernels to construct classifiers are e.g. polynomial K x, x ' = x x ' p K x, x ' =exp 2 x x ' 2 2 K x, x ' =tanh x x ' Gaussian sigmoidal 35

Using an SVM To use an SVM the user must as a minimum choose a kernel function (e.g. Gaussian) any free parameters in the kernel (e.g. the of the Gaussian) the cost parameter C (plays role of regularization parameter) The training is relatively straightforward because, in contrast to neural networks, the function to be minimized has a single global minimum. Furthermore evaluating the classifier only requires that one retain and sum over the support vectors, a relatively small number of points. 36

SVM in HEP SVMs are very popular in the Machine Learning community but have yet to find wide application in HEP. Here is an early example from a CDF top quark anlaysis (A. Vaiciulis, contribution to PHYSTAT02). signal eff. 37

38

39

40

Lecture 4 summary Boosted Decision Trees and Support Vector Machines are two examples of relatively modern developments in Machine Learning that are only recently attracting attention in HEP. There are now many multivariate methods on the market and it is difficult to make general statements about performance; this is often very specific to the problem. Expect advanced multivariate methods to have a major impact in areas where one struggles for statistical significance, not in precision measurements. Fortunately tools to investigate these methods are now widely available. 41

Extra slides 42

Imperfect pdf estimation What if the approximation we use (e.g., parametric form, assumption of variable independence, etc.) to estimate p(x) is wrong? If we use poor estimates to construct the test variable y x = p x H 0 p x H 1 then the discrimination between the event classes will not be optimal. But can this cause us e.g. to make a false discovery? Even if the estimate of p(x) used in the discriminating variable are imperfect, this will not affect the accuracy of the distributions f(y H0), f(y H1); this only depends on the reliability of the training data. 43

Using the classifier output for discovery signal f(y) N(y) background background y Normalized to unity search region excess? ycut y Normalized to expected number of events Discovery = number of events found in search region incompatible with background only hypothesis. Maximize the probability of this happening by setting ycut for maximum s/ b (roughly true). 44

Controlling false discovery So for a reliable discovery what we depend on is an accurate estimate of the expected number of background events, and this accuracy only depends on the quality of the training data; works for any function y(x). But we do not blindly rely on the MC model for the training data for background; we need to test it by comparing to real data in control samples where no signal is expected. The ability to perform these tests will depend on on the complexity of the analysis methods. 45

AdaBoost study with linear classifier J. Sochman, J. Matas, cmp.felk.cvut.cz Start with a problem for which a linear classifier is weak: 46

AdaBoost study with linear classifier J. Sochman, J. Matas, cmp.felk.cvut.cz 47

MiniBooNE Decision tree performance ~ b / b 48

Quotes I like Keep it simple. As simple as possible. Not any simpler. A. Einstein If you believe in something you don't understand, you suffer,.. Stevie Wonder 49