# Indian Statistical Institute Kolkata

## Presentation on theme: "Indian Statistical Institute Kolkata"— Presentation transcript:

Indian Statistical Institute Kolkata
Supervised Learning Regression, Classification Linear regression, k-NN classification Debapriyo Majumdar Data Mining – Fall 2014 Indian Statistical Institute Kolkata August 11, 2014

An Example: Size of Engine vs Power
Power (bhp) Engine displacement (cc) An unknown car has an engine of size 1800cc. What is likely to be the power of the engine?

An Example: Size of Engine vs Power
Power (bhp) Target Variable Engine displacement (cc) Intuitively, the two variables have a relation Learn the relation from the given data Predict the target variable after learning

Exercise: on a simpler set of data points
y 1 2 3 7 4 10 2.5 ? y x Predict y for x = 2.5

Engine displacement (cc)
Linear Regression Training set Power (bhp) Engine displacement (cc) Assume: the relation is linear Then for a given x (=1800), predict the value of y

Engine displacement (cc)
Linear Regression Engine (cc) Power (bhp) 800 60 1000 90 1200 80 100 75 1400 1500 120 1800 160 2000 140 170 2400 180 Power (bhp) Engine displacement (cc) Optional exercise Linear regression Assume y = a . x + b Try to find suitable a and b

Exercise: using Linear Regression
y 1 2 3 7 4 10 2.5 ? y x Define a regression line of your choice Predict y for x = 2.5

Choosing the parameters right
Goal: minimizing the deviation from the actual data points y x The data points: (x1, y1), (x2, y2), … , (xm, ym) The regression line: f(x) = y = a . x + b Least-square cost function: J = Σi ( f(xi) – yi )2 Goal: minimize J over choices of a and b

How to Minimize the Cost Function?
b a Goal: minimize J for all values of a and b Start from some a = a0 and b = b0 Compute: J(a0,b0) Simultaneously change a and b towards the negative gradient and eventually hope to arrive an optimal Question: Can there be more than one optimal? Δ

Another example: Y Training set High blood sugar N Age Given that a person’s age is 24, predict if (s)he has high blood sugar Discrete values of the target variable (Y / N) Many ways of approaching this problem

Classification problem
Y High blood sugar N ? 24 Age One approach: what other data points are nearest to the new point? Other approaches?

Classification Algorithms
The k-nearest neighbor classification Naïve Bayes classification Decision Tree Linear Discriminant Analysis Logistics Regression Support Vector Machine

Classification or Regression?
Given data about some cars: engine size, number of seats, petrol / diesel, has airbag or not, price Problem 1: Given engine size of a new car, what is likely to be the price? Problem 2: Given the engine size of a new car, is it likely that the car is run by petrol? Problem 3: Given the engine size, is it likely that the car has airbags?

Classification

Example: Age, Income and Owning a flat
Training set Owns a flat Does not own a flat Monthly income (thousand rupees) Age Given a new person’s age and income, predict – does (s)he own a flat?

Example: Age, Income and Owning a flat
Training set Owns a flat Does not own a flat Monthly income (thousand rupees) Age Nearest neighbor approach Find nearest neighbors among the known data points and check their labels

Example: Age, Income and Owning a flat
Training set Owns a flat Does not own a flat Monthly income (thousand rupees) Age The 1-Nearest Neighbor (1-NN) Algorithm: Find the closest point in the training set Output the label of the nearest neighbor

The k-Nearest Neighbor Algorithm
Training set Owns a flat Does not own a flat Monthly income (thousand rupees) Age The k-Nearest Neighbor (k-NN) Algorithm: Find the closest k point in the training set Majority vote among the labels of the k points

The Maholanobis distance (1936)
Distance measures How to measure distance to find closest points? Euclidean: Distance between vectors x = (x1, … , xk) and y = (y1, … , yk) Manhattan distance: Generalized squared interpoint distance: S is the covariance matrix The Maholanobis distance (1936)

Classification setup Training data / set: set of input data points and given answers for the data points Labels: the list of possible answers Test data / set: inputs to the classification algorithm for finding labels Used for evaluating the algorithm in case the answers are known (but known to the algorithm) Classification task: Determining labels of the data points for which the label is not known or not passed to the algorithm Features: attributes that represent the data

Evaluation Test set accuracy: the correct performance measure
Accuracy = #of correct answer / #of all answers Need to know the true test labels Option: use training set itself Parameter selection (for k-NN) by accuracy on training set Overfitting: a classifier performs too good on training set compared to new (unlabeled) test data

Better validation methods
Leave one out: For each training data point x of training set D Construct training set D – x, test set {x} Train on D – x, test on x Overall accuracy = average over all such cases Expensive to compute Hold out set: Randomly choose x% (say 25-30%) of the training data, set aside as test set Train on the rest of training data, test on the test set Easy to compute, but tends to have higher variance

The k-fold Cross Validation Method
Randomly divide the training data into k partitions D1,…, Dk : possibly equal division For each fold Di Train a classifier with training data = D – Di Test and validate with Di Overall accuracy: average accuracy over all cases