View source on GitHub
|
Preconditioner based on M ~ v v^t using M's largest eigenvector v.
Inherits From: LowRankPreconditioner, Preconditioner
tfp.experimental.fastgp.preconditioners.RankOnePreconditioner(
M: tf2jax.linalg.LinearOperator,
key: tfp.experimental.fastgp.fast_gp.Array,
num_iters: int = 10,
**unused_kwargs
)
Methods
from_lowrank
@classmethodfrom_lowrank( M, low_rank )
Alternate constructor when low_rank is already made.
full_preconditioner
full_preconditioner() -> tf2jax.linalg.LinearOperator
Returns the preconditioner.
log_det
log_det() -> tf2jax.linalg.LinearOperator
The log absolute value of the determinant of the preconditioner.
preconditioned_operator
preconditioned_operator() -> tf2jax.linalg.LinearOperator
Returns the combined action of M and the preconditioner.
trace_of_inverse_product
trace_of_inverse_product(
A: tfp.experimental.fastgp.fast_gp.Array
)
Returns tr( P^(-1) A ) for a n x n, non-batched A.
tree_flatten
tree_flatten()
tree_unflatten
@classmethodtree_unflatten( unused_aux_data, children )
View source on GitHub