[SciPy-User] scipy.interpolate.rbf sensitive to input noise ?
Thu Feb 18 09:48:51 CST 2010
On Thu, Feb 18, 2010 at 09:19, denis <email@example.com> wrote:
> A followup to the 15feb thread "creating a 3D surface plot from
> collected data":
> the doc for scipy.interpolate.rbf says that 3 of the 7 radial
> use a scale paramater `epsilon`, 4 do not.
> Odd -- how can some be scale-free ?
> Running rbf on 100 1d random.uniform input points
> (after changing the linalg.solve in rbf.py to lstsq)
Why would you do this? This does not magically turn Rbf interpolation
into a smoothing approximation. Use the "smooth" keyword to specify a
> shows that all but linear and gaussian are noisy,
> giving interpolants way outside the input range:
> N: 100 ngrid: 50 sigma: 0.1
> # min max max |delta| Rbf
> -1.0 1.0 0.5 gaussian
> -1.0 1.2 0.3 linear
> -1.4 2.1 2.5 thin-plate
> -1.0 2.2 3.0 inverse multiquadric
> -1.0 2.4 3.2 multiquadric
> -2.1 12.8 7.4 quintic
> -10.6 7.0 11.7 cubic
> Should Rbf be moved off to noisymethods/... until experts can look it
> or have I done something stupid ?
I'm not sure what else you would expect from interpolating uniform
random noise. Many interpolation methods tend to give such
oscillations on such data.
"I have come to believe that the whole world is an enigma, a harmless
enigma that is made terrible by our own mad attempt to interpret it as
though it had an underlying truth."
-- Umberto Eco
More information about the SciPy-User