class_docstr: Operator adding input embedding to the given cell.
  
  Note: in many cases it may be more efficient to not use this wrapper,
  but instead concatenate the whole sequence of your inputs in time,
  do the embedding on this batch-concatenated sequence, then split it and
  feed into your RNN.
docstr: Create a cell with an added input embedding.
  
  Args:
    cell: an RNNCell, an embedding will be put before its inputs.
    embedding_classes: integer, how many symbols will be embedded.
    embedding_size: integer, the size of the vectors we embed into.
    initializer: an initializer to use when creating the embedding;
      if None, the initializer from variable scope or a default one is used.
    reuse: (optional) Python boolean describing whether to reuse variables
      in an existing scope.  If not `True`, and the existing scope already has
      the given variables, an error is raised.
  
  Raises:
    TypeError: if cell is not an RNNCell.
    ValueError: if embedding_classes is not positive.
docstr_tok: ["Create","a","cell","with","an","added","input","embedding",".","Args",":","cell",":","an","RNNCell",",","an","embedding","will","be","put","before","its","inputs",".","embedding_classes",":","integer",",","how","many","symbols","will","be","embedded",".","embedding_size",":","integer",",","the","size","of","the","vectors","we","embed","into",".","initializer",":","an","initializer","to","use","when","creating","the","embedding",";","if","None",",","the","initializer","from","variable","scope","or","a","default","one","is","used",".","reuse",":","(","optional",")","Python","boolean","describing","whether","to","reuse","variables","in","an","existing","scope",".","If","not","`","True","`",",","and","the","existing","scope","already","has","the","given","variables",",","an","error","is","raised",".","Raises",":","TypeError",":","if","cell","is","not","an","RNNCell",".","ValueError",":","if","embedding_classes","is","not","positive","."]
code: def __init__(
      self,
      cell,
      embedding_classes,
      embedding_size,
      initializer=None,
      reuse=None,
  ):
      """Create a cell with an added input embedding.
  
      Args:
        cell: an RNNCell, an embedding will be put before its inputs.
        embedding_classes: integer, how many symbols will be embedded.
        embedding_size: integer, the size of the vectors we embed into.
        initializer: an initializer to use when creating the embedding;
          if None, the initializer from variable scope or a default one is used.
        reuse: (optional) Python boolean describing whether to reuse variables
          in an existing scope.  If not `True`, and the existing scope already has
          the given variables, an error is raised.
  
      Raises:
        TypeError: if cell is not an RNNCell.
        ValueError: if embedding_classes is not positive.
      """
      super(EmbeddingWrapper, self).__init__(_reuse=reuse)
      rnn_cell_impl.assert_like_rnncell("cell", cell)
      if embedding_classes <= 0 or embedding_size <= 0:
          raise ValueError(
              "Both embedding_classes and embedding_size must be > 0: "
              "%d, %d." % (embedding_classes, embedding_size)
          )
      self._cell = cell
      self._embedding_classes = embedding_classes
      self._embedding_size = embedding_size
      self._initializer = initializer
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import math
  from tensorflow.python.framework import constant_op
  from tensorflow.python.framework import dtypes
  from tensorflow.python.framework import ops
  from tensorflow.python.ops import array_ops
  from tensorflow.python.ops import embedding_ops
  from tensorflow.python.ops import init_ops
  from tensorflow.python.ops import math_ops
  from tensorflow.python.ops import nn_ops
  from tensorflow.python.ops import rnn_cell_impl
  from tensorflow.python.ops import variable_scope
  from tensorflow.python.platform import tf_logging
  from tensorflow.python.util import nest
label_desc: Use image node_id 1 to create a new EmbeddingWrapper object from inherited base classes: RNNCell with example: obj = EmbeddingWrapper(cell, embedding_classes, embedding_size, initializer, reuse)