Smoothing spline

Last updated

Smoothing splines are function estimates, , obtained from a set of noisy observations of the target , in order to balance a measure of goodness of fit of to with a derivative based measure of the smoothness of . They provide a means for smoothing noisy data. The most familiar example is the cubic smoothing spline, but there are many other possibilities, including for the case where is a vector quantity.

Contents

Cubic spline definition

Let be a set of observations, modeled by the relation where the are independent, zero mean random variables (usually assumed to have constant variance). The cubic smoothing spline estimate of the function is defined to be the minimizer (over the class of twice differentiable functions) of [1] [2]

Remarks:

Derivation of the cubic smoothing spline

It is useful to think of fitting a smoothing spline in two steps:

  1. First, derive the values .
  2. From these values, derive for all x.

Now, treat the second step first.

Given the vector of fitted values, the sum-of-squares part of the spline criterion is fixed. It remains only to minimize , and the minimizer is a natural cubic spline that interpolates the points . This interpolating spline is a linear operator, and can be written in the form

where are a set of spline basis functions. As a result, the roughness penalty has the form

where the elements of A are . The basis functions, and hence the matrix A, depend on the configuration of the predictor variables , but not on the responses or .

A is an n×n matrix given by .

Δ is an (n-2)×n matrix of second differences with elements:

, ,

W is an (n-2)×(n-2) symmetric tri-diagonal matrix with elements:

, and , the distances between successive knots (or x values).

Now back to the first step. The penalized sum-of-squares can be written as

where .

Minimizing over by differentiating against . This results in: [6] and

De Boor's approach

De Boor's approach exploits the same idea, of finding a balance between having a smooth curve and being close to the given data. [7]

where is a parameter called smooth factor and belongs to the interval , and are the quantities controlling the extent of smoothing (they represent the weight of each point ). In practice, since cubic splines are mostly used, is usually . The solution for was proposed by Christian Reinsch in 1967. [8] For , when approaches , converges to the "natural" spline interpolant to the given data. [7] As approaches , converges to a straight line (the smoothest curve). Since finding a suitable value of is a task of trial and error, a redundant constant was introduced for convenience. [8] is used to numerically determine the value of so that the function meets the following condition:

The algorithm described by de Boor starts with and increases until the condition is met. [7] If is an estimation of the standard deviation for , the constant is recommended to be chosen in the interval . Having means the solution is the "natural" spline interpolant. [8] Increasing means we obtain a smoother curve by getting farther from the given data.

Multidimensional splines

There are two main classes of method for generalizing from smoothing with respect to a scalar to smoothing with respect to a vector . The first approach simply generalizes the spline smoothing penalty to the multidimensional setting. For example, if trying to estimate we might use the Thin plate spline penalty and find the minimizing

The thin plate spline approach can be generalized to smoothing with respect to more than two dimensions and to other orders of differentiation in the penalty. [1] As the dimension increases there are some restrictions on the smallest order of differential that can be used, [1] but actually Duchon's original paper, [9] gives slightly more complicated penalties that can avoid this restriction.

The thin plate splines are isotropic, meaning that if we rotate the co-ordinate system the estimate will not change, but also that we are assuming that the same level of smoothing is appropriate in all directions. This is often considered reasonable when smoothing with respect to spatial location, but in many other cases isotropy is not an appropriate assumption and can lead to sensitivity to apparently arbitrary choices of measurement units. For example, if smoothing with respect to distance and time an isotropic smoother will give different results if distance is measure in metres and time in seconds, to what will occur if we change the units to centimetres and hours.

The second class of generalizations to multi-dimensional smoothing deals directly with this scale invariance issue using tensor product spline constructions. [10] [11] [12] Such splines have smoothing penalties with multiple smoothing parameters, which is the price that must be paid for not assuming that the same degree of smoothness is appropriate in all directions.

Smoothing splines are related to, but distinct from:

Source code

Source code for spline smoothing can be found in the examples from Carl de Boor's book A Practical Guide to Splines. The examples are in the Fortran programming language. The updated sources are available also on Carl de Boor's official site .

Related Research Articles

References

  1. 1 2 3 4 Green, P. J.; Silverman, B.W. (1994). Nonparametric Regression and Generalized Linear Models: A roughness penalty approach. Chapman and Hall.
  2. Hastie, T. J.; Tibshirani, R. J. (1990). Generalized Additive Models. Chapman and Hall. ISBN   978-0-412-34390-2.
  3. Craven, P.; Wahba, G. (1979). "Smoothing noisy data with spline functions". Numerische Mathematik. 31 (4): 377–403. doi:10.1007/bf01404567.
  4. Kimeldorf, G.S.; Wahba, G. (1970). "A Correspondence between Bayesian Estimation on Stochastic Processes and Smoothing by Splines". The Annals of Mathematical Statistics. 41 (2): 495–502. doi: 10.1214/aoms/1177697089 .
  5. Whittaker, E.T. (1922). "On a new method of graduation". Proceedings of the Edinburgh Mathematical Society. 41: 63–75.
  6. Rodriguez, German (Spring 2001). "Smoothing and Non-Parametric Regression" (PDF). 2.3.1 Computation. p. 12. Retrieved 28 August 2017.{{cite web}}: CS1 maint: location (link)
  7. 1 2 3 De Boor, C. (2001). A Practical Guide to Splines (Revised Edition). Springer. pp. 207–214. ISBN   978-0-387-90356-9.
  8. 1 2 3 Reinsch, Christian H (1967). "Smoothing by Spline Functions". Numerische Mathematik. 10 (3): 177–183. doi:10.1007/BF02162161.
  9. J. Duchon, 1976, Splines minimizing rotation invariant semi-norms in Sobolev spaces. pp 85–100, In: Constructive Theory of Functions of Several Variables, Oberwolfach 1976, W. Schempp and K. Zeller, eds., Lecture Notes in Math., Vol. 571, Springer, Berlin, 1977
  10. Wahba, Grace. Spline Models for Observational Data. SIAM.
  11. Gu, Chong (2013). Smoothing Spline ANOVA Models (2nd ed.). Springer.
  12. Wood, S. N. (2017). Generalized Additive Models: An Introduction with R (2nd ed). Chapman & Hall/CRC. ISBN   978-1-58488-474-3.
  13. Eilers, P.H.C. and Marx B. (1996). "Flexible smoothing with B-splines and penalties". Statistical Science. 11 (2): 89–121.
  14. Ruppert, David; Wand, M. P.; Carroll, R. J. (2003). Semiparametric Regression. Cambridge University Press. ISBN   978-0-521-78050-6.

Further reading