code: def linear(input, hidden_size, name, with_bias=True):
      """linear"""
      fan_in = input.shape[-1]
      bias_bound = 1.0 / math.sqrt(fan_in)
      if with_bias:
          fc_bias_attr = F.ParamAttr(
              initializer=F.initializer.UniformInitializer(
                  low=-bias_bound, high=bias_bound
              )
          )
      else:
          fc_bias_attr = False
  
      negative_slope = math.sqrt(5)
      gain = math.sqrt(2.0 / (1 + negative_slope**2))
      std = gain / math.sqrt(fan_in)
      weight_bound = math.sqrt(3.0) * std
      fc_w_attr = F.ParamAttr(
          initializer=F.initializer.UniformInitializer(
              low=-weight_bound, high=weight_bound
          )
      )
  
      output = L.fc(
          input,
          hidden_size,
          param_attr=fc_w_attr,
          name=name,
          bias_attr=fc_bias_attr,
      )
      return output
  
imports: import math
  import paddle.fluid
  import paddle.fluid.layers
  from module.transformer_gat_pgl import transformer_gat_pgl
label_desc: Use image node_id 1 for calling a global function with example usage: linear(input, hidden_size, name, with_bias) and returns: output