Skip to content

RBF based interpolation with local neighborhood support #422

@kalosu

Description

@kalosu

Hello there friends from Keops,

First at all, thanks a lot for putting this nice library available to everyone.

I am trying to use pykeops to re-implement the RBF interpolation function available in scipy with a local neighborhood support.

After reading a bit through the documentation of keops, I see that I can nicely solve linear systems by assembling the local kernel function associated to the RBF interpolation.

However, if I try to stick to the fomulation given in the scipy documentation, for each neighborhood, I need to solve the following linear system:

$$(K(y,y) + \lambda I)a + P(y)b = d $$ $$P(y)^Ta = 0 $$

in this case $K(y,y)$ falls nicely within what I think can be done with keops. However, I am not sure if there would be support for assembling the full block linear system in this case.

I am thinking of using a torch.nn.Module which can serve as some sort of LinearOperator and pass this to an iterative solver available in torch, but here is where I am not really sure if this would work.

At the end, my goal is to avoid realizing the full dense matrix associated to $K(y,y$ If I try to solve this system via the standard torch.linalg.solve, then I guess using the symbolic definition of $K(y,y)$ looses its original purpose and value, isnt it?

Maybe you have some recommendations/suggestions on where to look/refer to to solve this implementation.

Thanks for the feedback.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions