3
$\begingroup$

My understanding: choosing knots for a B-spline can be an arcane task filled with guessing and eye-balling. Penalized B-splines attempt to do away with the choice of knot picking, fitting a spline by:

1) Using many basis B-splines (yes, that sounds oxymoronic since bases over a vector space have the same number of elements -- but the idea is that we consider a linear combination of many B-splines)

2) Penalizing the coefficients of these basis B-splines using some penalty while fitting them to some data set.


Assuming that my understanding above is correct: is there any other point to using penalized B-splines?

$\endgroup$
1
$\begingroup$

I think that another important point is related to the interpolation and extrapolation properties of Penalized B-splines (aka P-splines).

A really nice discussion can be found here: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.128.8312&rep=rep1&type=pdf

Citing the authors,

When interpolating, the B-spline coefficients form a sequence of degree $2d − 1$, when extrapolating, of degree $d−1$. Thus, when $d = 2$, we get cubic interpolation and linear extrapolation

where $d$ is the order of the difference penalty.

$\endgroup$
0
$\begingroup$

This is basically correct, but I think you're under-stating it a bit. Point (2) is a really big deal, though, since you can abstract away worrying about how and where to place your knots: place a lot of knots, then choose the correct level of penalization. This can be done with cross-validation or alternative methods which directly optimize a fitness criterion.

$\endgroup$
  • 1
    $\begingroup$ you don't even have to cross-validate, modern packages for estimation of penalized splines can also directly optimize ML or REML criterion (e.g. mgcv in R) $\endgroup$ – adibender May 21 at 16:14
  • 1
    $\begingroup$ @adibender Good point. Revised. $\endgroup$ – Reinstate Monica May 21 at 16:24

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.