code: def si_snr(estimate, reference, epsilon=1e-8):
      estimate = estimate - estimate.mean()
      reference = reference - reference.mean()
      reference_pow = reference.pow(2).mean(axis=1, keepdim=True)
      mix_pow = (estimate * reference).mean(axis=1, keepdim=True)
      scale = mix_pow / (reference_pow + epsilon)
  
      reference = scale * reference
      error = estimate - reference
  
      reference_pow = reference.pow(2)
      error_pow = error.pow(2)
  
      reference_pow = reference_pow.mean(axis=1)
      error_pow = error_pow.mean(axis=1)
  
      si_snr = 10 * torch.log10(reference_pow) - 10 * torch.log10(
          error_pow
      )
      return si_snr.item()
  
file_path: audio/examples/tutorials/squim_tutorial.py
imports: import torch
  import torchaudio
  import matplotlib.pyplot
  import torchaudio.functional
  from IPython.display import Audio
  from torchaudio.utils import download_asset
label_desc: Use image node_id 1 for calling a global function with example usage: si_snr(estimate, reference, epsilon) and returns: si_snr