class_docstr: A "squeeze-and-excitation"-like layer with a residual connection::
  
      --+-- SE --o--
        |        |
        +--------+
class_docstr_tok: ["A","``","squeeze-and-excitation","''","-like","layer","with","a","residual","connection",":",":","--","+","--","SE","--","o","--","|","|","+","--","--","--","--","+"]
docstr: Args:
      spatial_dims: number of spatial dimensions, could be 1, 2, or 3.
      in_channels: number of input channels.
      r: the reduction ratio r in the paper. Defaults to 2.
      acti_type_1: defaults to "leakyrelu".
      acti_type_2: defaults to "relu".
  
  See also:
      :py:class:`monai.networks.blocks.ChannelSELayer`
docstr_tok: ["Args",":","spatial_dims",":","number","of","spatial","dimensions",",","could","be","1",",","2",",","or","3.","in_channels",":","number","of","input","channels",".","r",":","the","reduction","ratio","r","in","the","paper",".","Defaults","to","2.","acti_type_1",":","defaults","to","``","leakyrelu","''",".","acti_type_2",":","defaults","to","``","relu","''",".","See","also",":",":","py",":","class",":","`","monai.networks.blocks.ChannelSELayer","`"]
code: def __init__(
      self,
      spatial_dims: int,
      in_channels: int,
      r: int = 2,
      acti_type_1: tuple[str, dict] | str = "leakyrelu",
      acti_type_2: tuple[str, dict] | str = "relu",
  ) -> None:
      """
      Args:
          spatial_dims: number of spatial dimensions, could be 1, 2, or 3.
          in_channels: number of input channels.
          r: the reduction ratio r in the paper. Defaults to 2.
          acti_type_1: defaults to "leakyrelu".
          acti_type_2: defaults to "relu".
  
      See also:
          :py:class:`monai.networks.blocks.ChannelSELayer`
      """
      super().__init__(
          spatial_dims=spatial_dims,
          in_channels=in_channels,
          r=r,
          acti_type_1=acti_type_1,
          acti_type_2=acti_type_2,
          add_residual=True,
      )
  
imports: from __future__ import annotations
  import math
  import torch
  import torch.nn
  from monai.networks.blocks import Convolution
  from monai.networks.layers.factories import Act, Conv, Norm, Pool, split_args
label_desc: Use image node_id 1 to create a new ResidualSELayer object from inherited base classes: ChannelSELayer with example: obj = ResidualSELayer(spatial_dims, in_channels, r, acti_type_1, acti_type_2)