geomstats.varifold.keops package#

Submodules#

geomstats.varifold.keops.genred module#

Kernels and kernel pairings using KeOps genred.

geomstats.varifold.keops.genred.BinetKernel()[source]#

Binet kernel.

\[K(u, v) = \langle u, v \rangle^2\]
geomstats.varifold.keops.genred.CauchyKernel(sigma)[source]#

Cauchy kernel.

\[K(x, y)=\frac{1}{1+\|x-y\|^2 / \sigma^2}\]
Parameters:

sigma (float) – Kernel parameter.

class geomstats.varifold.keops.genred.GaussianBinetPairing(sigma)[source]#

Bases: Pairing

Instantiate a Gaussian–Binet kernel pairing.

This pairing is defined by

\[K(x, y, u, v) = exp(-||x - y||^2 / sigma^2) <u, v>^2\]
Parameters:

sigma (float) – Positive bandwidth parameter of the Gaussian kernel.

kernel_prod(*kernel_args)[source]#

Apply the kernel pairing to a vector.

geomstats.varifold.keops.genred.GaussianKernel(sigma)[source]#

Gaussian kernel.

\[K(x, y)=e^{-\|x-y\|^2 / \sigma^2}\]
Parameters:

sigma (float) – Kernel parameter.

geomstats.varifold.keops.genred.LinearKernel()[source]#

Linear kernel.

\[K(u, v) = \langle u, v \rangle\]
geomstats.varifold.keops.genred.OrientedGaussianKernel(sigma=1.0)[source]#

Gaussian kernel restricted to the hypersphere.

\[K(u, v)=e^{2 (\langle u, v \rangle / - 1) / \sigma^2}\]
Parameters:

sigma (float) – Kernel parameter.

geomstats.varifold.keops.genred.UnorientedGaussianKernel(sigma=1.0)[source]#

Gaussian kernel restricted to the hypersphere.

\[K(u, v)=e^{2 (\langle u, v \rangle ^2 - 1) / \sigma^2 }\]
Parameters:

sigma (float) – Kernel parameter.

geomstats.varifold.keops.lazy module#

Kernels and kernel pairings using lazy KeOps.

geomstats.varifold.keops.lazy.BinetKernel(init_index=0, dim=3)[source]#

Binet kernel.

\[K(u, v) = \langle u, v \rangle^2\]

Generates the expression: Square((u|v)).

Parameters:
  • init_index (int) – Index of first symbolic variable.

  • dim (int) – Ambient dimension.

geomstats.varifold.keops.lazy.CauchyKernel(sigma=1.0, init_index=0, dim=3)[source]#

Cauchy kernel.

\[K(x, y)=\frac{1}{1+\|x-y\|^2 / \sigma^2}\]

Generates the expression: IntCst(1)/(IntCst(1)+SqDist(x,y)*a).

Parameters:
  • sigma (float) – Kernel parameter.

  • init_index (int) – Index of first symbolic variable.

  • dim (int) – Ambient dimension.

geomstats.varifold.keops.lazy.GaussianBinetKernel(sigma=1.0, init_index=0, dim=3)[source]#

Gaussian-Binet kernel.

\[K(x, y, u, v)=e^{-\|x-y\|^2 / \sigma^2} \langle u, v \rangle^2\]

Generates the expression: Exp(-SqDist(x,y)*a)*Square((u|v)).

Parameters:
  • sigma (float) – Kernel parameter.

  • init_index (int) – Index of first symbolic variable.

  • dim (int) – Ambient dimension.

geomstats.varifold.keops.lazy.GaussianKernel(sigma=1.0, init_index=0, dim=3)[source]#

Gaussian kernel.

\[K(x, y)=e^{-\|x-y\|^2 / \sigma^2}\]

Generates the expression: Exp(-SqDist(x,y)*a).

Parameters:
  • sigma (float) – Kernel parameter.

  • init_index (int) – Index of first symbolic variable.

  • dim (int) – Ambient dimension.

geomstats.varifold.keops.lazy.LinearKernel(init_index=0, dim=3)[source]#

Linear kernel.

\[K(u, v) = \langle u, v \rangle\]

Generates the expression: (u|v).

Parameters:
  • init_index (int) – Index of first symbolic variable.

  • dim (int) – Ambient dimension.

geomstats.varifold.keops.lazy.RestrictedGaussianKernel(sigma=1.0, oriented=False, init_index=0, dim=3)[source]#

Gaussian kernel restricted to the hypersphere.

If unoriented:

\[K(u, v)=e^{2 (\langle u, v \rangle ^2 - 1) / \sigma^2 }\]

If oriented:

\[K(u, v)=e^{2 (\langle u, v \rangle / - 1) / \sigma^2}\]

Generates the expression:

  • oriented: Exp(IntCst(2)*a*((u|v)-IntCst(1)))

  • unoriented: Exp(IntCst(2)*a*(Square((u|v))-IntCst(1)))

Parameters:
  • sigma (float) – Kernel parameter.

  • oriented (bool) – If False, uses squared inner product.

  • init_index (int) – Index of first symbolic variable.

  • dim (int) – Ambient dimension.

class geomstats.varifold.keops.lazy.SurfaceKernelPairing(kernel)[source]#

Bases: Pairing

A kernel pairing on surfaces.

Parameters:
  • position_kernel (pykeops.LazyTensor)

  • tangent_kernel (pykeops.LazyTensor)

  • signal_kernel (pykeops.LazyTensor)

Module contents#