class_docstr: Encoder model.
docstr: Encodes an image as an isotropic Guassian latent code.
docstr_tok: ["Encodes","an","image","as","an","isotropic","Guassian","latent","code","."]
code: def __call__(self, x: jax.Array) -> tuple[jax.Array, jax.Array]:
      """Encodes an image as an isotropic Guassian latent code."""
      x = hk.Flatten()(x)
      x = hk.Linear(self.hidden_size)(x)
      x = jax.nn.relu(x)
  
      mean = hk.Linear(self.latent_size)(x)
      log_stddev = hk.Linear(self.latent_size)(x)
      stddev = jnp.exp(log_stddev)
  
      return mean, stddev
  
imports: from collections.abc import Iterator, Sequence
  import dataclasses
  from typing import NamedTuple
  from absl import app
  from absl import flags
  from absl import logging
  import haiku
  import jax
  import jax.numpy
  import numpy
  import optax
  import tensorflow_datasets
label_desc: Use image node_id 1 for calling the Encoder obj's underlying member method code with example usage: obj.__call__(x) and returns: mean,  stddev