class_docstr: Implementation of WhiteNoise kernel:
  
      :math:`k(x, z) = \sigma^2 \delta(x, z),`
  
  where :math:`\delta` is a Dirac delta function.
code: def forward(self, X, Z=None, diag=False):
      if diag:
          return self.variance.expand(X.size(0))
  
      if Z is None:
          return self.variance.expand(X.size(0)).diag()
      else:
          return X.data.new_zeros(X.size(0), Z.size(0))
  
file_path: pyro/pyro/contrib/gp/kernels/static.py
imports: import torch
  from torch.distributions import constraints
  from pyro.contrib.gp.kernels.kernel import Kernel
  from pyro.nn.module import PyroParam
label_desc: Use image node_id 2 for calling the WhiteNoise obj's underlying member method code with example usage: obj.forward(X, Z, diag) and returns: self, self, X