Iteratively reweighted least squares

The method of iteratively reweighted least squares (IRLS) is used to solve certain optimization problems. It solves objective functions of the form:


 * $$\underset{\boldsymbol\beta} {\operatorname{arg\,min}} \sum_{i=1}^n w_i (\boldsymbol\beta) \big| y_i - f_i (\boldsymbol\beta) \big|^2, $$

by an iterative method in which each step involves solving a weighted least squares problem of the form:


 * $$\boldsymbol\beta^{(t+1)} = \underset{\boldsymbol\beta} {\operatorname{arg\,min}} \sum_{i=1}^n w_i (\boldsymbol\beta^{(t)}) \big| y_i - f_i (\boldsymbol\beta) \big|^2. $$

IRLS is used to find the maximum likelihood estimates of a generalized linear model, and in robust regression to find an M-estimator, as a way of mitigating the influence of outliers in an otherwise normally-distributed data set. For example, by minimizing the least absolute error rather than the least square error.

Although not a linear regression problem, Weiszfeld's algorithm for approximating the geometric median can also be viewed as a special case of iteratively reweighted least squares, in which the objective function is the sum of distances of the estimator from the samples.

One of the advantages of IRLS over linear and convex programming is that it can be used with Gauss–Newton and Levenberg–Marquardt numerical algorithms.

L1 minimization for sparse recovery
IRLS can be used for $\ell$1 minimization and smoothed $\ell$p minimization, p < 1, in the compressed sensing problems. It has been proved that the algorithm has a linear rate of convergence for $$\ell$$1 norm and superlinear for $$\ell$$t with t < 1, under the restricted isometry property, which is generally a sufficient condition for sparse solutions.

Lp norm linear regression
To find the parameters β = (β1, …,βk)T which minimize the Lp norm for the linear regression problem,



\underset{\boldsymbol \beta}{ \operatorname{arg\,min} } \big\| \mathbf y - X \boldsymbol \beta \|_p = \underset{\boldsymbol \beta}{ \operatorname{arg\,min} } \sum_{i=1}^n \left| y_i - X_i \boldsymbol\beta \right|^p , $$

the IRLS algorithm at step t+1 involves solving the weighted linear least squares problem:



\boldsymbol\beta^{(t+1)} = \underset{\boldsymbol\beta}{ \operatorname{arg\,min} } \sum_{i=1}^n w_i^{(t)} \left| y_i - X_i \boldsymbol\beta \right|^2 = (X^{\rm T} W^{(t)} X)^{-1} X^{\rm T} W^{(t)} \mathbf{y}, $$

where W(t) is the diagonal matrix of weights with elements:


 * $$w_i^{(t)} = \big|y_i - X_i \boldsymbol \beta ^{(t)} \big|^{p-2} . $$

In the case p = 1, this corresponds to least absolute deviation regression (in this case, the problem would be better approached by use of linear programming methods).