class_docstr: Bidirectional fusion Multi-Head Attention layer.
  
  Args:
      v_dim (int): The dimension of the vision input.
      l_dim (int): The dimension of the language input.
      embed_dim (int): The embedding dimension for the attention operation.
      num_heads (int): The number of attention heads.
      dropout (float, optional): The dropout probability. Defaults to 0.1.
class_docstr_tok: ["Bidirectional","fusion","Multi-Head","Attention","layer",".","Args",":","v_dim","(","int",")",":","The","dimension","of","the","vision","input",".","l_dim","(","int",")",":","The","dimension","of","the","language","input",".","embed_dim","(","int",")",":","The","embedding","dimension","for","the","attention","operation",".","num_heads","(","int",")",":","The","number","of","attention","heads",".","dropout","(","float",",","optional",")",":","The","dropout","probability",".","Defaults","to","0.1","."]
code: def _reset_parameters(self):
      nn.init.xavier_uniform_(self.v_proj.weight)
      self.v_proj.bias.data.fill_(0)
      nn.init.xavier_uniform_(self.l_proj.weight)
      self.l_proj.bias.data.fill_(0)
      nn.init.xavier_uniform_(self.values_v_proj.weight)
      self.values_v_proj.bias.data.fill_(0)
      nn.init.xavier_uniform_(self.values_l_proj.weight)
      self.values_l_proj.bias.data.fill_(0)
      nn.init.xavier_uniform_(self.out_v_proj.weight)
      self.out_v_proj.bias.data.fill_(0)
      nn.init.xavier_uniform_(self.out_l_proj.weight)
      self.out_l_proj.bias.data.fill_(0)
  
imports: import math
  from typing import Dict, Optional, Tuple
  import torch
  import torch.nn
  import torch.nn.functional
  import torch.utils.checkpoint
  from mmcv.cnn.bricks import DropPath
  from torch import Tensor
label_desc: Use image node_id 3 for calling the BiMultiHeadAttention obj's underlying member method code with example usage: obj._reset_parameters() without return types