# 4.1 Introduction - Online Learning Model

Save this PDF as:

Size: px
Start display at page:

## Transcription

1 Computational Learning Foundations Fall semester, 2010 Lecture 4: November 7, 2010 Lecturer: Yishay Mansour Scribes: Elad Liebman, Yuval Rochman & Allon Wagner Introduction - Online Learning Model Imagine a robot that needs to classify oranges (objects) as export (high-quality) or localmarket. We want to do this by letting it work and classify oranges as they arrive (online). After making each of its decisions, an expert (i.e., an experienced worker) provides it with the correct classication so that if it makes mistakes it will be able to modify its prediction method. One hopes that the robot will converge to a good classication method. In this lecture we study the online learning protocol. Our model: 1. The algorithm receives an unlabeled example x. 2. The algorithm predicts a classication b for this example. 3. The algorithm is then told the correct answer, c t (x). In our current setting, this scenario is repeated indenitely. Note that this model can be adversarial, i.e., the provided input may be selected in the worst possible way for the learning algorithm. We will call whatever is used to perform step (2), the algorithm's current hypothesis (sometimes also referred to as concept). A mistake is an incorrect prediction, namely c t (x) b. The goal is to make a (small) bound number of mistakes, which is independent of the size of the input. If we achieve our goal, it is assured that from this point onwards, our hypothesis will classify all observations correctly (otherwise, the adversary can always make it fail again). It is also assured that the algorithm will not switch from one hypothesis to another cyclicly (again, in such a case an adversary would make us fail repeatedly). 1 Based on notes by Maria-Florina Balcan (Januray 14-21, 2010), as well as previous scribes written by Yishay Mansour (March 10, 1996), Gadi Bareli (January 21, 1993), Guy Gaylord & Nir Pedhazur (April 27, 1994), Noam Neer, Assaf Natanzon & Oded Regev (march 8, 1995). 1

2 2 Lecture 4: November 7, Learning Linear Separators Figure 4.1: A linear separator example Here we can think of examples as being from {0, 1} n or from R n (the algorithm will not be sensitive to the dierence). In the consistency model, the goal is to nd w 0 (a threshold) and w (a weights vector) dening a hyperplane w x = w 0 such that all positive examples are on one side and all negative examples are on the other. I.e., w x > w 0 for positive x's and w x < w 0 for negative x's. We can solve this using linear programming. For simplicity, we'll use a threshold w 0 = 0, so we're looking at learning functions like: n i=1 w ix i > 0. We can simulate a nonzero threshold with a dummy input x 0 that is always 1, so this can be done without loss of generality. We will begin by discussing the Perceptron algorithm, an online algorithm for learning linear separators, one of the oldest algorithms used in machine learning (from the early 60s) The Perceptron Algorithm The main idea of this algorithm is that as long as we do not make a mistake, we remain with the same separator. When we do make a mistake - we move the separator towards it. We shall automatically scale all examples x to have Euclidean length 1 (i.e. x 2 = 1), since this doesn't aect which side of the plane they are on.

