class_docstr: pytorch nn.Module implementation for gan.network.AttrDiscriminator
  
  `input_size` is an extra param that need to be set during the init
  due to the different stype between tf and torch
  `input_size` should be the input_attribute flattened length
class_docstr_tok: ["pytorch","nn.Module","implementation","for","gan.network.AttrDiscriminator","`","input_size","`","is","an","extra","param","that","need","to","be","set","during","the","init","due","to","the","different","stype","between","tf","and","torch","`","input_size","`","should","be","the","input_attribute","flattened","length"]
code: def forward(self, input_attribute):
      # input_attribute.shape = (batch_size, all_attribute_out_dim) (flattened)
      # output feature: (batch_size, 1)
      input_attribute = flatten(input_attribute)
      x = self.mlp(input_attribute)
      x = torch.squeeze(x, 1)
      return x
  
imports: import torch
  from torch import nn
  import torch.nn.functional
  import numpy
  from enum import Enum
  from .op import linear, flatten
  from .output import OutputType, Normalization
label_desc: Use image node_id 2 for calling the AttrDiscriminator obj's underlying member method code with example usage: obj.forward(input_attribute) and returns: x