class_docstr: A type alias for empirical kernel functions computing either NTK or NNGP.
  
  A kernel function that produces an empirical kernel from a single
  instantiation of a neural network specified by its parameters.
  
  Equivalent to `EmpiricalGetKernelFn` with `get="nngp"` or `get="ntk"`.
class_docstr_tok: ["A","type","alias","for","empirical","kernel","functions","computing","either","NTK","or","NNGP",".","A","kernel","function","that","produces","an","empirical","kernel","from","a","single","instantiation","of","a","neural","network","specified","by","its","parameters",".","Equivalent","to","`","EmpiricalGetKernelFn","`","with","`","get=","''","nngp","''","`","or","`","get=","''","ntk","''","`","."]
code: def __call__(
      self,
      x1: NTTree[jnp.ndarray],
      x2: Optional[NTTree[jnp.ndarray]],
      params: PyTree,
      **kwargs,
  ) -> NTTree[jnp.ndarray]:
      ...
  
imports: from typing import Any, Generator, Optional, Protocol, Sequence, TYPE_CHECKING, TypeVar, Union
  import jax
  import jax.numpy
  from .kernel import Kernel
label_desc: Use image node_id 1 for calling the EmpiricalKernelFn obj's underlying member method code with example usage: obj.__call__(x1, x2, params) without return types