3 4.2. LEARNING LINEAR SEPARATORS 3 The Perceptron Algorithm: 1. Start with the all-zeroes weight vector w 1 = 0, and initialize t to Given example x t, predict positive i w t x t > On a mistake, update as follows: Mistake on positive: w t+1 w t + x t. Mistake on negative: w t+1 w t x t. The intuition: suppose we encounter x, a positive example (we denote x t as simply x for simplicity). If we make a mistake classifying x, then after the update it follows that w t+1 x = (w t + x) x = w t x + x x = w t x + 1 The example was positive but (since we've made a mistake) the dot product was negative. Therefore, we have increased it in the right direction. Similarly, if we make a mistake on a negative x we have w t+1 x = (w t x) x = w t x 1. So, in both cases we move closer (by 1) to the value we wanted. Another way of perceiving this is that the dot product is the cosine of the angle between x and w - when we make a mistake, we change the angle (we will refer to this later). Theorem 4.1. Let S be a sequence of labeled examples consistent with a linear threshold function w x > 0, where w is a unit-length vector. Then the number of mistakes M on S made by the online Perceptron algorithm is at most (1/γ) 2, where γ = min x S w x. x (I.e., if we scale examples to have Euclidean length 1, then γ is the minimum distance of any example to the plane w x = 0.) The parameter γ is often called the margin of w (or more formally, the L 2 margin because we are scaling by the L 2 lengths of the target and examples). γ represents the minimal distance of each example x from w, after normalizing both w and the examples. Another way to view the quantity w x is that it is the cosine of the angle between x and x w, so we will also use cos(w, x) for it. Proof of Theorem 4.1. We are going to look at the following two quantities w t w and w t. We may assume WLOG that we only make mistakes, for the simple reason that if we do not make a mistake no update follows.

4 4 Lecture 4: November 7, 2010 Claim 1: w t+1 w w t w + γ. That is, every time we make a mistake, the dot-product of our weight vector with the target increases by at least γ. Proof: if x was a positive example, then we get w t+1 w = (w t + x) w = w t w + x w w t w + γ (by denition of γ). Similarly, if x was a negative example, we get (w t x) w = w t w x w w t w + γ. Claim 2: w t+1 2 w t That is, every time we make a mistake, the length squared of our weight vector increases by at most 1. Proof: if x was a positive example, we get w t + x 2 = w t 2 + 2w t x + x 2. This is less than w t because w t x is negative (remember, we made a mistake on x). Same thing (ipping signs) if x was negative but we predicted positive. Claim 1 implies that after M mistakes, w M+1 w γm. On the other hand, Claim 2 implies that after M mistakes, w M+1 M. Now, all we need to do is use the fact that w t w w t : Since w is a unit vector, then a vector maximizing the dot product w t w would be w t w T All in all, we get and thus M 1/γ 2., which entails that w t w w t w t w t = w t 2 w t = w t γm w M+1 w w t M What if there is no perfect separator? What if only most of the data is separable by a large margin (as seen on Figure 4.2), or what if w is not perfect? We can see that the thing we need to look at is Claim 1. Claim 1 said that we make γ amount of progress on every mistake. Now it's possible there will be mistakes where we make very little progress, or even negative progress. One thing we can do is bound the total number of mistakes we make in terms of the total distance we would have to move the points to make them actually separable by margin γ. Let's call that TD γ. Then, we get that after M mistakes, w M+1 w γm TD γ. So, combining with Claim 2, we get that M γm TD γ. We could solve the quadratic, but this implies, for instance, that M 1/γ 2 + (2/γ)TD γ. The quantity 1 TD γ γ is called the total hinge-loss of w. The hinge loss can also be dened as max(0, 1 y), where y = l(x) x w and l(x) is the classication of x. The hinge loss is a loss γ function that begins paying linearly as it approaches the hyperplane (see Figure 4.3).

5 4.2. LEARNING LINEAR SEPARATORS 5 Figure 4.2: A a case in which no perfect separator exists Figure 4.3: Illustrating hinge loss So, this is not too bad: we can't necessarily say that we're making only a small multiple of the number of mistakes that w is (in fact, the problem of nding an approximately-optimal separator is NP-hard), but we can say we're doing well in terms of the total distance parameter Perceptron for approximately maximizing margins. We saw that the perceptron algorithm makes at most 1/γ 2 mistakes on any sequence of examples that is linearly-separable by margin γ (i.e., any sequence for which there exists a unit-length vector w such that all examples x satisfy l(x)(w x)/ x γ, where l(x) { 1, 1} is the label of x). There can be many possible separating hyperplanes, however - some are much better than

6 6 Lecture 4: November 7, 2010 Figure 4.4: Attempting to obtain a good separator by dening a "penalty margin" others. Suppose we are handed a set of examples S and we want to actually nd a largemargin separator for them. One approach is to directly solve for the maximum-margin separator using convex programming (which is what is done in the SVM algorithm). However, if we only need to approximately maximize the margin, then another approach is to use Perceptron. In particular, suppose we cycle through the data using the Perceptron algorithm, updating not only on mistakes, but also on examples x that our current hypothesis gets correct by margin less than γ/2 (see illustration in Figure 4.4). Assuming our data is separable by margin γ, then we can show that this is guaranteed to halt in a number of rounds that is polynomial in 1/γ. (In fact, we can replace γ/2 with (1 ɛ)γ and have bounds that are polynomial in 1/(ɛγ).) The Margin Perceptron Algorithm(γ): 1. Assume again that all examples are normalized to have Euclidean length 1. Initialize w 1 = l(x)x, where x is the rst example seen and initialize t to Predict positive if w t x w t w γ/2, predict negative if t x w t ( γ/2, γ/2). example to be a margin mistake when wt x w t γ/2, and consider an 3. On a mistake (incorrect prediction or margin mistake), update as in the standard Perceptron algorithm: w t+1 w t + l(x)x; t t + 1.

7 4.2. LEARNING LINEAR SEPARATORS 7 Theorem 4.2. Let S be a sequence of labeled examples consistent with a linear threshold function w x > 0, where w is a unit-length vector, and let γ = min x S w x. x Then the number of mistakes (including margin mistakes) made by Margin Perceptron (γ) on S is at most 12/γ 2. Proof: The argument for this new algorithm follows the same lines as the argument for the original Perceptron algorithm. As before, we can show that each update increases w t w by at least γ. What is now a little more complicated is to bound the increase in w t. For the original algorithm, we had: w t+1 2 w t Using a similar method to the one we use below, we could have actually shown w t+1 w t w t. For the new algorithm, we can show instead: To see this note that: w t+1 w t w t + γ 2. (4.1) ( w t+1 2 = w t 2 + 2l(x)w t x + x 2 = w t l(x) w t x w t w t + 1 ) w t 2 Using the inequality 1 + α 1 + α l(x)wt x together with the fact 2 w t γ (since w 2 t made a mistake on x) we get the desired upper bound on w t+1, namely: w t+1 = w t 1 + 2l(x) w t x w t w t + 1 w t w t 2 w t ( l(x) w t γ + 1 w t w t 2 ) w t+1 w t w t + γ 2 (notice we selected ( γ w t + 1 w t 2 ) as α, and that l(x) 1) γ w t 2 Note that (4.1) implies that if w t 2/γ then w t+1 w t + 3γ/4. Given that, it is easy to see that after M updates we have: w M /γ + 3Mγ/4.

8 8 Lecture 4: November 7, 2010 As before, γm w M+1. Solving Mγ 1 + 2/γ + 3Mγ/4 we get M 12/γ 2, as desired. Comment: We will see later on why it is preferable to take an algorithm with a large margin. Here we saw how the Perceptron algorithm can be modied so that its result approaches the best possible margin. We accomplished this using γ/2, but we might as well have chosen (1 ɛ)γ. 4.3 The Mistake Bound model In the mistake bound model: x - examples c - the target function, c t C x 1, x 2... x t an input series at the t th stage: 1. The algorithm receives x t 2. The algorithm predicts a classication for x t, b t 3. The algorithm receives the true classication, c t (x). A mistake occurs if c t (x t ) b t Denition 1. A hypotheses class C has an algorithm A with mistake M if for any concept c C, and for any ordering of examples, the total number of mistakes ever made by A is bounded by M. We shall assume C is a nite class A simple algorithm - CON Let C be a nite concept class. Consider the following algorithm: in stage t the algorithm examines the set C t of all concepts in C which are consistent with all the examples it has seen so far, x 1,..., x t 1. It chooses arbitrarily c t C t and uses it in order to predict a classication for x t. (In fact this is a family of algorithms and not a single one.) Analysis:

9 4.3. THE MISTAKE BOUND MODEL 9 Claim[No Regression]: C t+1 C t. Proof: this is trivial, since any concept which is not consistent at stage t is certainly not consistent at stage t + 1. Claim[Progress]: If a mistake is made at stage t then C t+1 < C t (Hence, each mistake decreases the number of consistent concepts). Proof: If we make a mistake this means that c t which is in C t is not consistent with the classication of x t and hence does not belong to C t+1. Claim[Termination]: C t 1, since c t C t at any stage t. Theorem 4.3. For any concept class C, the algorithm CON makes at most C 1 mistakes. Proof: We start with C = C 1. After each mistake C t decreases by at least one item. Considering that for every t, C t 1, it follows that there are at most C 1 mistakes. The problem: C may be very large! Note that the number of boolean functions on {0, 1} n is 2 2n. The following algorithm will guarantee a much better performance The Halving Algorithm - HAL Let C be any concept class. Consider the following algorithm HAL: In stage t the algorithm considers the set C t of all concepts consistent with all the (t 1) examples it has seen so far. For each c C t it considers the value of c(x t ). Its prediction b t (x t ) is the majority of these values. I.e. let zero t = {c C t : c(x t ) = 0} and one t = {c C t : c(x t ) = 1}, if zero t > one t then b t (x t ) = 0, otherwise b t (x t ) = 1. Analysis: Claim[No regression]: As before. Claim[Progress]: If a mistake is made at stage t then C t C t. (Hence, each mistake decreases the number of consistent concepts signicantly). Proof: If we make a mistake at stage t this means that the majority of the concepts in C t are not consistent with the true classication of x t. Therefore, for any concept c and sequence s, M HAL (c, s) log 2 C M HAL (C) log 2 C. Conclusion 1. For any concept class C the algorithm HAL makes at most log 2 C mistakes. We will now show that if there is an online algorithm with a bound number of mistakes, we can translate it to a PAC algorithm.

10 10 Lecture 4: November 7, The Relation between the Mistake Bound and PAC models It seems that the mistake bound model generates strong online algorithms that make mistakes with low probability. In the last lecture we have seen the PAC model, which is another learning model, whose algorithms have low probability to make a mistake. It seems that the requirements for a mistake bound algorithms are much stronger than for a PAC algorithm. Therefore we ask : If we know that A learns some concept class C in the mistake bound model, Should A learn C in the PAC model? Well, A itself cannot learn PAC, since every algorithm learning PAC must have also ɛ and the δ parameters. But we will show how to construct such an algorithm A P AC which will be in PAC. In order to dene the A P AC algorithm, rst, let us assume that after algorithm A gets x i, it constructs a hypothesis h i. Second, let us dene the notion of a Conservative algorithm (sometimes also referred to as lazy). Denition 2. A mistake bound algorithm A is conservative i for every sample x i c t (x i ) = h i 1 (x i ), then in the i-th step the algorithm will make a choice h i = h i 1 if In other words, a conservative algorithm will change its hypothesis only if A has made a mistake on an input sample. Although not all the algorithms in the mistake bound model are conservative, each algorithm A in the mistake bound model has its conservative dual algorithm A : it will run like A, but every time it is getting x i, then it will see if c t (x i ) = h i 1 (x i ). If so, it won't make any changes, and will skip to the next sample. Otherwise, the algorithm acts like A. We claim that: Theorem 4.4. A learns a concept class C in the mistake bound model, with the same mistake bound of A Proof. If there is a sample {x 1, x 2,..., x n } for which A has a mistake bigger than the mistake bound of A, then running A over the sample {x i c t (x i ) h i 1 (x i )} will be equivalent to running A on {x 1, x 2,..., x n },hence it will be bigger than the mistake bound of A- a contradiction Now, if A has a mistake bound M, we will dene k i = i ɛ ln(m δ The algorithm A P AC will perform the following procedure: ) for 0 i M 1.

11 4.5. DISJUNCTION OF CONJUNCTIONS 11 Run A over a sample size of M 1 ln( M ), divided into M equal (and independent) blocks. ɛ δ Each time we construct a hypothesis h ki, 0 i M 1 (The hypothesis after k i samples), run the hypothesis on the next block of 1 ln( M ) samples. If there isn't any ɛ δ mistake, give the current hypothesis as output, and terminate the algorithm. Else, continue running A We are guaranteed that A makes at most M mistakes. Therefore, we if give it M samples on which it errs, it will produce a hypothesis which is a perfect classier, and trivially PAC demands are satised. However, the sample might contain cases for which the A does not err. Our main theorem will show that the procedure described above assures PAC learning: Theorem 4.5. A P AC will produce some hypothesis, and A P AC learns PAC Proof. We begin by noting that since the number of mistakes made is bound by M, the algorithm will terminate after the last block, outputing its nal hypothesis h M 1. (Further, note that h M 1 was produced after making M errors, thus it's a perfect classier). Thus, the algorithm always produces an output. We notice that for every h ki, the probability of a "bad event" - i.e., halting on h ki whereas is ɛ bad, is as follows: h ki Pr(h ki succeeds on a block while being ɛ-bad) = (1 ɛ) 1 ɛ ln( M δ ) e ln( M δ ) δ M Therefore, Pr(A P AC outputs an ɛ bad hypothesis h) Pr ( 0 i M 1 s.t h ki is ɛ-bad ) M 1 i=0 Pr(h ki is ɛ-bad ) M 1 i=0 δ M = δ, which means A P AC learns in the PAC model. 4.5 Disjunction of Conjunctions Algorithm for Disjunction Having seen that every algorithm in the mistake bound model can be converted to an algorithm in PAC, lets see a mistake bound algorithm for the disjunction of conjunctions:

