code: def get_filter_matrix_conj(
      correlation_matrix: Union[torch.Tensor, ComplexTensor],
      correlation_vector: Union[torch.Tensor, ComplexTensor],
      eps: float = 1e-10,
  ) -> Union[torch.Tensor, ComplexTensor]:
      """Calculate (conjugate) filter matrix based on correlations for one freq.
  
      Args:
          correlation_matrix : Correlation matrix (F, taps * C, taps * C)
          correlation_vector : Correlation vector (F, taps, C, C)
          eps:
  
      Returns:
          filter_matrix_conj (torch.complex/ComplexTensor): (F, taps, C, C)
      """
      F, taps, C, _ = correlation_vector.size()
  
      # (F, taps, C1, C2) -> (F, C1, taps, C2) -> (F, C1, taps * C2)
      correlation_vector = (
          correlation_vector.permute(0, 2, 1, 3)
          .contiguous()
          .view(F, C, taps * C)
      )
  
      eye = torch.eye(
          correlation_matrix.size(-1),
          dtype=correlation_matrix.dtype,
          device=correlation_matrix.device,
      )
      shape = (
          tuple(1 for _ in range(correlation_matrix.dim() - 2))
          + correlation_matrix.shape[-2:]
      )
      eye = eye.view(*shape)
      correlation_matrix += eps * eye
  
      inv_correlation_matrix = correlation_matrix.inverse()
      # (F, C, taps, C) x (F, taps * C, taps * C) -> (F, C, taps * C)
      stacked_filter_conj = matmul(
          correlation_vector, inv_correlation_matrix.transpose(-1, -2)
      )
  
      # (F, C1, taps * C2) -> (F, C1, taps, C2) -> (F, taps, C2, C1)
      filter_matrix_conj = stacked_filter_conj.view(
          F, C, taps, C
      ).permute(0, 2, 3, 1)
      return filter_matrix_conj
  
file_path: espnet/espnet2/enh/layers/wpe.py
imports: from typing import Tuple, Union
  import torch
  import torch.nn.functional
  import torch_complex.functional
  from packaging.version import parse
  from torch_complex.tensor import ComplexTensor
  from espnet2.enh.layers.complex_utils import einsum, matmul, reverse
label_desc: Use image node_id 4 for calling a global function with example usage: get_filter_matrix_conj(correlation_matrix, correlation_vector, eps) and returns: filter_matrix_conj