class_docstr: Binned univariate distribution designed as an nn.Module
  
  Arguments
  ----------
  bins_lower_bound: The lower bound of the bin edges
  bins_upper_bound: The upper bound of the bin edges
  nbins: The number of equidistance bins to allocate between `bins_lower_bound` and `bins_upper_bound`. Default value is 100.
  smoothing_indicator: The method of smoothing to perform on the bin probabilities
docstr: Log probability for one datapoint `xx`.
docstr_tok: ["Log","probability","for","one","datapoint","`","xx","`","."]
code: def log_p(self, xx):
      """
      Log probability for one datapoint `xx`.
      """
      assert xx.shape.numel() == 1, "log_p() expects univariate"
      return self.log_binned_p(xx)
  
imports: from typing import Optional
  import numpy
  import torch
  import torch.nn
  import torch.nn.functional
  import torch.optim
  from .genpareto import GenPareto
label_desc: Use image node_id 8 for calling the Binned obj's underlying member method code with example usage: obj.log_p(xx) and returns: self