12 12 Lecture 4: November 7, Initialize hypothesis set L to be the set of {x 1, x 1, x 2, x 2,... x n, x n }. 2. Given a sample y = (y 1, y 2,... y n ), where y i {0, 1}, do: (a) Guess h( y) where h t ( x) = x i L (b) If h( y) = c t ( y) then return to step 2, x i (c) Otherwise, dene S y = {x x is a literal s.t the value it represnts in y is positive} and make L L S y. (d) Return to step 2 The algorithm changes its hypothesis only when we have a mistake (it is conservative). If we were mistaken, then we change our hypothesis. For example, if we have only 2 variables, (e.g. L = {x 1, x 1, x 2, x 2 }) and the rst sample is ȳ = (1, 0) with the target function c t (y) = 0, then after one iteration of step 2, we get L = {x 1, x 2 }. But, if c t (y) = 1, We didn't get a mistake. and we didn't change the hypothesis. Theorem 4.6. The algorithm only makes a mistake when c t (y) = 0, and the number of mistakes is bound by n + 1 where n is the number of variables From this theorem we get that the above algorithm is a mistake bound algorithm Proof. Let R be the set of all literals in c t (y), and L i the hypothesis after getting the i th sample, y i. If we prove by induction, that for all i, R L i, then after get the (i+1) th sample, if c t (y) = 1 then it must be h i (y) = 1 and therefore, we only make a mistake when c t (y) = 0. The induction is easy. It is obvious that R L 0. Then in the i th sample, if c t (y) = 1 we don't make any change, because c t (y) = h i (y). If c t (y) = 0 then of course S y and R don't intersect. Hence we get R L i+1. In the rst mistake, when we are eliminating exactly n literals from L. In the other mistakes, we are eliminating from L at least one literal. L 0 contain 2n literals, therefore the number of mistakes is n + 1.

