class_docstr: <a id="Generator"></a>
  
  ## Generator
  
  This predicts the tokens and gives the lof softmax of those.
  You don't need this if you are using `nn.CrossEntropyLoss`.
code: def forward(self, x):
      return self.projection(x)
  
imports: import math
  import torch
  import torch.nn
  from labml_nn.utils import clone_module_list
  from .feed_forward import FeedForward
  from .mha import MultiHeadAttention
  from .positional_encoding import get_positional_encoding
label_desc: Use image node_id 2 for calling the Generator obj's underlying member method code with example usage: obj.forward(x) and returns: self