Abstract base class for least squares weighting functions used in the
Iteratively Reweighted Least Squares algorithm.
Namespace:
CenterSpace.NMath.MatrixAssembly: NMath (in NMath.dll) Version: 5.1.0.0
Syntax
| C# |
|---|
[SerializableAttribute] public abstract class DoubleLeastSqWeightingFunction : IDoubleLeastSqWeightingFunction, ICloneable |
| Visual Basic (Declaration) |
|---|
<SerializableAttribute> _ Public MustInherit Class DoubleLeastSqWeightingFunction _ Implements IDoubleLeastSqWeightingFunction, ICloneable |
| Visual C++ |
|---|
[SerializableAttribute] public ref class DoubleLeastSqWeightingFunction abstract : IDoubleLeastSqWeightingFunction, ICloneable |
Remarks
Consider a least square problem of the form
Ax = b
that is is to be solved using iteratively Reweighted least squares.
Typical weighting functions used in iteratively Reweighted least squares
are a function of the residuals from the previous iteration which have
been adjusted. The base class DoubleLeastSqWeightingFunction
provides methods for calculating the adjusted residual from the matrix
A and actual residuals according to the following formula:
adjustedResiduals = residuals / (tuningConstant*s*sqrt(1 - h)). Where,
h is the vector of leverage values. The leverage values are the
main diagonal of the hat matrix H = A((A'A)^-1)A'.
s is an estimate of the standard deviation of the error term given by:
s = MAD / 0.6745
where MAD is the median absolute deviation of the residuals from
their median. The constant 0.6745 makes the estimate unbiased for the
normal distribution.
tuningConstant is a tuning constant by which the residuals are divided before
computing weights. Decreasing the tuning constant increases the downweight
assigned to large residuals and increasing the tuning constant decreases
the downweight assigned to large residuals.
Inheritance Hierarchy
System..::.Object
CenterSpace.NMath.Matrix..::.DoubleLeastSqWeightingFunction
CenterSpace.NMath.Matrix..::.DoubleBisquareWeightingFunction
CenterSpace.NMath.Matrix..::.DoubleFairWeightingFunction
CenterSpace.NMath.Matrix..::.DoubleLeastSqWeightingFunction
CenterSpace.NMath.Matrix..::.DoubleBisquareWeightingFunction
CenterSpace.NMath.Matrix..::.DoubleFairWeightingFunction