13 4.6. THE WINNOW ALGORITHM k-dnf Let k be a constant. Consider the class of k-dnf functions. That is, functions that can be represented by a disjunction of terms, where each of these terms is a conjunction of at most k literals. The number of the conjunctions of size i terms is ( n i) 2 i - choosing rst the i variables, and then choosing for every variable whether it or its negative will be in the term. k ) Hence t = 2 i = Θ(n k ) (i.e., polynomial in n) is the maximum number of terms of a k-dnf. i=0 ( n i We can learn this class in a similar way, either by changing the above algorithm to deal with terms instead of variables, or by reducing the space X = {0, 1} n to Y = {0, 1} nk by computing for each of the terms its value. The original function on X gives a disjunction on Y and hence can be learned by the ELIM algorithm (for a PAC algorithm) or to use the previous algorithm (for the Mistake bound algorithm) as it is with O(n k ) mistakes. 4.6 The Winnow Algorithm We now turn to an algorithm called the Winnow algorithm. Like the Perceptron procedure discussed previously, the Winnow algorithm learns what is the linear separator. Unlike the Perceptron Procedure, Winnow uses multiplicative rather than additive updates. The Winnow algorithm is meant for learning the class of monotone disjunctions (of n variables) in the mistake bound model (monotone disjunctions being disjunctions containing only positive literals). This algorithm preforms much better than the greedy algorithm presented in section 2.1, when the number of terms in the target function, r, is o( n ). Note that logn Winnow or generalizations of Winnow can handle other specic concept classes (e.g. nonmonotone disjunctions, majority functions, linear separators), but the analysis is simplest in the case of monotone disjunctions The Algorithm Both the Winnow and the Perceptron algorithms use the same classication scheme: h( x ) x w θ positive classication h( x ) x w < θ negative classication For convenience, we assume that θ = n (the number of variables) and we initialize w 0 = (1, 1, , 1) (Note that the Perceptron algorithm used a threshold of 0 but here we use a

14 14 Lecture 4: November 7, 2010 threshold of n.) The Winnow Algorithm diers from the Perceptron Algorithm in its update scheme. When misclassifying a positive training example (e.g, h( x ) = 0 but c t ( x ) = 1) then make: x i = 1 : w i 2w i. When misclassifying a negative training example (e.g h( x ) = 1 but c t ( x ) = 0) then make: x i = 1 : w i w i /2. In those two cases, if x i = 0 then we don't change w i. Similarly to the Precetron algorithm, if the margin is bigger then γ then we can prove that the error rate is Θ( 1 γ 2 ). Notice that because we are updating multiplicatively, all weights remain positive The Mistake Bound Analysis Now, we will prove that Winnow Algorithm is in the mistake bound model. Theorem 4.7. The Winnow algorithm learns the class of monotone disjunctions in the mistake bound model, making at most 2 + 3r(1 + log n) mistakes when the target concept is an OR of r variables. Proof. Let S = {x i1, x i2,..., x ir } be the r relevant variables in our target concept (e.g c t ( x ) = x i1 x i2... x ir ). Let W r = {w i1, w i2,..., w ir } be the weights of those relevant variables (called relevant variables). Let w(t) denote the value of weight w at time t and let T W (t) be the Total Weight of the w(t) (including both relevant and irrelevant variables) at time t. We will rst bound the number of mistakes that will be made on positive examples. Note rst that any mistake made on a positive example must double at least one of the relevant weights (If all of the relevant weights aren't be doubled then c t ( x ) = 0 ). So if at time t we misclassied a positive example we have: w W r such that w(t + 1) = 2w(t) (4.2) Moreover, a mistake made on a negative example won't change any of the relevant weights. Hence, for all times t, we have: w W r, w(t + 1) w(t) (4.3)

15 4.6. THE WINNOW ALGORITHM 15 Each of these weights can be doubled at most 1 + log(n) times, since only weights that are less than n can ever be doubled (If w i n we will get that x w n therefore a positive classication). Combining this together with (4.2) and (4.3), we get that Winnow makes at most M + r(1 + log(n)) mistakes on positive examples. We now bound the number of mistakes made on negative examples. For a positive example we must have h( x ) = 0, therefore:. Since we get h( x ) = w 1 (t)x w n (t)x n < n T W (t + 1) = T W (t) + (w 1 (t)x w n (t)x n ), T W (t + 1) < T W (t) + n. (4.4) Similarly, we can show that each mistake made on a negative example decreases the total weight by at least n/2. To see this assume that we made a mistake on the negative example x at time t. We must have: Since we get w 1 (t)x w n (t)x n n. T W (t + 1) = T W (t) (w 1 (t)x w n (t)x n )/2, T W (t + 1) T W (t) n/2. (4.5) Finally, the total weight in every time does not drop below zero, i.e : Combining equations (4.5), (4.4), and (4.6) we get: T W (t) > 0 (4.6) 0 < T W (t) T W (0) + nm + (n/2)m (4.7) The total weight summed over all the variables is initially n since w 0 = (1, 1, , 1). Solving (4.7) we get: M < 2 + 2M r(log n + 1). Hence, as required. M + M r(log n + 1),

### Introduction to Logistic Regression

OpenStax-CNX module: m42090 1 Introduction to Logistic Regression Dan Calderon This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License 3.0 Abstract Gives introduction

### COS 511: Foundations of Machine Learning. Rob Schapire Lecture #14 Scribe: Qian Xi March 30, 2006

COS 511: Foundations of Machine Learning Rob Schapire Lecture #14 Scribe: Qian Xi March 30, 006 In the previous lecture, we introduced a new learning model, the Online Learning Model. After seeing a concrete

### Statistical Machine Learning

Statistical Machine Learning UoC Stats 37700, Winter quarter Lecture 4: classical linear and quadratic discriminants. 1 / 25 Linear separation For two classes in R d : simple idea: separate the classes

### Stochastic Inventory Control

Chapter 3 Stochastic Inventory Control 1 In this chapter, we consider in much greater details certain dynamic inventory control problems of the type already encountered in section 1.3. In addition to the

### Solving nonlinear equations in one variable

Chapter Solving nonlinear equations in one variable Contents.1 Bisection method............................. 7. Fixed point iteration........................... 8.3 Newton-Raphson method........................

### Foundations of Machine Learning On-Line Learning. Mehryar Mohri Courant Institute and Google Research mohri@cims.nyu.edu

Foundations of Machine Learning On-Line Learning Mehryar Mohri Courant Institute and Google Research mohri@cims.nyu.edu Motivation PAC learning: distribution fixed over time (training and test). IID assumption.

