class_docstr: Words embeddings for encoder/decoder.
  
  Additionally includes ability to add sparse input features
  based on "Linguistic Input Features Improve Neural Machine Translation"
  :cite:`sennrich2016linguistic`.
  
  
  .. mermaid::
  
     graph LR
        A[Input]
        C[Feature 1 Lookup]
        A-->B[Word Lookup]
        A-->C
        A-->D[Feature N Lookup]
        B-->E[MLP/Concat]
        C-->E
        D-->E
        E-->F[Output]
  
  Args:
      word_vec_size (int): size of the dictionary of embeddings.
      word_vocab_size (int): size of dictionary of embeddings for words.
      word_padding_idx (int): padding index for words in the embeddings.
      position_encoding (bool): see :class:`~onmt.modules.PositionalEncoding`
      feat_merge (string): merge action for the features embeddings:
          concat, sum or mlp.
      feat_vec_exponent (float): when using `-feat_merge concat`, feature
          embedding size is N^feat_dim_exponent, where N is the
          number of values the feature takes.
      feat_vec_size (int): embedding dimension for features when using
          `-feat_merge mlp`
      feat_padding_idx (List[int]): padding index for a list of features
                                 in the embeddings.
      feat_vocab_sizes (List[int], optional): list of size of dictionary
          of embeddings for each feature.
      dropout (float): dropout probability.
      sparse (bool): sparse embbedings default False
      freeze_word_vecs (bool): freeze weights of word vectors.
class_docstr_tok: ["Words","embeddings","for","encoder\/decoder",".","Additionally","includes","ability","to","add","sparse","input","features","based","on","``","Linguistic","Input","Features","Improve","Neural","Machine","Translation","''",":","cite",":","`","sennrich2016linguistic","`",".","..","mermaid",":",":","graph","LR","A","[","Input","]","C","[","Feature","1","Lookup","]","A","--",">","B","[","Word","Lookup","]","A","--",">","C","A","--",">","D","[","Feature","N","Lookup","]","B","--",">","E","[","MLP\/Concat","]","C","--",">","E","D","--",">","E","E","--",">","F","[","Output","]","Args",":","word_vec_size","(","int",")",":","size","of","the","dictionary","of","embeddings",".","word_vocab_size","(","int",")",":","size","of","dictionary","of","embeddings","for","words",".","word_padding_idx","(","int",")",":","padding","index","for","words","in","the","embeddings",".","position_encoding","(","bool",")",":","see",":","class",":","`","~onmt.modules.PositionalEncoding","`","feat_merge","(","string",")",":","merge","action","for","the","features","embeddings",":","concat",",","sum","or","mlp",".","feat_vec_exponent","(","float",")",":","when","using","`","-feat_merge","concat","`",",","feature","embedding","size","is","N^feat_dim_exponent",",","where","N","is","the","number","of","values","the","feature","takes",".","feat_vec_size","(","int",")",":","embedding","dimension","for","features","when","using","`","-feat_merge","mlp","`","feat_padding_idx","(","List","[","int","]",")",":","padding","index","for","a","list","of","features","in","the","embeddings",".","feat_vocab_sizes","(","List","[","int","]",",","optional",")",":","list","of","size","of","dictionary","of","embeddings","for","each","feature",".","dropout","(","float",")",":","dropout","probability",".","sparse","(","bool",")",":","sparse","embbedings","default","False","freeze_word_vecs","(","bool",")",":","freeze","weights","of","word","vectors","."]
docstr: Word look-up table.
docstr_tok: ["Word","look-up","table","."]
code: def word_lut(self):
      """Word look-up table."""
      return self.make_embedding[0][0]
  
imports: import math
  import warnings
  import torch
  import torch.nn
  from torch.nn.utils import skip_init
  from onmt.modules.util_class import Elementwise
  from onmt.utils.logging import logger
label_desc: Use image node_id 3 for calling the Embeddings obj's underlying member method code with example usage: obj.word_lut() and returns: self