class_docstr: Keras `Layer` to parameterize a Pixel CNN++ distribution.
  This is a Keras implementation of the Pixel CNN++ network, as described in
  Salimans et al. (2017)[1] and van den Oord et al. (2016)[2].
  (https://github.com/openai/pixel-cnn).
  #### References
  [1]: Tim Salimans, Andrej Karpathy, Xi Chen, and Diederik P. Kingma.
     PixelCNN++: Improving the PixelCNN with Discretized Logistic Mixture
     Likelihood and Other Modifications. In _International Conference on
     Learning Representations_, 2017.
     https://pdfs.semanticscholar.org/9e90/6792f67cbdda7b7777b69284a81044857656.pdf
     Additional details at https://github.com/openai/pixel-cnn
  [2]: Aaron van den Oord, Nal Kalchbrenner, Oriol Vinyals, Lasse Espeholt,
     Alex Graves, and Koray Kavukcuoglu. Conditional Image Generation with
     PixelCNN Decoders. In _30th Conference on Neural Information Processing
     Systems_, 2016.
     https://papers.nips.cc/paper/6527-conditional-image-generation-with-pixelcnn-decoders.pdf.
class_docstr_tok: ["Keras","`","Layer","`","to","parameterize","a","Pixel","CNN++","distribution",".","This","is","a","Keras","implementation","of","the","Pixel","CNN++","network",",","as","described","in","Salimans","et","al",".","(","2017",")","[","1","]","and","van","den","Oord","et","al",".","(","2016",")","[","2","]",".","(","https",":","\/\/github.com\/openai\/pixel-cnn",")",".","#","#","#","#","References","[","1","]",":","Tim","Salimans",",","Andrej","Karpathy",",","Xi","Chen",",","and","Diederik","P.","Kingma",".","PixelCNN++",":","Improving","the","PixelCNN","with","Discretized","Logistic","Mixture","Likelihood","and","Other","Modifications",".","In","_International","Conference","on","Learning","Representations_",",","2017.","https",":","\/\/pdfs.semanticscholar.org\/9e90\/6792f67cbdda7b7777b69284a81044857656.pdf","Additional","details","at","https",":","\/\/github.com\/openai\/pixel-cnn","[","2","]",":","Aaron","van","den","Oord",",","Nal","Kalchbrenner",",","Oriol","Vinyals",",","Lasse","Espeholt",",","Alex","Graves",",","and","Koray","Kavukcuoglu",".","Conditional","Image","Generation","with","PixelCNN","Decoders",".","In","_30th","Conference","on","Neural","Information","Processing","Systems_",",","2016.","https",":","\/\/papers.nips.cc\/paper\/6527-conditional-image-generation-with-pixelcnn-decoders.pdf","."]
docstr: Call the Pixel CNN network model.
  
  Parameters
  ----------
  inputs
      4D `Tensor` of image data with dimensions [batch size, height,
      width, channels] or a 2-element `list`. If `list`, the first element is
      the 4D image `Tensor` and the second element is a `Tensor` with
      conditional input data (e.g. VAE encodings or class labels) with the
      same leading batch dimension as the image `Tensor`.
  training
      `bool` or `None`. If `bool`, it controls the dropout layer,
      where `True` implies dropout is active. If `None`, it it defaults to
      `tf.keras.backend.learning_phase()`
  
  Returns
  -------
  outputs
      a 3- or 4-element `list` of `Tensor`s in the following order:             component_logits: 4D `Tensor` of logits for the Categorical distribution             over Quantized Logistic mixture components. Dimensions are             `[batch_size, height, width, num_logistic_mix]`.
  locs
      4D `Tensor` of location parameters for the Quantized Logistic             mixture components. Dimensions are `[batch_size, height, width,             num_logistic_mix, num_channels]`.
  scales
      4D `Tensor` of location parameters for the Quantized Logistic             mixture components. Dimensions are `[batch_size, height, width,             num_logistic_mix, num_channels]`.
  coeffs
      4D `Tensor` of coefficients for the linear dependence among             color channels, included only if the image has more than one channel.             Dimensions are `[batch_size, height, width, num_logistic_mix,             num_coeffs]`, where `num_coeffs = num_channels * (num_channels - 1) // 2`.
code: def call(self, inputs, training=None):
      """Call the Pixel CNN network model.
  
          Parameters
          ----------
          inputs
              4D `Tensor` of image data with dimensions [batch size, height,
              width, channels] or a 2-element `list`. If `list`, the first element is
              the 4D image `Tensor` and the second element is a `Tensor` with
              conditional input data (e.g. VAE encodings or class labels) with the
              same leading batch dimension as the image `Tensor`.
          training
              `bool` or `None`. If `bool`, it controls the dropout layer,
              where `True` implies dropout is active. If `None`, it it defaults to
              `tf.keras.backend.learning_phase()`
  
          Returns
          -------
          outputs
              a 3- or 4-element `list` of `Tensor`s in the following order: \
              component_logits: 4D `Tensor` of logits for the Categorical distribution \
              over Quantized Logistic mixture components. Dimensions are \
              `[batch_size, height, width, num_logistic_mix]`.
          locs
              4D `Tensor` of location parameters for the Quantized Logistic \
              mixture components. Dimensions are `[batch_size, height, width, \
              num_logistic_mix, num_channels]`.
          scales
              4D `Tensor` of location parameters for the Quantized Logistic \
              mixture components. Dimensions are `[batch_size, height, width, \
              num_logistic_mix, num_channels]`.
          coeffs
              4D `Tensor` of coefficients for the linear dependence among \
              color channels, included only if the image has more than one channel. \
              Dimensions are `[batch_size, height, width, num_logistic_mix, \
              num_coeffs]`, where `num_coeffs = num_channels * (num_channels - 1) // 2`.
          """
      return self._network(inputs, training=training)
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import functools
  import numpy
  import warnings
  import tensorflow.compat.v2
  from tensorflow_probability.python.bijectors import bijector
  from tensorflow_probability.python.distributions import categorical
  from tensorflow_probability.python.distributions import distribution
  from tensorflow_probability.python.distributions import independent
  from tensorflow_probability.python.distributions import logistic
  from tensorflow_probability.python.distributions import mixture_same_family
  from tensorflow_probability.python.distributions import quantized_distribution
  from tensorflow_probability.python.distributions import transformed_distribution
  from tensorflow_probability.python.internal import dtype_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 3 for calling the _PixelCNNNetwork obj's underlying member method code with example usage: obj.call(inputs, training) and returns: self