class_docstr: Categorical distribution for discrete action spaces.
docstr: Returns:
      sample_action: An int64 tensor with shape [BATCH_SIZE] of multinomial sampling ids.
                     Each value in sample_action is in [0, NUM_ACTIOINS - 1]
docstr_tok: ["Returns",":","sample_action",":","An","int64","tensor","with","shape","[","BATCH_SIZE","]","of","multinomial","sampling","ids",".","Each","value","in","sample_action","is","in","[","0",",","NUM_ACTIOINS","-","1","]"]
code: def sample(self):
      """
      Returns:
          sample_action: An int64 tensor with shape [BATCH_SIZE] of multinomial sampling ids.
                         Each value in sample_action is in [0, NUM_ACTIOINS - 1]
      """
      probs = layers.softmax(self.logits)
      sample_actions = layers.sampling_id(probs)
      return sample_actions
  
imports: from parl.core.fluid import layers
label_desc: Use image node_id 2 for calling the CategoricalDistribution obj's underlying member method code with example usage: obj.sample() and returns: sample_actions