class_docstr: A tensor embedder is an input embedder that takes a tensor with arbitrary dimension and produces a vector
  embedding by passing it through a neural network. An example is video data or 3D image data (i.e. 4D tensors)
  or other type of data that is more than 1 dimension (i.e. not vector) but is not an image.
  
  NOTE: There are no pre-defined schemes for tensor embedder. User must define a custom scheme by passing
  a callable object as InputEmbedderParameters.scheme when defining the respective preset. This callable
  object must accept a single input, the normalized observation, and return a Tensorflow symbol which
  will calculate an embedding vector for each sample in the batch.
  Keep in mind that the scheme is a list of Tensorflow symbols, which are stacked by optional batchnorm,
  activation, and dropout in between as specified in InputEmbedderParameters.
code: def schemes(self):
      return {}
  
file_path: coach/rl_coach/architectures/tensorflow_components/embedders/tensor_embedder.py
imports: from typing import List
  import tensorflow
  from rl_coach.architectures.tensorflow_components.layers import Conv2d, Dense
  from rl_coach.architectures.tensorflow_components.embedders.embedder import InputEmbedder
  from rl_coach.base_parameters import EmbedderScheme
  from rl_coach.core_types import InputTensorEmbedding
label_desc: Use image node_id 2 for calling the TensorEmbedder obj's underlying member method code with example usage: obj.schemes() and returns: dict