box_embeddings.modules.volume.tf_bessel_volume

Module Contents

eps = 1e-23
euler_gamma = 0.5772156649015329
tf_bessel_volume_approx(box_tensor: box_embeddings.parameterizations.tf_box_tensor.TFBoxTensor, beta: float = 1.0, gumbel_beta: float = 1.0, scale: float = 1.0) tensorflow.Tensor

Volume of boxes. Uses the Softplus as an approximation of Bessel funtion.

Parameters
  • box_tensor – input

  • beta – the beta parameter for the softplus.

  • gumbel_beta – the gumbel_beta parameter (same value used in intersection).

  • scale – scale parameter. Should be left as 1.0 (default) in most cases.

Returns

Tensor of shape (…, ) when self has shape (…, 2, num_dims)

Raises

ValueError – if scale not in (0,1]

tf_log_bessel_volume_approx(box_tensor: box_embeddings.parameterizations.tf_box_tensor.TFBoxTensor, beta: float = 1.0, gumbel_beta: float = 1.0, scale: float = 1.0) tensorflow.Tensor

Volume of boxes. Uses the Softplus as an approximation of Bessel funtion.

Parameters
  • box_tensor – input.

  • beta – the beta parameter for the softplus.

  • gumbel_beta – the gumbel_beta parameter (same value used in intersection).

  • scale – scale parameter. Should be left as 1.0 (default) in most cases.

Returns

Tensor of shape (…, ) when self has shape (…, 2, num_dims)

Raises

ValueError – if scale not in (0,1]

class TFBesselApproxVolume(log_scale: bool = True, beta: float = 1.0, gumbel_beta: float = 1.0)

Bases: box_embeddings.modules.volume.tf_volume.TFVolume

Uses the Softplus as an approximation of Bessel function.