class_docstr: Thanks to PytorchNLP for the initial implementation
  # code from https://pytorchnlp.readthedocs.io/en/latest/_modules/torchnlp/nn/weight_drop.html
  of class WeightDropLinear. Their `License
  <https://github.com/PetrochukM/PyTorch-NLP/blob/master/LICENSE>`__.
  Wrapper around :class:`torch.nn.Linear` that adds ``weight_dropout`` named argument.
  
  Args:
      weight_dropout (float): The probability a weight will be dropped.
class_docstr_tok: ["Thanks","to","PytorchNLP","for","the","initial","implementation","#","code","from","https",":","\/\/pytorchnlp.readthedocs.io\/en\/latest\/_modules\/torchnlp\/nn\/weight_drop.html","of","class","WeightDropLinear",".","Their","`","License","<","https",":","\/\/github.com\/PetrochukM\/PyTorch-NLP\/blob\/master\/LICENSE",">","`","__",".","Wrapper","around",":","class",":","`","torch.nn.Linear","`","that","adds","``","weight_dropout","``","named","argument",".","Args",":","weight_dropout","(","float",")",":","The","probability","a","weight","will","be","dropped","."]
code: def forward(self, input):
      w = torch.nn.functional.dropout(
          self.weight, p=self._weight_dropout, training=True
      )
      return torch.nn.functional.linear(input, w, self.bias)
  
imports: import copy
  import warnings
  from typing import List, Optional, cast, Dict
  from baal.bayesian.common import replace_layers_in_module, _patching_wrapper, BayesianModule
  import torch
  from torch import nn
  from packaging.version import parse
label_desc: Use image node_id 2 for calling the WeightDropLinear obj's underlying member method code with example usage: obj.forward(input) and returns: torch