### 1 Approximating Set Cover

CS 05: Algorithms (Grad) Feb 2-24, 2005 Approximating Set Cover. Definition An Instance (X, F ) of the set-covering problem consists of a finite set X and a family F of subset of X, such that every elemennt

### PATTERN RECOGNITION AND MACHINE LEARNING CHAPTER 4: LINEAR MODELS FOR CLASSIFICATION

PATTERN RECOGNITION AND MACHINE LEARNING CHAPTER 4: LINEAR MODELS FOR CLASSIFICATION Introduction In the previous chapter, we explored a class of regression models having particularly simple analytical

### Applied Algorithm Design Lecture 5

Applied Algorithm Design Lecture 5 Pietro Michiardi Eurecom Pietro Michiardi (Eurecom) Applied Algorithm Design Lecture 5 1 / 86 Approximation Algorithms Pietro Michiardi (Eurecom) Applied Algorithm Design

### 8.1 Makespan Scheduling

600.469 / 600.669 Approximation Algorithms Lecturer: Michael Dinitz Topic: Dynamic Programing: Min-Makespan and Bin Packing Date: 2/19/15 Scribe: Gabriel Kaptchuk 8.1 Makespan Scheduling Consider an instance

### Find-The-Number. 1 Find-The-Number With Comps

Find-The-Number 1 Find-The-Number With Comps Consider the following two-person game, which we call Find-The-Number with Comps. Player A (for answerer) has a number x between 1 and 1000. Player Q (for questioner)

### Section 1.1. Introduction to R n

The Calculus of Functions of Several Variables Section. Introduction to R n Calculus is the study of functional relationships and how related quantities change with each other. In your first exposure to

### Notes from Week 1: Algorithms for sequential prediction

CS 683 Learning, Games, and Electronic Markets Spring 2007 Notes from Week 1: Algorithms for sequential prediction Instructor: Robert Kleinberg 22-26 Jan 2007 1 Introduction In this course we will be looking

### Lecture 3: Linear methods for classification

Lecture 3: Linear methods for classification Rafael A. Irizarry and Hector Corrada Bravo February, 2010 Today we describe four specific algorithms useful for classification problems: linear regression,

### Oscillations of the Sending Window in Compound TCP

Oscillations of the Sending Window in Compound TCP Alberto Blanc 1, Denis Collange 1, and Konstantin Avrachenkov 2 1 Orange Labs, 905 rue Albert Einstein, 06921 Sophia Antipolis, France 2 I.N.R.I.A. 2004

### 1 The Consistency Model

COS 511: Foundations of Machine Learning Rob Schapire Lecture #2 Scribe: Tamara Broderick February 9, 2006 1 The Consistency Model c : X {0,1} is a concept. C is a concept class. C is learnable (in the

### Lecture 2: The SVM classifier

Lecture 2: The SVM classifier C19 Machine Learning Hilary 2015 A. Zisserman Review of linear classifiers Linear separability Perceptron Support Vector Machine (SVM) classifier Wide margin Cost function

### 1.3. DOT PRODUCT 19. 6. If θ is the angle (between 0 and π) between two non-zero vectors u and v,

1.3. DOT PRODUCT 19 1.3 Dot Product 1.3.1 Definitions and Properties The dot product is the first way to multiply two vectors. The definition we will give below may appear arbitrary. But it is not. It

### 4.4 The recursion-tree method

4.4 The recursion-tree method Let us see how a recursion tree would provide a good guess for the recurrence = 3 4 ) Start by nding an upper bound Floors and ceilings usually do not matter when solving

### 8.1 Min Degree Spanning Tree

CS880: Approximations Algorithms Scribe: Siddharth Barman Lecturer: Shuchi Chawla Topic: Min Degree Spanning Tree Date: 02/15/07 In this lecture we give a local search based algorithm for the Min Degree

### Machine Learning Final Project Spam Email Filtering

Machine Learning Final Project Spam Email Filtering March 2013 Shahar Yifrah Guy Lev Table of Content 1. OVERVIEW... 3 2. DATASET... 3 2.1 SOURCE... 3 2.2 CREATION OF TRAINING AND TEST SETS... 4 2.3 FEATURE

### Several Views of Support Vector Machines

Several Views of Support Vector Machines Ryan M. Rifkin Honda Research Institute USA, Inc. Human Intention Understanding Group 2007 Tikhonov Regularization We are considering algorithms of the form min

### NP-Completeness and Cook s Theorem

NP-Completeness and Cook s Theorem Lecture notes for COM3412 Logic and Computation 15th January 2002 1 NP decision problems The decision problem D L for a formal language L Σ is the computational task:

### 7.1 Introduction. CSci 335 Software Design and Analysis III Chapter 7 Sorting. Prof. Stewart Weiss

Chapter 7 Sorting 7.1 Introduction Insertion sort is the sorting algorithm that splits an array into a sorted and an unsorted region, and repeatedly picks the lowest index element of the unsorted region

### Many algorithms, particularly divide and conquer algorithms, have time complexities which are naturally

Recurrence Relations Many algorithms, particularly divide and conquer algorithms, have time complexities which are naturally modeled by recurrence relations. A recurrence relation is an equation which

### Linear smoother. ŷ = S y. where s ij = s ij (x) e.g. s ij = diag(l i (x)) To go the other way, you need to diagonalize S

Linear smoother ŷ = S y where s ij = s ij (x) e.g. s ij = diag(l i (x)) To go the other way, you need to diagonalize S 2 Online Learning: LMS and Perceptrons Partially adapted from slides by Ryan Gabbard

### Numerical Analysis Lecture Notes

Numerical Analysis Lecture Notes Peter J. Olver 5. Inner Products and Norms The norm of a vector is a measure of its size. Besides the familiar Euclidean norm based on the dot product, there are a number

### Continued Fractions and the Euclidean Algorithm

Continued Fractions and the Euclidean Algorithm Lecture notes prepared for MATH 326, Spring 997 Department of Mathematics and Statistics University at Albany William F Hammond Table of Contents Introduction

### The Trip Scheduling Problem

The Trip Scheduling Problem Claudia Archetti Department of Quantitative Methods, University of Brescia Contrada Santa Chiara 50, 25122 Brescia, Italy Martin Savelsbergh School of Industrial and Systems

### Linear Threshold Units

