class_docstr: Residual Block for Diffusion Denoiser.
docstr: Initialization.
  
  Args:
      adim (int): Size of dimensions.
      channels (int): Number of channels.
      dilation (int): Size of dilations.
docstr_tok: ["Initialization",".","Args",":","adim","(","int",")",":","Size","of","dimensions",".","channels","(","int",")",":","Number","of","channels",".","dilation","(","int",")",":","Size","of","dilations","."]
code: def __init__(
      self,
      adim: int,
      channels: int,
      dilation: int,
  ) -> None:
      """Initialization.
  
      Args:
          adim (int): Size of dimensions.
          channels (int): Number of channels.
          dilation (int): Size of dilations.
  
      """
      super().__init__()
      self.conv = nn.Conv1d(
          channels, 2 * channels, 3, padding=dilation, dilation=dilation
      )
      self.diff_proj = nn.Linear(channels, channels)
      self.cond_proj = nn.Conv1d(adim, 2 * channels, 1)
      self.out_proj = nn.Conv1d(channels, 2 * channels, 1)
  
imports: import math
  from typing import Optional, Union
  import numpy
  import torch
  from torch import nn
  from torch.nn import functional
  from espnet.nets.pytorch_backend.transformer.embedding import PositionalEncoding
label_desc: Use image node_id 1 to create a new ResidualBlock object from inherited base classes: nn with example: obj = ResidualBlock(adim, channels, dilation)