gpflux.layers.basis_functions.fourier_features.quadrature.gaussian#
Kernel decompositon into features and coefficients based on Gauss-Christoffel quadrature aka Gaussian quadrature.
Module Contents#
- class FourierFeaturesBase(kernel: gpflow.kernels.Kernel, n_components: int, **kwargs: Mapping)[source]#
Bases:
abc.ABC,gpflow.keras.tf_keras.layers.LayerThe base class for all Fourier feature layers, used for both random Fourier feature layers and quadrature layers. We subclass
tf.keras.layers.Layer, so we must provide :method:`build` and :method:`call` methods.- Parameters:
kernel – kernel to approximate using a set of Fourier bases.
n_components – number of components (e.g. Monte Carlo samples, quadrature nodes, etc.) used to numerically approximate the kernel.
- call(inputs: gpflow.base.TensorType) tf.Tensor[source]#
Evaluate the basis functions at
inputs.- Parameters:
inputs – The evaluation points, a tensor with the shape
[N, D].- Returns:
A tensor with the shape
[N, M], or shape ``[P, N, M]’’ in the multioutput case.
- compute_output_shape(input_shape: gpflux.types.ShapeType) tf.TensorShape[source]#
Computes the output shape of the layer. See tf.keras.layers.Layer.compute_output_shape().
- get_config() Mapping[source]#
Returns the config of the layer. See tf.keras.layers.Layer.get_config().
- _bases_concat(X: gpflow.base.TensorType, W: gpflow.base.TensorType) gpflow.base.TensorType[source]#
Feature map for random Fourier features (RFF) as originally prescribed by Rahimi & Recht, 2007 [RR07]. See also [SS15] for additional details.
- class QuadratureFourierFeatures(kernel: gpflow.kernels.Kernel, n_components: int, **kwargs: Mapping)[source]#
Bases:
gpflux.layers.basis_functions.fourier_features.base.FourierFeaturesBaseThe base class for all Fourier feature layers, used for both random Fourier feature layers and quadrature layers. We subclass
tf.keras.layers.Layer, so we must provide :method:`build` and :method:`call` methods.- Parameters:
kernel – kernel to approximate using a set of Fourier bases.
n_components – number of components (e.g. Monte Carlo samples, quadrature nodes, etc.) used to numerically approximate the kernel.
- build(input_shape: gpflux.types.ShapeType) None[source]#
Creates the variables of the layer. See tf.keras.layers.Layer.build().