Curve fitting: What does LAR do?

23 次查看(过去 30 天)
Hello, when conducting a nonlinear least squares regression, one can select 'LAR' (=least absolute residuals) under 'fitoptions'. This is a bit confusing because afaik LAR by definition does NOT minimize squared, but linear residuals. So if 'LAR' is selected, the regression is actually not based on nonlinear least squares, right?
Greetings Vince
  1 个评论
Tamir Suliman
Tamir Suliman 2016-12-1
I think this has been answered in
https://www.mathworks.com/matlabcentral/answers/81143-fit-and-polyfit-lar-vs-least-squares

请先登录,再进行评论。

采纳的回答

John D'Errico
John D'Errico 2016-12-1
编辑:John D'Errico 2016-12-1
I don't understand what is confusing. The sum of the absolute values of the residuals is clearly NOT least squares, thus a minimum sum of squares of residuals. If it was, there would be no point in offering it as an alternative.
Least squares puts more importance on the large residuals. For example, suppose you have two cases, based on two sets of parameters. We need consider only two points.
Case 1: Resid1 = 1, Resid2 = 1
case 2: Resid1 = 0, Resid2 = 2
For a least squares solver, the two cases are very different. Case 1 would be preferred, since the sum of squares is 2, versus 4 for the latter. So whatever set of parameters generated case 1 will be chosen as better.
In a LAR scheme (also called MAD, for minimum absolute deviations) the sum of the absolute residuals are identical. Neither solution would be preferred over the other.
One reason one might use such a scheme is it will be less sensitive to outliers in the data, whereas least squares tends to be jerked around by outliers quite easily.
  1 个评论
able_archer
able_archer 2016-12-1
Thanks for your answer.
So LAR does indeed not use Least Squares. What confused me about it is that although you set 'Robust' to 'LAR', you still have 'NonlinearLeastSquares' as 'Method' (see below) which could make one think 'LAR' was a nonlinear least squares method though this is not the case.
Normalize: 'off'
Exclude: []
Weights: []
Method: 'NonlinearLeastSquares'
Robust: 'LAR'
StartPoint: [0.1200 0.8500 75 0]
Lower: [-Inf -Inf -Inf -Inf]
Upper: [Inf Inf Inf Inf]
Algorithm: 'Trust-Region'
DiffMinChange: 1.0000e-08
DiffMaxChange: 0.1000
Display: 'Notify'
MaxFunEvals: 10000
MaxIter: 10000
TolFun: 1.0000e-12
TolX: 1.0000e-12

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Linear and Nonlinear Regression 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by