class_docstr: Spatial dropout module.
  
  Apply dropout to full channels on tensors of input (B, C, D)
class_docstr_tok: ["Spatial","dropout","module",".","Apply","dropout","to","full","channels","on","tensors","of","input","(","B",",","C",",","D",")"]
docstr: Initialize.
  
  Args:
      dropout_probability: Dropout probability.
      shape (tuple, list): Shape of input tensors.
docstr_tok: ["Initialize",".","Args",":","dropout_probability",":","Dropout","probability",".","shape","(","tuple",",","list",")",":","Shape","of","input","tensors","."]
code: def __init__(
      self,
      dropout_probability: float = 0.15,
      shape: Optional[Union[tuple, list]] = None,
  ):
      """Initialize.
  
      Args:
          dropout_probability: Dropout probability.
          shape (tuple, list): Shape of input tensors.
      """
      assert check_argument_types()
      super().__init__()
      if shape is None:
          shape = (0, 2, 1)
      self.dropout = torch.nn.Dropout2d(dropout_probability)
      self.shape = (shape,)
  
file_path: espnet/espnet2/asr/preencoder/sinc.py
imports: from collections import OrderedDict
  from typing import Optional, Tuple, Union
  import humanfriendly
  import torch
  from typeguard import check_argument_types
  from espnet2.asr.preencoder.abs_preencoder import AbsPreEncoder
  from espnet2.layers.sinc_conv import LogCompression, SincConv
label_desc: Use image node_id 1 to create a new SpatialDropout object from inherited base classes: torch.nn with example: obj = SpatialDropout(dropout_probability, shape)