Objective¶
sgptools.objectives.Objective
¶
Base class for objective functions used in optimization.
Subclasses must implement the __call__
method to define the objective.
Source code in sgptools/objectives.py
__call__(X)
¶
Computes the objective value for a given set of input points X
.
This method must be implemented by subclasses.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
X
|
Tensor
|
The input points for which the objective is to be computed. Shape: (M, D) where M is number of points, D is dimension. |
required |
Returns:
Type | Description |
---|---|
Tensor
|
tf.Tensor: The computed objective value. |
Raises:
Type | Description |
---|---|
NotImplementedError
|
If the method is not implemented by a subclass. |
Source code in sgptools/objectives.py
__init__(X_objective, kernel, noise_variance, jitter=1e-06, **kwargs)
¶
Initializes the base objective. This constructor primarily serves to define the expected parameters for all objective subclasses.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
X_objective
|
ndarray
|
The fixed set of data points (e.g., candidate locations or training data points) against which MI is computed. Shape: (N, D). |
required |
kernel
|
Kernel
|
The GPflow kernel function to compute covariances. |
required |
noise_variance
|
float
|
The observed data noise variance, which is added to the jitter. |
required |
jitter
|
float
|
A small positive value to add for numerical stability to covariance matrix diagonals. Defaults to 1e-6. |
1e-06
|
**kwargs
|
Any
|
Arbitrary keyword arguments. |
{}
|
Source code in sgptools/objectives.py
update(kernel, noise_variance)
¶
Updates the kernel and noise variance for the MI objective. This method is crucial for optimizing the GP hyperparameters externally and having the objective function reflect those changes.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
kernel
|
Kernel
|
The updated GPflow kernel function. |
required |
noise_variance
|
float
|
The updated data noise variance. |
required |