class_docstr: Computes similarities as k(x,y) = (1-eps)*k_a(proj(x), proj(y)) + eps*k_b(x,y).
  A forward pass takes a batch of instances x [Nx, features] and y [Ny, features] and returns
  the kernel matrix [Nx, Ny].
  
  Parameters
  ----------
  proj
      The projection to be applied to the inputs before applying kernel_a
  kernel_a
      The kernel to apply to the projected inputs. Defaults to a Gaussian RBF with trainable bandwidth.
  kernel_b
      The kernel to apply to the raw inputs. Defaults to a Gaussian RBF with trainable bandwidth.
      Set to None in order to use only the deep component (i.e. eps=0).
  eps
      The proportion (in [0,1]) of weight to assign to the kernel applied to raw inputs. This can be
      either specified or set to 'trainable'. Only relavent if kernel_b is not None.
code: def eps(self) -> torch.Tensor:
      return (
          self.logit_eps.sigmoid()
          if self.kernel_b is not None
          else torch.tensor(0.0)
      )
  
imports: import numpy
  import torch
  from torch import nn
  from .None import distance
  from typing import Optional, Union, Callable
  from alibi_detect.utils.frameworks import Framework
label_desc: Use image node_id 3 for calling the DeepKernel obj's underlying member method code with example usage: obj.eps() and returns: unknown