Arbitrary tangent space when no more-efficient special case applies.
Inherits From: TangentSpace
tfp.experimental.tangent_spaces.GeneralSpace(
    basis, computed_log_volume=None
)
Args | 
basis
 | 
Basis object representing a basis of shape
[N, B1, ..., Bk, D1, ... Dl], where N is the
number of bases vectors, Bi are batch dimensions and Di refer to
the dimensions that this basis lives in.
 | 
computed_log_volume
 | 
Optional Tensor of shape [B1, ..., Bk]. Computed
log-volume coefficient.
Default None.
 | 
Methods
View source
transform_coordinatewise(
    x, f, **kwargs
)
Same as transform_dimension_preserving, for a coordinatewise f.
Default falls back to transform_dimension_preserving, which may
be overridden in subclasses.
| Args | 
x
 | 
same as in transform_dimension_preserving.
 | 
f
 | 
same as in transform_dimension_preserving.
 | 
**kwargs
 | 
same as in transform_dimension_preserving.
 | 
| Returns | 
log_density
 | 
A Tensor representing the log density correction of f at x
 | 
space
 | 
A TangentSpace representing the tangent to fM at f(x)
 | 
| Raises | 
NotImplementedError
 | 
if the TangentSpace subclass does not implement
transform_dimension_preserving.
 | 
View source
transform_dimension_preserving(
    x, f, **kwargs
)
Same as transform_general, assuming f goes from R^n to R^n.
Default falls back to transform_general, which may be overridden
in subclasses.
| Args | 
x
 | 
same as in transform_general.
 | 
f
 | 
same as in transform_general.
 | 
**kwargs
 | 
same as in transform_general.
 | 
| Returns | 
log_density
 | 
A Tensor representing the log density correction of f at x
 | 
space
 | 
A TangentSpace representing the tangent to fM at f(x)
 | 
| Raises | 
NotImplementedError
 | 
if the TangentSpace subclass does not implement
transform_general.
 | 
View source
transform_general(
    x, f, **kwargs
)
Returns the density correction, in log space, corresponding to f at x.
Also returns a new TangentSpace representing the tangent to fM at f(x).
| Args | 
x
 | 
Tensor (structure). The point at which to calculate the density.
 | 
f
 | 
Bijector or one of its subclasses. The transformation that requires a
density correction based on this tangent space.
 | 
**kwargs
 | 
Optional keyword arguments as part of the Bijector.
 | 
| Returns | 
log_density
 | 
A Tensor representing the log density correction of f at x
 | 
space
 | 
A TangentSpace representing the tangent to fM at f(x)
 | 
| Raises | 
NotImplementedError
 | 
if the TangentSpace subclass does not implement
this method.
 | 
View source
transform_projection(
    x, f, **kwargs
)
Same as transform_general, with f a projection (or its inverse).
Default falls back to transform_general, which may be overridden
in subclasses.
| Args | 
x
 | 
same as in transform_general.
 | 
f
 | 
same as in transform_general.
 | 
**kwargs
 | 
same as in transform_general.
 | 
| Returns | 
log_density
 | 
A Tensor representing the log density correction of f at x
 | 
space
 | 
A TangentSpace representing the tangent to fM at f(x)
 | 
| Raises | 
NotImplementedError
 | 
if the TangentSpace subclass does not implement
transform_general.
 |