Linear Threshold Units w x hx (... w n x n w We assume that each feature x j and each weight w j is a real number (we will relax this later) We will study three different algorithms for learning linear

### Approximation Algorithms

Approximation Algorithms or: How I Learned to Stop Worrying and Deal with NP-Completeness Ong Jit Sheng, Jonathan (A0073924B) March, 2012 Overview Key Results (I) General techniques: Greedy algorithms

Adaptive Online Gradient Descent Peter L Bartlett Division of Computer Science Department of Statistics UC Berkeley Berkeley, CA 94709 bartlett@csberkeleyedu Elad Hazan IBM Almaden Research Center 650

### Section 3 Sequences and Limits

Section 3 Sequences and Limits Definition A sequence of real numbers is an infinite ordered list a, a 2, a 3, a 4,... where, for each n N, a n is a real number. We call a n the n-th term of the sequence.

### ORF 523 Lecture 8 Spring 2016, Princeton University Instructor: A.A. Ahmadi Scribe: G. Hall Tuesday, March 8, 2016

ORF 523 Lecture 8 Spring 2016, Princeton University Instructor: A.A. Ahmadi Scribe: G. Hall Tuesday, March 8, 2016 When in doubt on the accuracy of these notes, please cross check with the instructor s

### Lecture 6: Approximation via LP Rounding

Lecture 6: Approximation via LP Rounding Let G = (V, E) be an (undirected) graph. A subset C V is called a vertex cover for G if for every edge (v i, v j ) E we have v i C or v j C (or both). In other

### 4.1 Learning algorithms for neural networks

4 Perceptron Learning 4.1 Learning algorithms for neural networks In the two preceding chapters we discussed two closely related models, McCulloch Pitts units and perceptrons, but the question of how to

### The Goldberg Rao Algorithm for the Maximum Flow Problem

The Goldberg Rao Algorithm for the Maximum Flow Problem COS 528 class notes October 18, 2006 Scribe: Dávid Papp Main idea: use of the blocking flow paradigm to achieve essentially O(min{m 2/3, n 1/2 }

### THE FUNDAMENTAL THEOREM OF ARBITRAGE PRICING

THE FUNDAMENTAL THEOREM OF ARBITRAGE PRICING 1. Introduction The Black-Scholes theory, which is the main subject of this course and its sequel, is based on the Efficient Market Hypothesis, that arbitrages

### arxiv:1112.0829v1 [math.pr] 5 Dec 2011

How Not to Win a Million Dollars: A Counterexample to a Conjecture of L. Breiman Thomas P. Hayes arxiv:1112.0829v1 [math.pr] 5 Dec 2011 Abstract Consider a gambling game in which we are allowed to repeatedly

### Topic: Greedy Approximations: Set Cover and Min Makespan Date: 1/30/06

CS880: Approximations Algorithms Scribe: Matt Elder Lecturer: Shuchi Chawla Topic: Greedy Approximations: Set Cover and Min Makespan Date: 1/30/06 3.1 Set Cover The Set Cover problem is: Given a set of

### Outline. 1 Denitions. 2 Principles. 4 Implementation and Evaluation. 5 Debugging. 6 References

Outline Computer Science 331 Introduction to Testing of Programs Mike Jacobson Department of Computer Science University of Calgary Lecture #3-4 1 Denitions 2 3 4 Implementation and Evaluation 5 Debugging

### Chapter 2 Limits Functions and Sequences sequence sequence Example

Chapter Limits In the net few chapters we shall investigate several concepts from calculus, all of which are based on the notion of a limit. In the normal sequence of mathematics courses that students

### The Classes P and NP

The Classes P and NP We now shift gears slightly and restrict our attention to the examination of two families of problems which are very important to computer scientists. These families constitute the

### Using Generalized Forecasts for Online Currency Conversion

Using Generalized Forecasts for Online Currency Conversion Kazuo Iwama and Kouki Yonezawa School of Informatics Kyoto University Kyoto 606-8501, Japan {iwama,yonezawa}@kuis.kyoto-u.ac.jp Abstract. El-Yaniv

### Prime Numbers. Chapter Primes and Composites

Chapter 2 Prime Numbers The term factoring or factorization refers to the process of expressing an integer as the product of two or more integers in a nontrivial way, e.g., 42 = 6 7. Prime numbers are

### MATHEMATICAL BACKGROUND

Chapter 1 MATHEMATICAL BACKGROUND This chapter discusses the mathematics that is necessary for the development of the theory of linear programming. We are particularly interested in the solutions of a

### Some Polynomial Theorems. John Kennedy Mathematics Department Santa Monica College 1900 Pico Blvd. Santa Monica, CA 90405 rkennedy@ix.netcom.

Some Polynomial Theorems by John Kennedy Mathematics Department Santa Monica College 1900 Pico Blvd. Santa Monica, CA 90405 rkennedy@ix.netcom.com This paper contains a collection of 31 theorems, lemmas,

### Week 1: Introduction to Online Learning

Week 1: Introduction to Online Learning 1 Introduction This is written based on Prediction, Learning, and Games (ISBN: 2184189 / -21-8418-9 Cesa-Bianchi, Nicolo; Lugosi, Gabor 1.1 A Gentle Start Consider

### Fairness in Routing and Load Balancing

Fairness in Routing and Load Balancing Jon Kleinberg Yuval Rabani Éva Tardos Abstract We consider the issue of network routing subject to explicit fairness conditions. The optimization of fairness criteria

### A Simple Characterization for Truth-Revealing Single-Item Auctions

A Simple Characterization for Truth-Revealing Single-Item Auctions Kamal Jain 1, Aranyak Mehta 2, Kunal Talwar 3, and Vijay Vazirani 2 1 Microsoft Research, Redmond, WA 2 College of Computing, Georgia

### School of Computer Science, Carnegie Mellon University, Pittsburgh, PA 15213

,, 1{8 () c A Note on Learning from Multiple-Instance Examples AVRIM BLUM avrim+@cs.cmu.edu ADAM KALAI akalai+@cs.cmu.edu School of Computer Science, Carnegie Mellon University, Pittsburgh, PA 1513 Abstract.

### Machine Learning in Spam Filtering

Machine Learning in Spam Filtering A Crash Course in ML Konstantin Tretyakov kt@ut.ee Institute of Computer Science, University of Tartu Overview Spam is Evil ML for Spam Filtering: General Idea, Problems.

### Notes on Complexity Theory Last updated: August, 2011. Lecture 1

Notes on Complexity Theory Last updated: August, 2011 Jonathan Katz Lecture 1 1 Turing Machines I assume that most students have encountered Turing machines before. (Students who have not may want to look

### 1. R In this and the next section we are going to study the properties of sequences of real numbers.

+a 1. R In this and the next section we are going to study the properties of sequences of real numbers. Definition 1.1. (Sequence) A sequence is a function with domain N. Example 1.2. A sequence of real

### CSCI567 Machine Learning (Fall 2014)

CSCI567 Machine Learning (Fall 2014) Drs. Sha & Liu {feisha,yanliu.cs}@usc.edu September 22, 2014 Drs. Sha & Liu ({feisha,yanliu.cs}@usc.edu) CSCI567 Machine Learning (Fall 2014) September 22, 2014 1 /

### Advanced Topics in Machine Learning (Part II)

Advanced Topics in Machine Learning (Part II) 3. Convexity and Optimisation February 6, 2009 Andreas Argyriou 1 Today s Plan Convex sets and functions Types of convex programs Algorithms Convex learning

### Theory of Computation Prof. Kamala Krithivasan Department of Computer Science and Engineering Indian Institute of Technology, Madras

Theory of Computation Prof. Kamala Krithivasan Department of Computer Science and Engineering Indian Institute of Technology, Madras Lecture No. # 31 Recursive Sets, Recursively Innumerable Sets, Encoding

### Introduction to Support Vector Machines. Colin Campbell, Bristol University

Introduction to Support Vector Machines Colin Campbell, Bristol University 1 Outline of talk. Part 1. An Introduction to SVMs 1.1. SVMs for binary classification. 1.2. Soft margins and multi-class classification.

### Lecture 4: AC 0 lower bounds and pseudorandomness

Lecture 4: AC 0 lower bounds and pseudorandomness Topics in Complexity Theory and Pseudorandomness (Spring 2013) Rutgers University Swastik Kopparty Scribes: Jason Perry and Brian Garnett In this lecture,

### 2.3 Convex Constrained Optimization Problems

42 CHAPTER 2. FUNDAMENTAL CONCEPTS IN CONVEX OPTIMIZATION Theorem 15 Let f : R n R and h : R R. Consider g(x) = h(f(x)) for all x R n. The function g is convex if either of the following two conditions

### princeton univ. F 13 cos 521: Advanced Algorithm Design Lecture 6: Provable Approximation via Linear Programming Lecturer: Sanjeev Arora

princeton univ. F 13 cos 521: Advanced Algorithm Design Lecture 6: Provable Approximation via Linear Programming Lecturer: Sanjeev Arora Scribe: One of the running themes in this course is the notion of

### Lecture 6 Online and streaming algorithms for clustering

CSE 291: Unsupervised learning Spring 2008 Lecture 6 Online and streaming algorithms for clustering 6.1 On-line k-clustering To the extent that clustering takes place in the brain, it happens in an on-line

### Notes V General Equilibrium: Positive Theory. 1 Walrasian Equilibrium and Excess Demand

Notes V General Equilibrium: Positive Theory In this lecture we go on considering a general equilibrium model of a private ownership economy. In contrast to the Notes IV, we focus on positive issues such

### We call this set an n-dimensional parallelogram (with one vertex 0). We also refer to the vectors x 1,..., x n as the edges of P.

Volumes of parallelograms 1 Chapter 8 Volumes of parallelograms In the present short chapter we are going to discuss the elementary geometrical objects which we call parallelograms. These are going to

### Chapter 15 Introduction to Linear Programming

Chapter 15 Introduction to Linear Programming An Introduction to Optimization Spring, 2014 Wei-Ta Chu 1 Brief History of Linear Programming The goal of linear programming is to determine the values of

### Math 215 HW #6 Solutions

Math 5 HW #6 Solutions Problem 34 Show that x y is orthogonal to x + y if and only if x = y Proof First, suppose x y is orthogonal to x + y Then since x, y = y, x In other words, = x y, x + y = (x y) T

### Online Convex Optimization

E0 370 Statistical Learning heory Lecture 19 Oct 22, 2013 Online Convex Optimization Lecturer: Shivani Agarwal Scribe: Aadirupa 1 Introduction In this lecture we shall look at a fairly general setting

### Duality in General Programs. Ryan Tibshirani Convex Optimization 10-725/36-725

Duality in General Programs Ryan Tibshirani Convex Optimization 10-725/36-725 1 Last time: duality in linear programs Given c R n, A R m n, b R m, G R r n, h R r : min x R n c T x max u R m, v R r b T

### Mathematical Induction

Mathematical Induction In logic, we often want to prove that every member of an infinite set has some feature. E.g., we would like to show: N 1 : is a number 1 : has the feature Φ ( x)(n 1 x! 1 x) How

### On closed-form solutions of a resource allocation problem in parallel funding of R&D projects

Operations Research Letters 27 (2000) 229 234 www.elsevier.com/locate/dsw On closed-form solutions of a resource allocation problem in parallel funding of R&D proects Ulku Gurler, Mustafa. C. Pnar, Mohamed

### THEORY OF SIMPLEX METHOD

Chapter THEORY OF SIMPLEX METHOD Mathematical Programming Problems A mathematical programming problem is an optimization problem of finding the values of the unknown variables x, x,, x n that maximize

### Factoring & Primality

Factoring & Primality Lecturer: Dimitris Papadopoulos In this lecture we will discuss the problem of integer factorization and primality testing, two problems that have been the focus of a great amount

### t := maxγ ν subject to ν {0,1,2,...} and f(x c +γ ν d) f(x c )+cγ ν f (x c ;d).

1. Line Search Methods Let f : R n R be given and suppose that x c is our current best estimate of a solution to P min x R nf(x). A standard method for improving the estimate x c is to choose a direction

### Mathematics for Economics (Part I) Note 5: Convex Sets and Concave Functions

Natalia Lazzati Mathematics for Economics (Part I) Note 5: Convex Sets and Concave Functions Note 5 is based on Madden (1986, Ch. 1, 2, 4 and 7) and Simon and Blume (1994, Ch. 13 and 21). Concave functions

### MACHINE LEARNING. Introduction. Alessandro Moschitti

MACHINE LEARNING Introduction Alessandro Moschitti Department of Computer Science and Information Engineering University of Trento Email: moschitti@disi.unitn.it Course Schedule Lectures Tuesday, 14:00-16:00

### Lecture 4 Online and streaming algorithms for clustering

CSE 291: Geometric algorithms Spring 2013 Lecture 4 Online and streaming algorithms for clustering 4.1 On-line k-clustering To the extent that clustering takes place in the brain, it happens in an on-line

### The Steepest Descent Algorithm for Unconstrained Optimization and a Bisection Line-search Method

The Steepest Descent Algorithm for Unconstrained Optimization and a Bisection Line-search Method Robert M. Freund February, 004 004 Massachusetts Institute of Technology. 1 1 The Algorithm The problem

### Lecture 3: Finding integer solutions to systems of linear equations

Lecture 3: Finding integer solutions to systems of linear equations Algorithmic Number Theory (Fall 2014) Rutgers University Swastik Kopparty Scribe: Abhishek Bhrushundi 1 Overview The goal of this lecture

### HOMEWORK 5 SOLUTIONS. n!f n (1) lim. ln x n! + xn x. 1 = G n 1 (x). (2) k + 1 n. (n 1)!

Math 7 Fall 205 HOMEWORK 5 SOLUTIONS Problem. 2008 B2 Let F 0 x = ln x. For n 0 and x > 0, let F n+ x = 0 F ntdt. Evaluate n!f n lim n ln n. By directly computing F n x for small n s, we obtain the following

### 3. INNER PRODUCT SPACES

. INNER PRODUCT SPACES.. Definition So far we have studied abstract vector spaces. These are a generalisation of the geometric spaces R and R. But these have more structure than just that of a vector space.

### Linear Algebra Notes

Linear Algebra Notes Chapter 19 KERNEL AND IMAGE OF A MATRIX Take an n m matrix a 11 a 12 a 1m a 21 a 22 a 2m a n1 a n2 a nm and think of it as a function A : R m R n The kernel of A is defined as Note

### Lecture 10: Regression Trees

Lecture 10: Regression Trees 36-350: Data Mining October 11, 2006 Reading: Textbook, sections 5.2 and 10.5. The next three lectures are going to be about a particular kind of nonlinear predictive model,

### ECON20310 LECTURE SYNOPSIS REAL BUSINESS CYCLE

ECON20310 LECTURE SYNOPSIS REAL BUSINESS CYCLE YUAN TIAN This synopsis is designed merely for keep a record of the materials covered in lectures. Please refer to your own lecture notes for all proofs.

### 2.3 Scheduling jobs on identical parallel machines

2.3 Scheduling jobs on identical parallel machines There are jobs to be processed, and there are identical machines (running in parallel) to which each job may be assigned Each job = 1,,, must be processed

### MATH10212 Linear Algebra. Systems of Linear Equations. Definition. An n-dimensional vector is a row or a column of n numbers (or letters): a 1.

MATH10212 Linear Algebra Textbook: D. Poole, Linear Algebra: A Modern Introduction. Thompson, 2006. ISBN 0-534-40596-7. Systems of Linear Equations Definition. An n-dimensional vector is a row or a column

### N E W S A N D L E T T E R S

N E W S A N D L E T T E R S 73rd Annual William Lowell Putnam Mathematical Competition Editor s Note: Additional solutions will be printed in the Monthly later in the year. PROBLEMS A1. Let d 1, d,...,

### Notes on Factoring. MA 206 Kurt Bryan

The General Approach Notes on Factoring MA 26 Kurt Bryan Suppose I hand you n, a 2 digit integer and tell you that n is composite, with smallest prime factor around 5 digits. Finding a nontrivial factor

### A Simple Introduction to Support Vector Machines

A Simple Introduction to Support Vector Machines Martin Law Lecture for CSE 802 Department of Computer Science and Engineering Michigan State University Outline A brief history of SVM Large-margin linear

### Lecture 1 Newton s method.

Lecture 1 Newton s method. 1 Square roots 2 Newton s method. The guts of the method. A vector version. Implementation. The existence theorem. Basins of attraction. The Babylonian algorithm for finding

### General Theory of Differential Equations Sections 2.8, 3.1-3.2, 4.1

A B I L E N E C H R I S T I A N U N I V E R S I T Y Department of Mathematics General Theory of Differential Equations Sections 2.8, 3.1-3.2, 4.1 Dr. John Ehrke Department of Mathematics Fall 2012 Questions

### 13.4 THE CROSS PRODUCT

710 Chapter Thirteen A FUNDAMENTAL TOOL: VECTORS 62. Use the following steps and the results of Problems 59 60 to show (without trigonometry) that the geometric and algebraic definitions of the dot product

### 1 Formulating The Low Degree Testing Problem

6.895 PCP and Hardness of Approximation MIT, Fall 2010 Lecture 5: Linearity Testing Lecturer: Dana Moshkovitz Scribe: Gregory Minton and Dana Moshkovitz In the last lecture, we proved a weak PCP Theorem,

### Approximation Algorithms: LP Relaxation, Rounding, and Randomized Rounding Techniques. My T. Thai

Approximation Algorithms: LP Relaxation, Rounding, and Randomized Rounding Techniques My T. Thai 1 Overview An overview of LP relaxation and rounding method is as follows: 1. Formulate an optimization

### U.C. Berkeley CS276: Cryptography Handout 0.1 Luca Trevisan January, 2009. Notes on Algebra

U.C. Berkeley CS276: Cryptography Handout 0.1 Luca Trevisan January, 2009 Notes on Algebra These notes contain as little theory as possible, and most results are stated without proof. Any introductory

### α = u v. In other words, Orthogonal Projection

Orthogonal Projection Given any nonzero vector v, it is possible to decompose an arbitrary vector u into a component that points in the direction of v and one that points in a direction orthogonal to v

### Cubic Functions: Global Analysis

Chapter 14 Cubic Functions: Global Analysis The Essential Question, 231 Concavity-sign, 232 Slope-sign, 234 Extremum, 235 Height-sign, 236 0-Concavity Location, 237 0-Slope Location, 239 Extremum Location,

### Topic 1: Matrices and Systems of Linear Equations.

Topic 1: Matrices and Systems of Linear Equations Let us start with a review of some linear algebra concepts we have already learned, such as matrices, determinants, etc Also, we shall review the method

### Making Sense of the Mayhem: Machine Learning and March Madness

Making Sense of the Mayhem: Machine Learning and March Madness Alex Tran and Adam Ginzberg Stanford University atran3@stanford.edu ginzberg@stanford.edu I. Introduction III. Model The goal of our research