class_docstr: A distribution representing an unnormalized measure on a singleton set.
  
  `IncrementLogProb` represents a "factor", which can also be thought of as a
  measure of the given size on a sample space consisting of a single element.
  Its raison d'être is to provide a computed offset to the log probability of a
  `JointDistribution`.  A `JointDistribution` containing an `IncrementLogProb`
  still represents a measure, but that measure is no longer in general a
  probability measure (i.e., the probability may no longer integrate to 1).
  
  Even though sampling from any measure represented by
  `IncrementLogProb` is information-free, `IncrementLogProb` retains a
  `sample` method for API compatibility with other Distributions.
  This `sample` method returns a (batch) shape-[0] Tensor with the
  same `dtype` as the `log_prob_increment` argument provided
  originally.
class_docstr_tok: ["A","distribution","representing","an","unnormalized","measure","on","a","singleton","set",".","`","IncrementLogProb","`","represents","a","``","factor","''",",","which","can","also","be","thought","of","as","a","measure","of","the","given","size","on","a","sample","space","consisting","of","a","single","element",".","Its","raison","d'\u00eatre","is","to","provide","a","computed","offset","to","the","log","probability","of","a","`","JointDistribution","`",".","A","`","JointDistribution","`","containing","an","`","IncrementLogProb","`","still","represents","a","measure",",","but","that","measure","is","no","longer","in","general","a","probability","measure","(","i.e.",",","the","probability","may","no","longer","integrate","to","1",")",".","Even","though","sampling","from","any","measure","represented","by","`","IncrementLogProb","`","is","information-free",",","`","IncrementLogProb","`","retains","a","`","sample","`","method","for","API","compatibility","with","other","Distributions",".","This","`","sample","`","method","returns","a","(","batch",")","shape-","[","0","]","Tensor","with","the","same","`","dtype","`","as","the","`","log_prob_increment","`","argument","provided","originally","."]
docstr: Construct a `IncrementLogProb` distribution-like object.
  
  Args:
    log_prob_increment: Float Tensor or callable returning a float Tensor. Log
      probability/density to increment by.
    validate_args: This argument is ignored, but is present because it is used
      in certain situations where `Distribution`s are expected.
    allow_nan_stats: This argument is ignored, but is present because it is
      used in certain situations where `Distribution`s are expected.
    log_prob_ratio_fn: Optional callable with signature `(p_kwargs, q_kwargs)
      -> log_prob_ratio`, used to implement a custom `p_log_prob_increment -
      q_log_prob_increment` computation.
    name: Python `str` name prefixed to Ops created by this class.
    log_prob_increment_kwargs: Passed to `log_prob_increment` if it is
      callable.
docstr_tok: ["Construct","a","`","IncrementLogProb","`","distribution-like","object",".","Args",":","log_prob_increment",":","Float","Tensor","or","callable","returning","a","float","Tensor",".","Log","probability\/density","to","increment","by",".","validate_args",":","This","argument","is","ignored",",","but","is","present","because","it","is","used","in","certain","situations","where","`","Distribution","`","s","are","expected",".","allow_nan_stats",":","This","argument","is","ignored",",","but","is","present","because","it","is","used","in","certain","situations","where","`","Distribution","`","s","are","expected",".","log_prob_ratio_fn",":","Optional","callable","with","signature","`","(","p_kwargs",",","q_kwargs",")","-",">","log_prob_ratio","`",",","used","to","implement","a","custom","`","p_log_prob_increment","-","q_log_prob_increment","`","computation",".","name",":","Python","`","str","`","name","prefixed","to","Ops","created","by","this","class",".","log_prob_increment_kwargs",":","Passed","to","`","log_prob_increment","`","if","it","is","callable","."]
code: def __init__(
      self,
      log_prob_increment,
      validate_args=False,
      allow_nan_stats=False,  # pylint: disable=unused-argument
      log_prob_ratio_fn=None,
      name="IncrementLogProb",
      log_prob_increment_kwargs=None,
  ):
      """Construct a `IncrementLogProb` distribution-like object.
  
      Args:
        log_prob_increment: Float Tensor or callable returning a float Tensor. Log
          probability/density to increment by.
        validate_args: This argument is ignored, but is present because it is used
          in certain situations where `Distribution`s are expected.
        allow_nan_stats: This argument is ignored, but is present because it is
          used in certain situations where `Distribution`s are expected.
        log_prob_ratio_fn: Optional callable with signature `(p_kwargs, q_kwargs)
          -> log_prob_ratio`, used to implement a custom `p_log_prob_increment -
          q_log_prob_increment` computation.
        name: Python `str` name prefixed to Ops created by this class.
        log_prob_increment_kwargs: Passed to `log_prob_increment` if it is
          callable.
      """
      parameters = dict(locals())
  
      with tf.name_scope(name) as name:
          if log_prob_increment_kwargs is None:
              log_prob_increment_kwargs = {}
  
          if callable(log_prob_increment):
              log_prob_increment_fn = lambda: tensor_util.convert_nonref_to_tensor(  # pylint: disable=g-long-lambda
                  log_prob_increment(**log_prob_increment_kwargs)
              )
              spec = callable_util.get_output_spec(
                  log_prob_increment_fn
              )
          else:
              if log_prob_increment_kwargs:
                  raise ValueError(
                      "`log_prob_increment_kwargs` is only valid when "
                      "`log_prob_increment` is callable."
                  )
              log_prob_increment = tensor_util.convert_nonref_to_tensor(
                  log_prob_increment
              )
              log_prob_increment_fn = lambda: log_prob_increment
              spec = log_prob_increment
  
          self._log_prob_increment_fn = log_prob_increment_fn
          self._log_prob_increment = log_prob_increment
          self._dtype = spec.dtype
          self._static_batch_shape = spec.shape
          self._name = name
          self._validate_args = validate_args
          self._log_prob_ratio_fn = log_prob_ratio_fn
          self._log_prob_increment_kwargs = log_prob_increment_kwargs
  
          super().__init__(
              dtype=spec.dtype,
              reparameterization_type=reparameterization.NOT_REPARAMETERIZED,
              validate_args=validate_args,
              allow_nan_stats=allow_nan_stats,
              parameters=parameters,
              name=name,
          )
  
imports: import tensorflow.compat.v2
  from tensorflow_probability.python.bijectors import identity
  from tensorflow_probability.python.distributions import distribution
  from tensorflow_probability.python.distributions import log_prob_ratio
  from tensorflow_probability.python.internal import callable_util
  from tensorflow_probability.python.internal import prefer_static
  from tensorflow_probability.python.internal import reparameterization
  from tensorflow_probability.python.internal import tensor_util
  from tensorflow_probability.python.internal import tensorshape_util
label_desc: Use image node_id 1 to create a new IncrementLogProb object from inherited base classes: distribution with example: obj = IncrementLogProb(log_prob_increment, validate_args, allow_nan_stats, log_prob_ratio_fn, name, log_prob_increment_kwargs)