code: def __init__(self, hidden_size, output_size, device=""):
      super(DecoderRNN, self).__init__()
      self.hidden_size = hidden_size
  
      self.embedding = nn.Embedding(output_size, hidden_size)
      self.gru = nn.GRU(hidden_size, hidden_size)
      self.out = nn.Linear(hidden_size, output_size)
      self.softmax = nn.LogSoftmax(dim=1)
  
      if device == "":
          device = default_device
      else:
          device = torch.device(device)
      self.device = device
  
imports: from __future__ import unicode_literals, print_function, division
  import math
  import time
  from io import open
  import unicodedata
  import string
  import re
  import random
  import operator
  import torch
  import torch.nn
  from torch import optim
  import torch.nn.functional
  from lightwood.helpers.torch import LightwoodAutocast
  from lightwood.helpers.log import log
label_desc: Use image node_id 1 to create a new DecoderRNN object from inherited base classes: nn with example: obj = DecoderRNN(hidden_size, output_size, device)