regression and interpolation - iit bombay

34
Regression and Interpolation CS 740 Ajit Rajwade 1 of 20

Upload: others

Post on 16-Oct-2021

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Regression and Interpolation - IIT Bombay

Regression and Interpolation

CS 740

Ajit Rajwade

1 of 20

Page 2: Regression and Interpolation - IIT Bombay

Problem statements

• Consider a set of N points {(xi,yi)}, 1 ≤ i ≤ N.

• Suppose we know that these points actually lie on a function of the form y = f(x;a) where f(.) represents a function family and arepresents a set of parameters.

• For example: f(x) is a linear function of x, i.e. of the form y = f(x) = mx+c. In this case, a = (m,c).

2

Page 3: Regression and Interpolation - IIT Bombay

Problem statements

• Example 2: f(x) is a quadratic function of x, i.e. of the form y = f(x) = px2+qx+r. In this case, a = (p,q,r).

• Example 3: f(x) is a trigonometric function of x, i.e. of the form f(x) = p sin(qx+r). In this case, a = (p,q,r).

• In each case, we assume knowledge of the function family. But we do not know the function parameters, and would like to estimate them from {(xi,yi)}.

• This is the problem of fitting a function (of known family) to a set of points.

3

Page 4: Regression and Interpolation - IIT Bombay

Problem statements

• In function regression (or approximation), we want to find a such that for all i, f(xi;a)≈yi.

• In function interpolation, we want to fit some function such that f(xi;a)=yi.

4

Page 5: Regression and Interpolation - IIT Bombay

Polynomial Regression

• A polynomial of degree n is a function of the form:

• Polynomial regression is the task of fitting a polynomial function to a set of points.

n

n

in

i

i xaxaxaaxay

...2

210

0

5

Page 6: Regression and Interpolation - IIT Bombay

Polynomial regression

• Let us assume that x is the independent variable, and y is the dependent variable.

• In the point set {(xi,yi)} containing N points, we will assume that the x-coordinates of the points are available accurately, whereas the y-coordinates are affected by measurement error – called as noise.

6

Page 7: Regression and Interpolation - IIT Bombay

7

Page 8: Regression and Interpolation - IIT Bombay

Least Squares Polynomial regression

• If we assume the polynomial is linear, we have yi = mxi + c + ei, where ei is the noise in yi. We want to estimate m and c.

• We will do so by minimizing the following w.r.t. m and c:

• This is called as least squares regression.

N

i

ii cmxy0

