code: def __init__(
      self,
      model,
      input_record,
      output_dims,
      weight_init=None,
      weight_optim=None,
      name="fc_without_bias",
      uniform_weight_init_scale_numerator=1.0,
      **kwargs,
  ):
      super().__init__(model, name, input_record, **kwargs)
      assert isinstance(
          input_record, schema.Scalar
      ), "Incorrect input type"
      assert (
          len(input_record.field_types()[0].shape) > 0
      ), "FCWithoutBias expects limited dimensions of the input tensor"
  
      input_dims = input_record.field_types()[0].shape[0]
      assert (
          input_dims > 0
      ), "FCWithoutBias expects input dimensions > 0, got {}".format(
          input_dims
      )
  
      self.output_schema = schema.Scalar(
          (np.float32, (output_dims,)),
          self.get_next_blob_reference("output"),
      )
  
      scale = math.sqrt(
          uniform_weight_init_scale_numerator / input_dims
      )
      weight_init = (
          weight_init
          if weight_init
          else ("UniformFill", {"min": -scale, "max": scale})
      )
  
      self.w = self.create_param(
          param_name="w",
          shape=[output_dims, input_dims],
          initializer=weight_init,
          optimizer=weight_optim,
      )
  
file_path: pytorch/caffe2/python/layers/fc_without_bias.py
imports: from caffe2.python import schema
  from caffe2.python.layers.layers import ModelLayer
  from caffe2.python.layers.sampling_trainable_mixin import SamplingTrainableMixin
  import math
  import numpy
label_desc: Use image node_id 1 to create a new FCWithoutBias object from inherited base classes: SamplingTrainableMixin, ModelLayer with example: obj = FCWithoutBias(model, input_record, output_dims, weight_init, weight_optim, name, uniform_weight_init_scale_numerator)