class_docstr: DiagGaussian distribution for continuous action spaces.
class_docstr_tok: ["DiagGaussian","distribution","for","continuous","action","spaces","."]
docstr: Args:
      logits: A tuple of (mean, logstd)
              mean: A float32 tensor with shape [BATCH_SIZE, NUM_ACTIONS] of unnormalized policy logits
              logstd: A float32 tensor with shape [BATCH_SIZE, NUM_ACTIONS]
docstr_tok: ["Args",":","logits",":","A","tuple","of","(","mean",",","logstd",")","mean",":","A","float32","tensor","with","shape","[","BATCH_SIZE",",","NUM_ACTIONS","]","of","unnormalized","policy","logits","logstd",":","A","float32","tensor","with","shape","[","BATCH_SIZE",",","NUM_ACTIONS","]"]
code: def __init__(self, logits):
      """
      Args:
          logits: A tuple of (mean, logstd)
                  mean: A float32 tensor with shape [BATCH_SIZE, NUM_ACTIONS] of unnormalized policy logits
                  logstd: A float32 tensor with shape [BATCH_SIZE, NUM_ACTIONS]
      """
      assert len(logits) == 2
      assert len(logits[0].shape) == 2 and len(logits[1].shape) == 2
      self.logits = logits
      (mean, logstd) = logits
      self.mean = mean
      self.logstd = logstd
  
      self.std = paddle.exp(self.logstd)
  
imports: import paddle
  import paddle.nn.functional
  import numpy
label_desc: Use image node_id 1 to create a new DiagGaussianDistribution object from inherited base classes: PolicyDistribution with example: obj = DiagGaussianDistribution(logits)