2)(

8

Page 9: Regression and Interpolation - IIT Bombay

Least Squares Polynomial regression

• In matrix, form we can write the following

yXyXX)(Xa

Xay

T1T

NNN e

e

e

c

m

x

x

x

y

y

y

.

.

1

..

..

1

1

.

.

2

1

2

1

2

1 The solution will exist provided there are at least 2 non-coincident points. Basically, XTXmust be non-singular.

9

Page 10: Regression and Interpolation - IIT Bombay

Least Squares Polynomial regression

• For higher order polynomials, we have:

yXyXX)(Xa

Xay

T1T

N

n

NN

n

N

n

n

N e

e

e

a

a

a

a

xxx

xxx

xxx

y

y

y

.

..

.

1..

....

....

1..

1..

.

.

2

1

0

1

2

2

2

2

22

1

2

11

2

1

The solution will exist provided there are at least n non-coincident, non-collinear points. Basically, XTXmust be non-singular.

10

Page 11: Regression and Interpolation - IIT Bombay

Least Squares Polynomial regression

• Regardless of the order of the polynomial, we are dealing with a linear form of regression –because in each case, we are solving an equation of the form y ≈ Xa.

• There are some assumptions made on the errors in the measurement of y. We will not go into those details.

11

Page 12: Regression and Interpolation - IIT Bombay

Least Squares Polynomial Regression: Geometric Interpretation

• The least squares solution seeks a set of polynomial coefficients that minimize the sum of the squared difference between the measured y coordinate of each point and the y coordinate if the assumed polynomial model was strictly obeyed, i.e.

2

2}{

0

2

0

}{

min

)(min

Xay

xy

a

N

i

n

j

j

ijia aj

12

Page 13: Regression and Interpolation - IIT Bombay

Least Squares Polynomial Regression: Geometric Interpretation

• The least squares solution seeks a set of polynomial coefficients that minimize the sum of the squared difference between the measured y coordinate of each point and the y coordinate if the assumed polynomial model was strictly obeyed, i.e. we are trying to find a model that will minimize vertical distances (distances along the Y axis).

13

Page 14: Regression and Interpolation - IIT Bombay

Weighted least squares: Row weighting

2

2}{

0

2

0

}{

min

)(min

Xay

xy

a

N

i

n

j

j

ijia aj

),...,,(

min

)(min

21

2

2}{

1

2

0

}{

N

N

i

n

j

j

ijiia

wwwdiag

awj

W

) XaW(y

xy

a

Different instances of y get different weights (higher the weight the more the importance to that instance!)

WyWXWXWXa

WXaWy

TT )()(1

14

Page 15: Regression and Interpolation - IIT Bombay

Regularization

• In some cases, the system of equations may be ill-conditioned.

• In such cases, there may be more than one solution.

• It is common practice to choose a “simple” or “smooth” solution.

• This practice of choosing a “smooth” solution is called as regularization.

• Regularization is a common method used in several problems in machine learning, computer vision and statistics.

15

Page 16: Regression and Interpolation - IIT Bombay

Regularization: Ridge regression

2

2

2

2}{min aXaya Penalize (or discourage) solutions in which the magnitude of vector a is too high. The parameter λis called the regularization parameter. Larger the value of λ, the greater the encouragement to find a smooth solution.

yXaIXX TT Taking derivative w.r.t. a, we get this regularized solution for a.

r

i ii

T

iii

S

S

12

yUaV

yUSaVIS

yUVSaVISV

yUVSaIVVS

USVX

T

TT2

TT2

TT2

T

16

Page 17: Regression and Interpolation - IIT Bombay

Regularization: Tikhonov regularization2

2

2

2}{min BaXaya

Penalize (or discourage) solutions in which the magnitude of vector Ba is too high. The parameter λ is called the regularization parameter. Larger the value of λ, the greater the encouragement to find a smooth solution. The matrix B can be chosen in different ways – very commonly, one penalizes large values of the gradient of vector a, given as follows:

12123121 .. nnnn aaaaaaaaaa

In such a case, B is given as follows:

110...0

0110..0

.......

.......

0...11.

0...011

0000001

B

yXaBBXX TTT

17

Page 18: Regression and Interpolation - IIT Bombay

Total Least Squares

• There are situations when there are errors in not just the yi values, but in the xi values as well.

• In such a situations, least squares is not applicable – instead a method called total least squares is used.

• Total least squares solutions heavily use the SVD – so this is one more application of the SVD for you!

18

Page 19: Regression and Interpolation - IIT Bombay

Total Least Squares

• Consider the equation y ≈ Xa for polynomial regression.

• We want to find a, in the case where both yand X have errors (in the earlier case, only yhad errors).

• So we seek to find a new version of y (denoted y*) close to y, and a new version of X(denoted X*) close to X, such that y*=X*a.

• Thus we want (see next slide):

19

Page 20: Regression and Interpolation - IIT Bombay

. i.e.,1

Also

Theorem). Young-(Eckhart of SVD from

by given , toionapproximat 1rank best theis , minimize To

.2 thanless is ofrank column the

zeros, allnot is 1

vector theAs

).2( is of Size ).1( is of Size

.1

that such Minimize

. Define

. that such

minimize to)( Find

2,2

2,1:1

2

1

1

2

2

22

2

nn

nn

n

t

ii

n

i

i

F

F

F

n

n

nNnN

v

vav

a

ZvuZ*

Z*Z*ZZ

*Z

a

*Z*

0a

*Z*ZZ

y)|(XZy*),|(X*Z*

a*Xy**XX*yy

X*y* ,

X

20

Page 21: Regression and Interpolation - IIT Bombay

Interpolation

• In the case of interpolation, we want the function being fit to pass through the given data-points exactly.

• The type of interpolation is determined by whether it is a function of one or more variables, as well as the type of function.

• Let us consider lower-order polynomial interpolation in 1D.

21

Page 22: Regression and Interpolation - IIT Bombay

Interpolation• Given a set of N points lying on a curve, we

can perform linear interpolation by simply joining consecutive points with a line.

22

Page 23: Regression and Interpolation - IIT Bombay

Interpolation

• The problem with this approach is that the slopes of adjacent lines change abruptly at each data-point – called as C1 discontinuity.

• This can be resolved by stitching piecewise quadratic polynomials between consecutive point pairs and requiring that

Adjacent polynomials actually pass through the point (interpolatory condition)

Adjacent polynomials have the same slope at that point (C1 continuity condition)

23

Page 24: Regression and Interpolation - IIT Bombay

Interpolation

• We could go one step further and require that Adjacent polynomials have the same second derivative

at that point (C2 continuity condition)• This requires that the polynomials be piecewise cubic

(degree 3) at least.• This type of interpolation is called cubic-spline

interpolation and is very popular in graphics and image processing.

• The data-points (where the continuity conditions) are imposed are called as knots or control points.

• A cubic spline is a piecewise polynomial that is twice continuously differentiable (including at the knots).

24

Page 25: Regression and Interpolation - IIT Bombay

Cubic spline interpolation

• A curve is parameterized as y = f(t) where ‘t’ is the independent variable.

• Consider N points (ti,yi) where i ranges from 1 to N.

• We will have N-1 cubic polynomials, each of the form yi(t) = ai + bi t + ci t2 + di t3 where iranges from 1 to N-1.

• Thus the overall function y(t) is equal to yi(t)where t lies in between ti and ti+1.

25

Page 26: Regression and Interpolation - IIT Bombay

Cubic spline interpolation• The total number of unknowns here is 4(N-1)

(why?).

• To determine them, we need to specify 4(N-1) equations.

• As the curve must pass through the N points, we get N equations as follows:

263

1

2

111

3

1

2

111

3

21

2

212112

3

11

2

111111

.

.

NNNNNNNN

iiiiiiii

tdtctbay

tdtctbay

tdtctbay

tdtctbay

Page 27: Regression and Interpolation - IIT Bombay

Cubic spline interpolation

• The interpolatory conditions at the N-2 interior points yield N-2 equations of the form:

27

3

11

2

11111

3

12

2

121221

323

1

2

111

3

22

2

22222

3

21

2

212112

.

.

NNNNNNNNNNNNNNN

iiiiiiiiiiiiiii

tdtctbatdtctbay

tdtctbatdtctbay

tdtctbatdtctbay

Page 28: Regression and Interpolation - IIT Bombay

Cubic spline interpolation

• The C1 continuity conditions at the N-2 interior points yield N-2 equations of the form:

28

2

11111

2

12122

22

111

2

22222

2

21211

3232

.

3232

.

3232

NNNNNNNNNN

iiiiiiiiii

tdtcbtdtcb

tdtcbtdtcb

tdtcbtdtcb

Page 29: Regression and Interpolation - IIT Bombay

Cubic spline interpolation

• The C2 continuity conditions at the N-2 interior points yield N-2 equations of the form:

• The total number of equations is N+3(N-2) = 4N-6 whereas there are 4N-4 unknowns.

29

111122

11

222211

6262

.

6262

.

6262

NNNNNN

iiiiii

tdctdc

tdctdc

tdctdc

Page 30: Regression and Interpolation - IIT Bombay

Cubic spline interpolation

• We need two more equations. • One possible set of conditions is to impose that the

second derivative of the curve at the two end-points be zero. This gives two more equations of the form:

• A cubic spline with these two conditions is called a natural cubic spline and these conditions are called natural boundary conditions.

• We now have 4(N-1) linear equations and 4(N-1) unknowns.

• Solving the linear system gives us the cubic spline!

30

062

062

11

111

NNN tdc

tdc

Page 31: Regression and Interpolation - IIT Bombay

Cubic spline interpolation

• For the case of N = 3 points, the system of equations looks as follows:

31

0

0

0

00

62000000

00006200

62006200

32103210

10000

10000

00001

00001

3

2

2

1

2

2

2

2

1

1

1

1

3

1

22

2

22

2

22

3

3

2

33

3

2

2

22

3

2

2

22

3

1

2

11

y

y

y

y

d

c

b

a

d

c

b

a

t

t

tt

tttt

ttt

ttt

ttt

ttt

Page 32: Regression and Interpolation - IIT Bombay

32

Page 33: Regression and Interpolation - IIT Bombay

33

1 1.5 2 2.5 310

11

12

13

14

15

16

17

18

19

A cubic-spline fit to three points (1,10), (2,18) and (3,11) – marked with red asterisks.

Page 34: Regression and Interpolation - IIT Bombay

References

• Scientific Computing, Michael Heath

• http://en.wikipedia.org/wiki/Total_least_squares

34