box_embeddings.modules.volume.bessel_volume
¶
Module Contents¶
- eps¶
- euler_gamma¶
- bessel_volume_approx(box_tensor: box_embeddings.parameterizations.box_tensor.BoxTensor, volume_temperature: float = 1.0, intersection_temperature: float = 1.0, log_scale: bool = True, scale: float = 1.0) torch.Tensor ¶
Volume of boxes. Uses the Softplus as an approximation of Bessel funtion.
- Parameters
box_tensor – input
volume_temperature – 1/volume_temperature is the beta parameter for the softplus
intersection_temperature – the intersection_temperature parameter (same value used in intersection).
log_scale – Whether the output should be in log scale or not.
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] or volume_temperature is 0.
- class BesselApproxVolume(log_scale: bool = True, volume_temperature: float = 1.0, intersection_temperature: float = 1.0)¶
Bases:
box_embeddings.modules.volume._volume._Volume
Uses the Softplus as an approximation of Bessel function.
- forward(self, box_tensor: box_embeddings.parameterizations.box_tensor.BoxTensor) torch.Tensor ¶
Soft softplus base (instead of ReLU) volume.
- Parameters
box_tensor – TODO
- Returns
torch.Tensor