code: def __init__(self, d_model, attention_dropout=0.1):
      super(ScaledDotProductAttention, self).__init__()
      self.temper = d_model**0.5
      self.dropout = nn.Dropout(attention_dropout)
      self.softmax = nn.Softmax(dim=-1)
  
imports: import numpy
  import functools
  import sys
  import torch
  from torch.autograd import Variable
  import torch.nn
  import torch.nn.init
label_desc: Use image node_id 1 to create a new ScaledDotProductAttention object from inherited base classes: nn with example: obj = ScaledDotProductAttention(d_model, attention_dropout)