# tensorflow::ops::Multinomial Class Reference

# tensorflow::ops::Multinomial

`#include <random_ops.h>`

Draws samples from a multinomial distribution.

## Summary

Arguments:

- scope: A [Scope](https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope) object
- logits: 2-D [Tensor](https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/tensor#classtensorflow_1_1_tensor) with shape `[batch_size, num_classes]`. Each slice `[i, :]` represents the unnormalized log probabilities for all classes.
- num_samples: 0-D. Number of independent samples to draw for each row slice.

<br />

Optional attributes (see `https://www.tensorflow.org/versions/r2.3/api_docs/cc/struct/tensorflow/ops/multinomial/attrs#structtensorflow_1_1ops_1_1_multinomial_1_1_attrs`):

- seed: If either seed or seed2 is set to be non-zero, the internal random number generator is seeded by the given seed. Otherwise, a random seed is used.
- seed2: A second seed to avoid seed collision.

<br />

Returns:

- `https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output`: 2-D [Tensor](https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/tensor#classtensorflow_1_1_tensor) with shape `[batch_size, num_samples]`. Each slice `[i, :]` contains the drawn class labels with range `[0, num_classes)`.

<br />

| ### Constructors and Destructors ||
|---|---|
| `https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/ops/multinomial#classtensorflow_1_1ops_1_1_multinomial_1a96d252cc42db1e0cad0a64cb36e8dd17(const ::https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope & scope, ::https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input logits, ::https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input num_samples)` ||
| `https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/ops/multinomial#classtensorflow_1_1ops_1_1_multinomial_1a70c0ba099add2db08773240f75d985e3(const ::https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope & scope, ::https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input logits, ::https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input num_samples, const https://www.tensorflow.org/versions/r2.3/api_docs/cc/struct/tensorflow/ops/multinomial/attrs#structtensorflow_1_1ops_1_1_multinomial_1_1_attrs & attrs)` ||

| ### Public attributes ||
|---|---|
| `https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/ops/multinomial#classtensorflow_1_1ops_1_1_multinomial_1a45b39de08c317c75ef554114ab7305f2` | `https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/operation#classtensorflow_1_1_operation` |
| `https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/ops/multinomial#classtensorflow_1_1ops_1_1_multinomial_1a6a1eb6aa0ee5680c889a15fcbb64eea1` | `::https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output` |

| ### Public functions ||
|---|---|
| `https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/ops/multinomial#classtensorflow_1_1ops_1_1_multinomial_1ae386d54422fe11f8963cdb5c403c4dd5() const ` | `::tensorflow::Node *` |
| `https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/ops/multinomial#classtensorflow_1_1ops_1_1_multinomial_1ab7c86d59414a2504b91b5e9f6a34e7b9() const ` | ` `` ` |
| `https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/ops/multinomial#classtensorflow_1_1ops_1_1_multinomial_1a2c35c8fd690941576d7163b605d01678() const ` | ` `` ` |

| ### Public static functions ||
|---|---|
| `https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/ops/multinomial#classtensorflow_1_1ops_1_1_multinomial_1a52a67bb622d9dc2c672d5b534e498335(DataType x)` | `https://www.tensorflow.org/versions/r2.3/api_docs/cc/struct/tensorflow/ops/multinomial/attrs#structtensorflow_1_1ops_1_1_multinomial_1_1_attrs` |
| `https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/ops/multinomial#classtensorflow_1_1ops_1_1_multinomial_1a5fba481081090883283e3b7e556565ee(int64 x)` | `https://www.tensorflow.org/versions/r2.3/api_docs/cc/struct/tensorflow/ops/multinomial/attrs#structtensorflow_1_1ops_1_1_multinomial_1_1_attrs` |
| `https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/ops/multinomial#classtensorflow_1_1ops_1_1_multinomial_1ae46c069e65181a29054c3f64ac06d630(int64 x)` | `https://www.tensorflow.org/versions/r2.3/api_docs/cc/struct/tensorflow/ops/multinomial/attrs#structtensorflow_1_1ops_1_1_multinomial_1_1_attrs` |

| ### Structs ||
|---|---|
| [tensorflow::ops::Multinomial::Attrs](https://www.tensorflow.org/versions/r2.3/api_docs/cc/struct/tensorflow/ops/multinomial/attrs) | Optional attribute setters for [Multinomial](https://www.tensorflow.org/versions/r2.3/api_docs/cc/class/tensorflow/ops/multinomial#classtensorflow_1_1ops_1_1_multinomial). |

## Public attributes

### operation

```
Operation operation
```

### output

```
::tensorflow::Output output
```

## Public functions

### Multinomial

```
 Multinomial(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input logits,
  ::tensorflow::Input num_samples
)
```

### Multinomial

```
 Multinomial(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input logits,
  ::tensorflow::Input num_samples,
  const Multinomial::Attrs & attrs
)
```

### node

```
::tensorflow::Node * node() const 
```

### operator::tensorflow::Input

```
 operator::tensorflow::Input() const 
```

### operator::tensorflow::Output

```
 operator::tensorflow::Output() const 
```

## Public static functions

### OutputDtype

```
Attrs OutputDtype(
  DataType x
)
```

### Seed

```
Attrs Seed(
  int64 x
)
```

### Seed2

```
Attrs Seed2(
  int64 x
)
```