Skip to content

Is it possible to extend Gibbs for 2d? #6813

Open
@ferrine

Description

@ferrine
Member

In the original implementation, there is reference that Gibbs kernel is only supported for 1d inputs.

class Gibbs(Covariance):

An interesting application is 2d, where there are spatial coordinates and varying length scale due to geological differences or regional factors.

@bwengals what do you think?

Activity

changed the title [-]Is it possible to use Gibbs for 2d?[/-] [+]Is it possible to extend Gibbs for 2d?[/+] on Jul 4, 2023
bwengals

bwengals commented on Jul 12, 2023

@bwengals
Contributor

That would be interesting, and yes a Gibbs kernel works in 2d. The code in the repo you linked just says its "untested" in 2d but I bet it could be made to work pretty easily, if it doesn't already. Another option to get nonstationary behavior is by warping the inputs, so instead of passing x pass some function of x w(x, theta). All the GP codes should work with pytensor inputs, so this is compatible with approximations like HSGP. The warping function does have to be monotonic though.

ferrine

ferrine commented on Jul 17, 2023

@ferrine
MemberAuthor

The warping function does have to be monotonic though.

That's an important take. So in case I have non homogenous lengthscale that can get smaller, than bigger, that would not work. Maybe instead there should be some Riemannian theory involved to put this GP onto the tangent space, right?

bwengals

bwengals commented on Jul 24, 2023

@bwengals
Contributor

lengthscale that can get smaller, than bigger

You can still do that via warping, v]https://www.pymc.io/projects/examples/en/latest/gaussian_processes/GP-MeansAndCovs.html#applying-an-arbitrary-warping-function-on-the-inputs

Monotonic, but large slope = small lengthscale, small slope = long lengthscale

ferrine

ferrine commented on Jul 25, 2023

@ferrine
MemberAuthor

What do you suggest for non monotonous?

ferrine

ferrine commented on Jul 25, 2023

@ferrine
MemberAuthor

Ah, seems like I get that,

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    GPGaussian Process

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      No branches or pull requests

        Participants

        @bwengals@ferrine@ricardoV94

        Issue actions

          Is it possible to extend Gibbs for 2d? · Issue #6813 · pymc-devs/pymc