ttnn.experimental.dropout

ttnn.experimental.dropout(input_tensor: ttnn.Tensor, *, seed: uint32_t, probability: float, scale: float, memory_config: ttnn.MemoryConfig | None = None, output_tensor: ttnn.Tensor | None = None, queue_id: int | None = 0) ttnn.Tensor

Applies dropout to input_tensor element-wise.

\[\verb|dropout|(\mathrm{input\_tensor}_i)\]
Parameters:

input_tensor (ttnn.Tensor) – the input tensor.

Keyword Arguments:
  • seed (uint32_t) – seed used for RNG.

  • probability (float) – Dropout probability. In average total_elems * probability elements will be zeroed out.

  • scale (float) – Scales output tensor. In general scale = 1.0/(1.0-probability).

  • memory_config (ttnn.MemoryConfig, optional) – memory configuration for the operation. Defaults to None.

  • output_tensor (ttnn.Tensor, optional) – preallocated output tensor. Defaults to None.

  • queue_id (int, optional) – command queue id. Defaults to 0.

Returns:

ttnn.Tensor – the output tensor.

Note

Supported dtypes, layouts, and ranks:

Dtypes

Layouts

Ranks

BFLOAT16

TILE

2, 3, 4

Example

>>> tensor = ttnn.from_torch(torch.tensor([[1, 2], [3, 4]], dtype=torch.bfloat16), layout=ttnn.TILE_LAYOUT, device=device)
>>> seed = 124
>>> prob = 0.2
>>> output = ttnn.experimental.dropout(tensor,  probability=prob, scale= 1.0/(1.0 - prob), seed=seed)