code: def forward(self, x, dropout=0.5):
      if not self.training or not dropout:
          return x
      m = x.data.new(1, x.size(1), x.size(2)).bernoulli_(1 - dropout)
      mask = Variable(m, requires_grad=False) / (1 - dropout)
      mask = mask.expand_as(x)
      return mask * x
  
imports: import numpy
  import collections
  import torch
  from torch import nn
  import torch.nn.functional
  from torch.autograd import Variable
  import models.shared_base
  import utils
label_desc: Use image node_id 2 for calling the LockedDropout obj's underlying member method code with example usage: obj.forward(x, dropout) and returns: unknown, x